ThinkGeo.com    |     Documentation    |     Premium Support

How to display features in particular area/ Parcel?

I have a shapefile that's been added to my map as a LayerOverlay, this is the parcel/outline of a users area they are responsible for on the map.


 I have another LayerOverlay that contains an InMemoryFeatureLayer that has several Features in it. The features are custom objects representing structures/trees/buildings/locations. the columns are id, address, city.


 What I need to do is get all the buildings inside the particular parcel shapefile.


 All help or suggestions will be appreciated. If you need more info about my problem let me know.



Hello Djay, 
  
 If I understood your requirement correctly, you might do the following to get your result: 
 1) Use GetFeatureByID or GetAllFeature to extract the Parcel feature. You can use foreach loop to get required feature from GetAllFeature. See this Link wiki.thinkgeo.com/wiki/ThinkGeo.MapSuite.Core.QueryTools 
  
 2) Use GetFeaturesWithin and use the extracted parcel feature as input to get the inside features of your inmemoryfeature layer. Display your inside feature using inmemoryfeaturelayer. 


Hello Djay&Vivek, 



Thanks for the Vivek’s sharing and I think Vivek provided the correct way if we understand the question correctly.  

Djay, If there are any confusions on the solution or misunderstandings, please feel free to let us know. Some codes like this:


foreach (var item in parcelFeaturesource.GetAllFeatures(ReturningColumnsType.NoColumns))
            {
                Collection<Feature> foundbuilding = buildingLayer.QueryTools.GetFeaturesWithin(item,ReturningColumnsType.AllColumns);
                // then add into the result
            }

Regards, 

Troy