<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic IFeatureCursor.Search(spatialFilter,...) has too much tolerance in ArcObjects SDK Questions</title>
    <link>https://community.esri.com/t5/arcobjects-sdk-questions/ifeaturecursor-search-spatialfilter-has-too-much/m-p/701931#M18793</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Hi,&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;I have a couple of points and some line features. I know that every point lies exactly on one of the lines. For each point I now want to identify the underlying line.#&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;For this I use the Search Method of IFeatureCursor and a spatial Filter.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;It works (not) fine.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Some often there are more than one "underlying" line found. But the lines never intersect or touch each other. So there seems to be some tolerance. I thought of the envelope but as I can see, the envelope is no area but a single point, isnt it?&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;[ATTACH]8801[/ATTACH]&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Thanks for ideas and aswers!&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Here the code:&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;PRE class="plain" name="code"&gt;IEnvelope envelope = point.Envelope;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //envelope.Expand(1.1, 1.1, true);

&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; string shapeFieldName = contourClass.ShapeFieldName;

&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // Create a new spatial filter and use the new envelope as the geometry&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ISpatialFilter spatialFilter = new SpatialFilterClass();
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //spatialFilter.Geometry = envelope;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; spatialFilter.Geometry = point;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; spatialFilter.SpatialRel = esriSpatialRelEnum.esriSpatialRelEnvelopeIntersects;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; spatialFilter.set_OutputSpatialReference(shapeFieldName, point.SpatialReference);
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; spatialFilter.GeometryField = shapeFieldName;

&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // Do the search
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; IFeatureCursor featureCursor = contourClass.Search(spatialFilter, false);&lt;/PRE&gt;&lt;DIV style="display:none;"&gt; &lt;/DIV&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Wed, 07 Sep 2011 13:49:27 GMT</pubDate>
    <dc:creator>SebastianKrings</dc:creator>
    <dc:date>2011-09-07T13:49:27Z</dc:date>
    <item>
      <title>IFeatureCursor.Search(spatialFilter,...) has too much tolerance</title>
      <link>https://community.esri.com/t5/arcobjects-sdk-questions/ifeaturecursor-search-spatialfilter-has-too-much/m-p/701931#M18793</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Hi,&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;I have a couple of points and some line features. I know that every point lies exactly on one of the lines. For each point I now want to identify the underlying line.#&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;For this I use the Search Method of IFeatureCursor and a spatial Filter.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;It works (not) fine.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Some often there are more than one "underlying" line found. But the lines never intersect or touch each other. So there seems to be some tolerance. I thought of the envelope but as I can see, the envelope is no area but a single point, isnt it?&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;[ATTACH]8801[/ATTACH]&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Thanks for ideas and aswers!&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Here the code:&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;PRE class="plain" name="code"&gt;IEnvelope envelope = point.Envelope;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //envelope.Expand(1.1, 1.1, true);

&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; string shapeFieldName = contourClass.ShapeFieldName;

&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // Create a new spatial filter and use the new envelope as the geometry&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ISpatialFilter spatialFilter = new SpatialFilterClass();
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //spatialFilter.Geometry = envelope;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; spatialFilter.Geometry = point;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; spatialFilter.SpatialRel = esriSpatialRelEnum.esriSpatialRelEnvelopeIntersects;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; spatialFilter.set_OutputSpatialReference(shapeFieldName, point.SpatialReference);
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; spatialFilter.GeometryField = shapeFieldName;

&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // Do the search
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; IFeatureCursor featureCursor = contourClass.Search(spatialFilter, false);&lt;/PRE&gt;&lt;DIV style="display:none;"&gt; &lt;/DIV&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 07 Sep 2011 13:49:27 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcobjects-sdk-questions/ifeaturecursor-search-spatialfilter-has-too-much/m-p/701931#M18793</guid>
      <dc:creator>SebastianKrings</dc:creator>
      <dc:date>2011-09-07T13:49:27Z</dc:date>
    </item>
    <item>
      <title>Re: IFeatureCursor.Search(spatialFilter,...) has too much tolerance</title>
      <link>https://community.esri.com/t5/arcobjects-sdk-questions/ifeaturecursor-search-spatialfilter-has-too-much/m-p/701932#M18794</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Your spatial relation is wrong. &lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Envelope of line is containing rectangle this is reason of returning a lot more features then you expected. &lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;I sugest to use &lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;esriSpatialRelEnum.esriSpatialRelIntersect - geometry intersection.&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 07 Sep 2011 14:25:40 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcobjects-sdk-questions/ifeaturecursor-search-spatialfilter-has-too-much/m-p/701932#M18794</guid>
      <dc:creator>DubravkoAntonic</dc:creator>
      <dc:date>2011-09-07T14:25:40Z</dc:date>
    </item>
    <item>
      <title>Re: IFeatureCursor.Search(spatialFilter,...) has too much tolerance</title>
      <link>https://community.esri.com/t5/arcobjects-sdk-questions/ifeaturecursor-search-spatialfilter-has-too-much/m-p/701933#M18795</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Antonic is correct esriSpatialRelIntersect will return the right line.&amp;nbsp; However this seems like a very inefficient method.&amp;nbsp; If each point is on one and only one line, I would recommend a spatialjoin.&amp;nbsp; You only have to set it up once and then you can iterate through all the features and get the line objectID.&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 07 Sep 2011 14:42:18 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcobjects-sdk-questions/ifeaturecursor-search-spatialfilter-has-too-much/m-p/701933#M18795</guid>
      <dc:creator>AlexanderGray</dc:creator>
      <dc:date>2011-09-07T14:42:18Z</dc:date>
    </item>
    <item>
      <title>Re: IFeatureCursor.Search(spatialFilter,...) has too much tolerance</title>
      <link>https://community.esri.com/t5/arcobjects-sdk-questions/ifeaturecursor-search-spatialfilter-has-too-much/m-p/701934#M18796</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;hi&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;thanks a lot, that mus be it&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;yes you're right ist very insufficient...&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;ich habe some lines and some points&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;every point lies on one line&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;but one line can have more points than only one or no point&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;this way is until now the only way which work at all...&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;with spaital join you mean something like this?:&lt;/SPAN&gt;&lt;BR /&gt;&lt;A href="http://forums.arcgis.com/threads/36765-JoinData-Can-t-create-output-feature-class.-the-workspaces-is-not-connected"&gt;http://forums.arcgis.com/threads/36765-JoinData-Can-t-create-output-feature-class.-the-workspaces-is-not-connected&lt;/A&gt;&lt;SPAN&gt;.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;sorry, but did not work&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;may you can help in the other topic&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;thanks!&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 08 Sep 2011 07:04:48 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcobjects-sdk-questions/ifeaturecursor-search-spatialfilter-has-too-much/m-p/701934#M18796</guid>
      <dc:creator>SebastianKrings</dc:creator>
      <dc:date>2011-09-08T07:04:48Z</dc:date>
    </item>
  </channel>
</rss>

