ThinkGeo.com    |     Documentation    |     Premium Support

Determination of ShapeFileType before save a shape

 


I wrote a TrackOverlay_TrackEnd event handler in the hope of saving the drawing of a shape into a shp file.


In order to create ShapeFile, I need to determine the Shape type based on


 

TrackEndedTrackInteractiveOverlayEventArgs


e

I tried : 



if (e.GetType().Name.ToString().Equals("PolygonShape")) { ...};





to detect whether the shape drawn is a polygon, this doesn't seem working, because the block associated with the if statement is not executed even if the shape is a polygon. What API syntax should be used to achieve this purpose? I want to save all kinds of shapes available in MapSuite wpf Desktop 4.x. Thanks.



Franklin


 




Franklin, 
  
 If you want to determine ShapeFileType of shape, first you can get well know type and then you can easy to convert it to shape file type. 
 WellKnownType type = e.TrackShape.GetWellKnownType(); 
 if (type== WellKnownType.Polygon) {…}; 
  
 Thanks 
 James

James, 
  
   Thanks for the reply. I also find another way by "  if (wpfMap1.TrackOverlay.TrackMode == TrackMode.Polygon) {…}; " 
  
 Franklin

Franklin, 
  
 I am glad you find the solution to solve your problem, using TrackMode is a good way to determine which type of shape you are tracking, just remind you the ShapeFileType only has 7 types, but the TrackMode has 11 modes. 
  
 Please let me know if you have more questions. 
 Thanks 
  
 James