<?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 What can I expect from ArcPy Geometry .equals method? in Python Questions</title>
    <link>https://community.esri.com/t5/python-questions/what-can-i-expect-from-arcpy-geometry-equals/m-p/495974#M38934</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;My work flow is as follows:&lt;/P&gt;&lt;OL&gt;&lt;LI&gt;I extract the start and end point geometries from two polylines using the .firstPoint and&amp;nbsp;.lastPoint properties of the ArcPy Geometry class.&lt;/LI&gt;&lt;LI&gt;Then I compare these points (which should be snapped at one end) with each other using the .equals method in the ArcPy Geometry class, to try to determine which end of the lines are connected to one another.&lt;/LI&gt;&lt;LI&gt;This works in most cases, but ocassionally fails to find a match.&lt;/LI&gt;&lt;/OL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;My question is: what can I expect from using the .equals method, i.e. does attempt to handle&amp;nbsp;&lt;A href="http://en.wikipedia.org/wiki/Floating_point#Accuracy_problems" rel="nofollow noreferrer" style="background-color: transparent; border-image-outset: 0; border-image-repeat: stretch; border-image-slice: 100%; border-image-source: none; border-image-width: 1; box-sizing: border-box; color: #0e4c99; cursor: pointer; font-family: Arial,&amp;amp;quot; helvetica neue&amp;amp;quot;,helvetica,sans-serif; font-size: 15px; font-size-adjust: none; font-stretch: normal; font-style: normal; font-variant: normal; font-weight: 400; letter-spacing: normal; line-height: 19.5px; orphans: 2; text-align: left; text-decoration: underline; text-indent: 0px; text-transform: none; vertical-align: baseline; -webkit-text-stroke-width: 0px; white-space: normal; word-spacing: 0px; padding: 0px; margin: 0px; border: 0px none #0e4c99;"&gt;floating point precision&lt;/A&gt;, or should I adopt an alternative approach?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Darren&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Tue, 12 Mar 2019 15:59:41 GMT</pubDate>
    <dc:creator>DarrenSmith</dc:creator>
    <dc:date>2019-03-12T15:59:41Z</dc:date>
    <item>
      <title>What can I expect from ArcPy Geometry .equals method?</title>
      <link>https://community.esri.com/t5/python-questions/what-can-i-expect-from-arcpy-geometry-equals/m-p/495974#M38934</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;My work flow is as follows:&lt;/P&gt;&lt;OL&gt;&lt;LI&gt;I extract the start and end point geometries from two polylines using the .firstPoint and&amp;nbsp;.lastPoint properties of the ArcPy Geometry class.&lt;/LI&gt;&lt;LI&gt;Then I compare these points (which should be snapped at one end) with each other using the .equals method in the ArcPy Geometry class, to try to determine which end of the lines are connected to one another.&lt;/LI&gt;&lt;LI&gt;This works in most cases, but ocassionally fails to find a match.&lt;/LI&gt;&lt;/OL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;My question is: what can I expect from using the .equals method, i.e. does attempt to handle&amp;nbsp;&lt;A href="http://en.wikipedia.org/wiki/Floating_point#Accuracy_problems" rel="nofollow noreferrer" style="background-color: transparent; border-image-outset: 0; border-image-repeat: stretch; border-image-slice: 100%; border-image-source: none; border-image-width: 1; box-sizing: border-box; color: #0e4c99; cursor: pointer; font-family: Arial,&amp;amp;quot; helvetica neue&amp;amp;quot;,helvetica,sans-serif; font-size: 15px; font-size-adjust: none; font-stretch: normal; font-style: normal; font-variant: normal; font-weight: 400; letter-spacing: normal; line-height: 19.5px; orphans: 2; text-align: left; text-decoration: underline; text-indent: 0px; text-transform: none; vertical-align: baseline; -webkit-text-stroke-width: 0px; white-space: normal; word-spacing: 0px; padding: 0px; margin: 0px; border: 0px none #0e4c99;"&gt;floating point precision&lt;/A&gt;, or should I adopt an alternative approach?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Darren&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 12 Mar 2019 15:59:41 GMT</pubDate>
      <guid>https://community.esri.com/t5/python-questions/what-can-i-expect-from-arcpy-geometry-equals/m-p/495974#M38934</guid>
      <dc:creator>DarrenSmith</dc:creator>
      <dc:date>2019-03-12T15:59:41Z</dc:date>
    </item>
    <item>
      <title>Re: What can I expect from ArcPy Geometry .equals method?</title>
      <link>https://community.esri.com/t5/python-questions/what-can-i-expect-from-arcpy-geometry-equals/m-p/495975#M38935</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;I would never do an equality check.&amp;nbsp; you can incorporate tolerance tests in your coding, it is generally worth the extra effort.&amp;nbsp; NumPy (available for arcmap and ArcGIS pro and pandas, scipy etc) has builtin tools. where you can specify a tolerance for 'what is close' enough&lt;/P&gt;&lt;PRE class="lia-code-sample line-numbers language-none"&gt;&lt;CODE&gt;a &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; &lt;SPAN class="punctuation token"&gt;[&lt;/SPAN&gt;&lt;SPAN class="number token"&gt;1.0&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; &lt;SPAN class="number token"&gt;2.0&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;]&lt;/SPAN&gt;

