ThinkGeo.com    |     Documentation    |     Premium Support

Layers Geometry

 Hello ,


Im having the following problem i need to be able to load different layers without knowing what each layer displayes. Is there a way after selecting the db Table with the layer finding out if the records of the table are poinst or  polygons e.t.c


 


Thanks in advance


dom



Hello Dimitris, 
  
 Thanks for your post, which layer are you using? For most layers, after you get your featuresource, you can use GetWellKnownType method that can return every feature’s type, then you can determine the pointshape or polygons. 
  
 Regards, 
  
 Gary

 Hello Gary ,


Thank you for your reply, i managed to solve this problem using the WellKnownType. The problem im having now is removing an overlay from the map. 


Im having a list of layers that the user can check or uncheck in order to show them on the map the problem is that when i uncheck a layer and i remove it from the code it stayes on the map


Every overlay is declared like this


TestOverlay = new LayerOverlay("TOverlay" + tblName, false, TileType.SingleTile);


in order to be unique So when i uncheck the checkbox i just declare the Overlay and then i remove it


Map1.CustomOverlays.Remove(TestOverlay);


But it does not work . whereas if i declared manually an overlay for each layer then the .Remove method works fine


Any thoughts


thanks in advance


 


dom



Hello Dimitris,


Thanks for your further information, I think the problem is you should use the overlay's key value(id) instead of using overlay's name when you remove.



TestOverlay = new LayerOverlay("TOverlay" + tblName, false, TileType.SingleTile);
Map1.CustomOverlays.Remove("TOverlay" + tblName);

Regards,


Gary


 



Hi Gary ,


 


you are right 


thanks for your help



Hello Dimitris, 
  
 You are welcome, please feel free to let us know your questions. 
  
 Regards, 
  
 Gary