ThinkGeo.com    |     Documentation    |     Premium Support

DrawWorldImage

I'm having an issue with drawing my own layers.  I have a BitmapImage I want to draw.  If I call canvas.DrawWorldImageWithoutScaling(new GeoImage(img.StreamSource), pt.X, pt.Y, DrawingLevel.LabelLevel); everything works fine, however if I call canvas.DrawWorldImage(new GeoImage(img.StreamSource), pt.X, pt.Y, 32, 32, DrawingLevel.LabelLevel); nothing draws.  Am I doing anything wrong?


Thanks,


.Ryan.



Ryan, 
  
 Which canvas do you use to draw? I check the two methods, it should be working in the same way, the only difference is that one will scale the image by input width and height, the other one won’t. 
 Could you provide a simple sample with data that we can reproduce it. 
  
 Thanks, 
 James 


Hi James, 
 I’ve been trying to work on a sample to no avail, although I might be able to better describe my problem now.  I have a bunch of images that are stored in a database.  When my application starts, it pulls them out and caches them in a Dictionary in the layers feature source (I’ve tried saving them as both MemoryStream and BitmapImage).  In my layer, I call DrawWorldImageWithoutScaling and it draws really big (my image is 32x32 but its drawing at MUCH larger than that).  If I call DrawWorldImage the image doesn’t draw at all.  If I take that memory stream and write the image to disk, it saves perfectly as a 32x32 image.  Since I’ve been able to save the exact same image to disk that I am using on the map and the only thing I am doing is passing that stream directly to the GeoImage, I’m starting to get the feeling there is a bug in GeoImage.  I have, however, found that if I read an image from disk and loaded via Application.GetResourceStream that both methods work fine… I can only reproduce it when my image is coming from a database (which is a requirement for me).  I don’t know if you have any ideas before I go into making a sample app and a database. 
  
 Thanks, 
 .Ryan.

I think we may have found the culprit… some how our images have a dpi of 11 set rather than 96… we will try changing the images tomorrow and I’ll let you know the results. 
  
 Thanks for your help, 
 .Ryan.

Ryan, 
  
 I am expecting your test result for changing the dpi, cause I don’t have data to reproduce your problem. And another thing, you mentioned that " In my layer, I call DrawWorldImageWithoutScaling…", but I think that method is in GeoCanvas, so I still don’t know which type of GeoCanvas you use. Could you tell the type of your instance canvas and that will be more helpful. 
  
 Thanks, 
 James