b &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; &lt;SPAN class="punctuation token"&gt;[&lt;/SPAN&gt;&lt;SPAN class="number token"&gt;1.000001&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; &lt;SPAN class="number token"&gt;1.999999&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;]&lt;/SPAN&gt;

np&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;allclose&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;a&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt;b&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; rtol&lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt;&lt;SPAN class="number token"&gt;1e&lt;/SPAN&gt;&lt;SPAN class="operator token"&gt;-&lt;/SPAN&gt;&lt;SPAN class="number token"&gt;05&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; atol&lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt;&lt;SPAN class="number token"&gt;1e&lt;/SPAN&gt;&lt;SPAN class="operator token"&gt;-&lt;/SPAN&gt;&lt;SPAN class="number token"&gt;06&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;
&lt;SPAN class="token boolean"&gt;True&lt;/SPAN&gt;‍‍‍‍‍‍&lt;SPAN class="line-numbers-rows"&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;A bit of a kludge in arcpy since the 'point' object doesn't have an iterator nor does it support starred notation on output.&lt;/P&gt;&lt;DIV&gt;&lt;PRE class="lia-code-sample line-numbers language-none"&gt;&lt;CODE&gt;&lt;SPAN class="keyword token"&gt;from&lt;/SPAN&gt; arcpy &lt;SPAN class="keyword token"&gt;import&lt;/SPAN&gt; Point
p0 &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; Point&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;&lt;SPAN class="operator token"&gt;*&lt;/SPAN&gt;a&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;  &lt;SPAN class="comment token"&gt;# ---- using a and b above&lt;/SPAN&gt;
p1 &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; Point&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;&lt;SPAN class="operator token"&gt;*&lt;/SPAN&gt;b&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;
np&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;allclose&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;[&lt;/SPAN&gt;p0&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;X&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; p0&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;Y&lt;SPAN class="punctuation token"&gt;]&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; &lt;SPAN class="punctuation token"&gt;[&lt;/SPAN&gt;p1&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;X&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; p1&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;Y&lt;SPAN class="punctuation token"&gt;]&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; rtol&lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt;&lt;SPAN class="number token"&gt;1e&lt;/SPAN&gt;&lt;SPAN class="operator token"&gt;-&lt;/SPAN&gt;&lt;SPAN class="number token"&gt;05&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; atol&lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt;&lt;SPAN class="number token"&gt;1e&lt;/SPAN&gt;&lt;SPAN class="operator token"&gt;-&lt;/SPAN&gt;&lt;SPAN class="number token"&gt;05&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;
&lt;SPAN class="token boolean"&gt;True&lt;/SPAN&gt;&lt;SPAN class="line-numbers-rows"&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/CODE&gt;&lt;/PRE&gt;&lt;/DIV&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sat, 11 Dec 2021 21:48:47 GMT</pubDate>
      <guid>https://community.esri.com/t5/python-questions/what-can-i-expect-from-arcpy-geometry-equals/m-p/495975#M38935</guid>
      <dc:creator>DanPatterson_Retired</dc:creator>
      <dc:date>2021-12-11T21:48:47Z</dc:date>
    </item>
    <item>
      <title>Re: What can I expect from ArcPy Geometry .equals method?</title>
      <link>https://community.esri.com/t5/python-questions/what-can-i-expect-from-arcpy-geometry-equals/m-p/495976#M38936</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Geoprocessing tools&amp;nbsp;should use the GP XY Tolerance environment in comparisons, but it appears the .equals Arcpy method is not doing that. What is the source format for these locations? I would think if they are in the geodatabase the integer internal feature class coordinate system would&amp;nbsp;force .equals to work.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;There is a&amp;nbsp;more comprehensive discussion here. The poster here echoes&amp;nbsp;Dan's suggestion of comparing with numpy.&lt;/P&gt;&lt;P&gt;&lt;A class="link-titled" href="https://gis.stackexchange.com/questions/40481/comparing-two-geometries-in-arcpy" title="https://gis.stackexchange.com/questions/40481/comparing-two-geometries-in-arcpy"&gt;geometry - Comparing two geometries in ArcPy? - Geographic Information Systems Stack Exchange&lt;/A&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;It should be noted that the above discussion references bugs in 10.0/10.1 that may have been long fixed.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 13 Mar 2019 18:52:34 GMT</pubDate>
      <guid>https://community.esri.com/t5/python-questions/what-can-i-expect-from-arcpy-geometry-equals/m-p/495976#M38936</guid>
      <dc:creator>curtvprice</dc:creator>
      <dc:date>2019-03-13T18:52:34Z</dc:date>
    </item>
    <item>
      <title>Re: What can I expect from ArcPy Geometry .equals method?</title>
      <link>https://community.esri.com/t5/python-questions/what-can-i-expect-from-arcpy-geometry-equals/m-p/495977#M38937</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;or if the coordinate geometry doesn't have a defined projection, you will have issues as well&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 13 Mar 2019 19:30:45 GMT</pubDate>
      <guid>https://community.esri.com/t5/python-questions/what-can-i-expect-from-arcpy-geometry-equals/m-p/495977#M38937</guid>
      <dc:creator>DanPatterson_Retired</dc:creator>
      <dc:date>2019-03-13T19:30:45Z</dc:date>
    </item>
    <item>
      <title>Re: What can I expect from ArcPy Geometry .equals method?</title>
      <link>https://community.esri.com/t5/python-questions/what-can-i-expect-from-arcpy-geometry-equals/m-p/495978#M38938</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Thanks Dan &amp;amp; Curtis,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;In the past, I've always used alternative methods like numpy&amp;nbsp;&lt;SPAN style="display: inline !important; float: none; background-color: transparent; color: #000000; font-family: monospace; font-size: 15px; font-style: normal; font-variant: normal; font-weight: 400; letter-spacing: normal; orphans: 2; text-align: left; text-decoration: none; text-indent: 0px; text-shadow: 0px 1px #fff; text-transform: none; -webkit-text-stroke-width: 0px; white-space: pre; word-spacing: 0px;"&gt;allclose&lt;/SPAN&gt;, but this time I wanted to give the .equals method a go. My problem (stuck working in desktop 10.2.1) was fixed by assigning the two pointGeometry objects being compared with a spatial reference. Still interested to know exactly where the .equals method gets the number of significant digits to use when comparing to see if the coordinates are 'equal'. Is it&amp;nbsp;&lt;SPAN style="background-color: transparent; color: #4d4d4d; font-family: &amp;amp;quot; consolas&amp;amp;quot;,&amp;amp;quot;andale mono&amp;amp;quot;,&amp;amp;quot;lucida console&amp;amp;quot;,&amp;amp;quot;monaco&amp;amp;quot;,&amp;amp;quot;courier new&amp;amp;quot;,courier,monospace; font-size: 12px; font-style: normal; font-variant: normal; font-weight: 400; letter-spacing: normal; orphans: 2; text-align: left; text-decoration: none; text-indent: 0px; text-transform: none; -webkit-text-stroke-width: 0px; white-space: pre; word-spacing: 0px;"&gt;arcpy&lt;/SPAN&gt;&lt;SPAN style="background-color: transparent; color: #4d4d4d; font-family: &amp;amp;quot; consolas&amp;amp;quot;,&amp;amp;quot;andale mono&amp;amp;quot;,&amp;amp;quot;lucida console&amp;amp;quot;,&amp;amp;quot;monaco&amp;amp;quot;,&amp;amp;quot;courier new&amp;amp;quot;,courier,monospace; font-size: 12px; font-style: normal; font-variant: normal; font-weight: 400; letter-spacing: normal; orphans: 2; text-align: left; text-decoration: none; text-indent: 0px; text-transform: none; -webkit-text-stroke-width: 0px; white-space: pre; word-spacing: 0px;"&gt;.&lt;/SPAN&gt;&lt;SPAN style="background-color: transparent; color: #4d4d4d; font-family: &amp;amp;quot; consolas&amp;amp;quot;,&amp;amp;quot;andale mono&amp;amp;quot;,&amp;amp;quot;lucida console&amp;amp;quot;,&amp;amp;quot;monaco&amp;amp;quot;,&amp;amp;quot;courier new&amp;amp;quot;,courier,monospace; font-size: 12px; font-style: normal; font-variant: normal; font-weight: 400; letter-spacing: normal; orphans: 2; text-align: left; text-decoration: none; text-indent: 0px; text-transform: none; -webkit-text-stroke-width: 0px; white-space: pre; word-spacing: 0px;"&gt;env&lt;/SPAN&gt;&lt;SPAN style="background-color: transparent; color: #4d4d4d; font-family: &amp;amp;quot; consolas&amp;amp;quot;,&amp;amp;quot;andale mono&amp;amp;quot;,&amp;amp;quot;lucida console&amp;amp;quot;,&amp;amp;quot;monaco&amp;amp;quot;,&amp;amp;quot;courier new&amp;amp;quot;,courier,monospace; font-size: 12px; font-style: normal; font-variant: normal; font-weight: 400; letter-spacing: normal; orphans: 2; text-align: left; text-decoration: none; text-indent: 0px; text-transform: none; -webkit-text-stroke-width: 0px; white-space: pre; word-spacing: 0px;"&gt;.&lt;/SPAN&gt;&lt;SPAN style="background-color: transparent; color: #4d4d4d; font-family: &amp;amp;quot; consolas&amp;amp;quot;,&amp;amp;quot;andale mono&amp;amp;quot;,&amp;amp;quot;lucida console&amp;amp;quot;,&amp;amp;quot;monaco&amp;amp;quot;,&amp;amp;quot;courier new&amp;amp;quot;,courier,monospace; font-size: 12px; font-style: normal; font-variant: normal; font-weight: 400; letter-spacing: normal; orphans: 2; text-align: left; text-decoration: none; text-indent: 0px; text-transform: none; -webkit-text-stroke-width: 0px; white-space: pre; word-spacing: 0px;"&gt;XYTolerance&lt;/SPAN&gt; (I haven't set), inferred from the spatial reference, or does it just use the esri default of 0.001. The esri documentation could be better at explaining this IMHO.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 14 Mar 2019 08:58:40 GMT</pubDate>
      <guid>https://community.esri.com/t5/python-questions/what-can-i-expect-from-arcpy-geometry-equals/m-p/495978#M38938</guid>
      <dc:creator>DarrenSmith</dc:creator>
      <dc:date>2019-03-14T08:58:40Z</dc:date>
    </item>
    <item>
      <title>Re: What can I expect from ArcPy Geometry .equals method?</title>
      <link>https://community.esri.com/t5/python-questions/what-can-i-expect-from-arcpy-geometry-equals/m-p/495979#M38939</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Of interest is&amp;nbsp;&lt;A class="link-titled" href="https://pro.arcgis.com/en/pro-app/tool-reference/environment-settings/xy-resolution.htm" title="https://pro.arcgis.com/en/pro-app/tool-reference/environment-settings/xy-resolution.htm"&gt;XY Resolution (Environment setting)—Geoprocessing | ArcGIS Desktop&lt;/A&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;and&amp;nbsp;&lt;A class="link-titled" href="https://pro.arcgis.com/en/pro-app/tool-reference/appendices/spatial-reference-and-geoprocessing.htm" title="https://pro.arcgis.com/en/pro-app/tool-reference/appendices/spatial-reference-and-geoprocessing.htm"&gt;Spatial reference and geoprocessing—Appendices | ArcGIS Desktop&lt;/A&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;the reason that I use numpy for my checks is that I don't see coordinates truncated at either their tolerance or resolution in geodatabase tables. Besides, if it is critical to a process, I would rather check myself rather than relying on an environment setting or when you are working with data derived from others.&amp;nbsp; If they aren't close, it is a good spot to take one, or the other or the average of the two to clean up the point location for good.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 14 Mar 2019 10:18:23 GMT</pubDate>
      <guid>https://community.esri.com/t5/python-questions/what-can-i-expect-from-arcpy-geometry-equals/m-p/495979#M38939</guid>
      <dc:creator>DanPatterson_Retired</dc:creator>
      <dc:date>2019-03-14T10:18:23Z</dc:date>
    </item>
    <item>
      <title>Re: What can I expect from ArcPy Geometry .equals method?</title>
      <link>https://community.esri.com/t5/python-questions/what-can-i-expect-from-arcpy-geometry-equals/m-p/495980#M38940</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;I totally agree with that view point. In this case it's not mission critical, hence the experimentation. It frustrates me that this isn't documented though.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 14 Mar 2019 13:54:46 GMT</pubDate>
      <guid>https://community.esri.com/t5/python-questions/what-can-i-expect-from-arcpy-geometry-equals/m-p/495980#M38940</guid>
      <dc:creator>DarrenSmith</dc:creator>
      <dc:date>2019-03-14T13:54:46Z</dc:date>
    </item>
    <item>
      <title>Re: What can I expect from ArcPy Geometry .equals method?</title>
      <link>https://community.esri.com/t5/python-questions/what-can-i-expect-from-arcpy-geometry-equals/m-p/495981#M38941</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;BLOCKQUOTE class="jive_macro_quote jive-quote jive_text_macro"&gt;If they aren't close, it is a good spot to take one, or the other or the average of the two to clean up the point location for good.&lt;/BLOCKQUOTE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="background-color: #ffffff;"&gt;I'm sure you both know this, but it's important to&amp;nbsp;clarify for the good of the thread that in the geodatabase you cannot pin down a location through geoprocessing; the location will change if saved&amp;nbsp;to a new&amp;nbsp;feature class with a different domain and resolution. Coordinates in the gdb are not stored&amp;nbsp;as double floating point (like shapefile), they are stored in an internal integer grid with resolution equal the feature class or feature dataset resolution. Large database applications that want to persist coordinates must take care to have the domain and resolution set to be the same for new feature classes to avoid coordinates moving (back in ArcInfo workstation days floating point issues led to "fuzzy creep" through many overlays which is one reason Esri went with integer coordinates for the gdb).&amp;nbsp;&amp;nbsp;There are also performance and storage considerations, you can trade precision for data table size (and performance).&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="background-color: #ffffff;"&gt;Usually we&amp;nbsp;can just&amp;nbsp;with the resolution and domain defaults and ignore the issue, but it&amp;nbsp;can become important when managing large, high accuracy datasets through time, and, if we get into the weeds with&amp;nbsp;feature manipulation&amp;nbsp;as Darren has done. Setting an appropriate non-default XY resolution is sometimes needed&amp;nbsp;when&amp;nbsp;running spatial joins to get appropriate results, especially if two input datasets have different precision or accuracy.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="background-color: #ffffff;"&gt;I found a&amp;nbsp;more complete discussion about&amp;nbsp;geodatabase coordinates and spatial operators in the ArcObjects .NET help:&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="background-color: #ffffff;"&gt;&lt;A class="link-titled" href="http://help.arcgis.com/en/sdk/10.0/arcobjects_net/conceptualhelp/index.html#//00010000017q000000" title="http://help.arcgis.com/en/sdk/10.0/arcobjects_net/conceptualhelp/index.html#//00010000017q000000"&gt;ArcObjects 10 .NET SDK Help&lt;/A&gt; Understanding coordinate management in ArcGIS&lt;/SPAN&gt;&lt;/P&gt;&lt;BLOCKQUOTE class="jive_macro_quote jive-quote jive_text_macro"&gt;&lt;P&gt;To achieve precise and predictable results using the geometry library, it is essential that the spatial reference of geometries in a workflow is well defined. When performing a spatial operation using two or more geometries, for example, an intersection, the coordinate systems of the two geometries must be equal. If the coordinate systems of the geometries are different or undefined, the operation can produce unexpected results.&lt;/P&gt;&lt;/BLOCKQUOTE&gt;&lt;P&gt;&lt;SPAN style="background-color: #ffffff;"&gt;Darren:&amp;nbsp;does setting the arcpy.env.XYResolution&amp;nbsp;improve your results? Based on the .NET doc it seems like that may help.&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="background-color: #ffffff;"&gt;I totally agree the Python geometry operators documentation needs to be improved!&lt;/SPAN&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 14 Mar 2019 15:59:53 GMT</pubDate>
      <guid>https://community.esri.com/t5/python-questions/what-can-i-expect-from-arcpy-geometry-equals/m-p/495981#M38941</guid>
      <dc:creator>curtvprice</dc:creator>
      <dc:date>2019-03-14T15:59:53Z</dc:date>
    </item>
    <item>
      <title>Re: What can I expect from ArcPy Geometry .equals method?</title>
      <link>https://community.esri.com/t5/python-questions/what-can-i-expect-from-arcpy-geometry-equals/m-p/495982#M38942</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Thanks Curtis, a very useful summary.&lt;/P&gt;&lt;P&gt;Regarding&amp;nbsp;&lt;SPAN style="display: inline !important; float: none; background-color: #ffffff; color: #3d3d3d; font-family: arial,helvetica,'helvetica neue',verdana,sans-serif; font-size: 15px; font-style: normal; font-variant: normal; font-weight: 400; letter-spacing: normal; orphans: 2; text-align: left; text-decoration: none; text-indent: 0px; text-transform: none; -webkit-text-stroke-width: 0px; white-space: normal; word-spacing: 0px;"&gt;setting the &lt;EM&gt;arcpy.env.XYResolution&lt;/EM&gt;, it doesn't seem to affect things at all. So from that, I can only infer that it's coming from somewhere else or is hard-coded (which seems less probable). Perhaps someone from esri inc. can enlighten us. The ironic thing is that I was just at the esri developer summit last week where I could have asked the developers directly about it!&lt;/SPAN&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 15 Mar 2019 15:56:52 GMT</pubDate>
      <guid>https://community.esri.com/t5/python-questions/what-can-i-expect-from-arcpy-geometry-equals/m-p/495982#M38942</guid>
      <dc:creator>DarrenSmith</dc:creator>
      <dc:date>2019-03-15T15:56:52Z</dc:date>
    </item>
    <item>
      <title>Re: What can I expect from ArcPy Geometry .equals method?</title>
      <link>https://community.esri.com/t5/python-questions/what-can-i-expect-from-arcpy-geometry-equals/m-p/495983#M38943</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;If you have active support this is certainly a reasonable question to ask through an incident request. If you find out, please add to this thread, I am curious what their answer would be!&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sun, 24 Mar 2019 03:13:34 GMT</pubDate>
      <guid>https://community.esri.com/t5/python-questions/what-can-i-expect-from-arcpy-geometry-equals/m-p/495983#M38943</guid>
      <dc:creator>curtvprice</dc:creator>
      <dc:date>2019-03-24T03:13:34Z</dc:date>
    </item>
    <item>
      <title>Re: What can I expect from ArcPy Geometry .equals method?</title>
      <link>https://community.esri.com/t5/python-questions/what-can-i-expect-from-arcpy-geometry-equals/m-p/495984#M38944</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;I haven't noticed any change in representation of a 'result' as per my previous post&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;A _jive_internal="true" class="link-titled" href="https://community.esri.com/thread/230257-what-can-i-expect-from-arcpy-geometry-equals-method#comment-838244" title="https://community.esri.com/thread/230257-what-can-i-expect-from-arcpy-geometry-equals-method#comment-838244"&gt;https://community.esri.com/thread/230257-what-can-i-expect-from-arcpy-geometry-equals-method#comment-838244&lt;/A&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;The only time that this appears to be the case is when the geometries are first being created (my initial post) and not when a result of a geoprocessing operation has occurred (ie an intersection of two lines).&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sun, 24 Mar 2019 13:35:34 GMT</pubDate>
      <guid>https://community.esri.com/t5/python-questions/what-can-i-expect-from-arcpy-geometry-equals/m-p/495984#M38944</guid>
      <dc:creator>DanPatterson_Retired</dc:creator>
      <dc:date>2019-03-24T13:35:34Z</dc:date>
    </item>
  </channel>
</rss>

