ThinkGeo.com    |     Documentation    |     Premium Support

WebImage Issue in Map

Hello,


I have placed several markers with WebImages on the map. The structure is below


 



 protected void CreateMarkerOverlay()
    {
        SimpleMarkerOverlay markerOverlay = new SimpleMarkerOverlay("Vehicle Markers");
        mainMap.CustomOverlays.Add(markerOverlay);
    }

/// <summary>
    /// getting the marker
    /// </summary>
    public SimpleMarkerOverlay MarkerOverlay
    {
        get { return (this.mainMap.CustomOverlays["Vehicle Markers"] as SimpleMarkerOverlay); }
    }

///Showing the marker
 vehicleMarker = new Marker();
 vehicleMarker.Id = Convert.ToString(dsVehicle.Tables[0].Rows[i]["VehicleId"]);
 mainMap.MarkerOverlay.Markers.Add(vehicleMarker);

//set marker position and marker image
vehicleMarker.Position = pnt;
vehicleMarker.WebImage = markerImage;

 


 


 Now, when i supply small image having size of 550 Bytes then all the markers with webimages are displaying perfectly.


But now i have replaced this test image with the image provided by client having 10KB, so when i checked it on the map it stops displaying. when i check its property to see its path, its showing "localhost/iTrack/User/icon_GeoResource.axd?path=http%3a%2f%2flocalhost%2fiTrack%2fApp_Themes%2fDefault%2fImages%2fvehicle%2fmotorbike.png&angle=-82&width=24&height=24&text=&format=image/png&fontsize=10&color=Black&x=0&y=0&fontstyle=1"


I am displaying more than 100 markers here.


 


One more thing i notice here is, when i display only one marker then it display it correctly. When i right click and check the properties then i got "localhost/iTrack/App_Themes/...bakkie.png" which is perfect.


 


Now in this scenario when i rotate this single marker with the below code 


vehicleMarker.WebImage.RotationAngle  = Convert.ToInt32(dsVehicle.Tables[0].Rows[0]["Heading"]) * -1.0f;


 


then the image disappears. When i check its property its showing this path "localhost/iTrack/user/icon_GeoResource.axd?path=http%3a%2f%2flocalhost%2fiTrack%2fApp_Themes%2fDefault%2fImages%2fvehicle%2fbakkie.png&angle=-45&width=0&height=0&text=&format=image/png&fontsize=10&color=Black&x=0&y=0&fontstyle=1"


 


 


I hope you understand both the case here..


Looking forward to your reply


 


Thanks


 



 


Hi, Badal
Ok, I got it. I guess there are some problems for setting the ImageVirtualPath in your web app. You need to set it in relative path not start with “http”.
 
In the “Markers” folder in our installed samples, and you can find about how to set the virtual path for your web image.
 
If you don’t set the RotatinoAngel or Text, and it won’t get the image from server but load it from the client-side.
 
If you still have problems about it, please provide us the code you are utilizing.
 
Thanks,
 
Khalil

Hello Khalil, 
  
 I look at the sample "AddProjectedMarkers.aspx" located in "Markers" folder 
 I have made one change and images are disappear from the map. 
  
                      markerOverlay.ZoomLevelSet.ZoomLevel01.DefaultMarkerStyle.WebImage = new WebImage("…/…/theme/default/samplepic/circle.png"); 
 added this line -->markerOverlay.ZoomLevelSet.ZoomLevel01.DefaultMarkerStyle.WebImage.RotationAngle = Convert.ToInt32(90) * -1.0f; 
  
 I have mark that image are re-appear when i give the width and height to the webImage 
 But i cannot do this in my case since my image is of 60 X 30 and rotating it with fixed height and width cuts my image. It comes fine when there is no rotation and when rotation is applied the image got cropped, its like image comes out of the box of 60 X 30

Hello, 
  
 have you re-produced the above issue? 
  
 if you have not then i can attach sample code with sample image here. 
  
 I am looking for answer soon as i have to show this to the client. 
  
 Thanks

 


Hi Badal,
Yes, we recreated the issue you descripted with an image whose width isn’t equal to its height. The easiest way to resolve the cut problem is setting the width and height much bigger than the actual width and height, I think double is ok. For instance, I have an image “marker.jpg”, and the size is 20 * 34, to resolve the cut issue, we can use the code as following:
                markerOverlay.ZoomLevelSet.ZoomLevel01.DefaultMarkerStyle.WebImage = new WebImage("../../marker.jpg", 40, 68);
 
Hope the workaround works with you. Thanks.
Johnny
 

 Nope, thats not worked either.


 
Specifying the double height, width also increase the height/width of the image and hence image gets cut out.
 
here is the screenshot for your reference
 

 
 
Here is the original image
 


Hi Badal, 
  
 Sorry that the workaround doesn’t work, we are trying to work on this issue and give you the solution as soon as possible. I think it can be available no later than tomorrow. 
  
 Sorry for the inconvenience. Thanks, 
  
 Johnny  


 


Hi Badal,
After a big efforts, I’m very glad to let you know we have fixed this bug, please get the updated version 4.5.16.0 or higher from helpdesk.thinkgeo.com . The building of the package is in progress, and maybe it can be available in CRM few hours later, please wait sometime.
Thanks,
Johnny

ok i will get the latest build from the helpdesk and will check it out and let u know



Great, and hope everthing works well with you. 
 Johnny

Hello Johnny, 
  
 Sorry for the delayed response since was in tight deadline and many Thanks for the update, the webimage issue is been solved now

Thanks for your feedback.  
  
 Any questions please let us know. 
  
 Thanks, 
  
 Khalil