<?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 Negative Area? in ArcGIS API for Silverlight Questions</title>
    <link>https://community.esri.com/t5/arcgis-api-for-silverlight-questions/negative-area/m-p/111097#M2766</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Bear with me, I am a developer who just recently started working with a GIS API. I also looked at &lt;/SPAN&gt;&lt;A class="jive-link-external-small" href="http://forums.arcgis.com/threads/14730-Area-And-Perimeter" rel="nofollow" target="_blank"&gt;this thread&lt;/A&gt;&lt;SPAN&gt; but that didnt help at all even though the problem seems similar.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;I am using version 3.0 of the Silverlight API:&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;I am trying to get the area of a polygon. In our software there is already functionality to get the perimeter/length in feet, which appears to be working correctly:&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;PRE class="plain" name="code"&gt;&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; //converts points to WGS84 (WKID=4326) and then does math on converted points &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; private double CalcWorldLength(MapPoint pt1, MapPoint pt2) &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; WebMercator web = new WebMercator(); &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; MapPoint wgsPt1 = (MapPoint)web.ToGeographic(pt1); &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; MapPoint wgsPt2 = (MapPoint)web.ToGeographic(pt2); &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; double[] ppt1 = ProjectPoint(wgsPt1.X, wgsPt1.Y); &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; double[] ppt2 = ProjectPoint(wgsPt2.X, wgsPt2.Y); &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; double ret = Math.Round(Math.Abs(Math.Pow((Math.Pow((ppt2[0] - ppt1[0]), 2) + Math.Pow((ppt2[1] - ppt1[1]), 2)), .5))); &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return ret; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/PRE&gt;&lt;DIV style="display:none;"&gt; &lt;/DIV&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;I am trying to add functionality to get the area of a polygon, but I routinely get incorrect values for the area, and even length. I have tried getting the area and length by incorporating the example &lt;/SPAN&gt;&lt;A class="jive-link-external-small" href="http://help.arcgis.com/en/webapi/silverlight/samples/start.htm#AreasAndLengths" rel="nofollow" target="_blank"&gt;Area and Perimeter&lt;/A&gt;&lt;SPAN&gt;:&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;PRE class="plain" name="code"&gt;geometryService.AreasAndLengthsAsync(graphicList, ESRI.ArcGIS.Client.Tasks.LinearUnit.Foot, ESRI.ArcGIS.Client.Tasks.LinearUnit.Foot,CalculationType.Geodesic);&lt;/PRE&gt;&lt;DIV style="display:none;"&gt; &lt;/DIV&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt; but I found that the answer is consistently off in both area and length by a particular ratio (unit values being returned are always ~1.35x bigger than they should be).&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;I also tried using the function "ESRI.ArcGIS.Client.Geometry.Euclidian.Area", but I keep getting back relatively small or negative numbers. I am passing the function a polygon in the spatial Reference of 4326 (WKID).&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Any ideas?&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Thu, 17 Jan 2013 19:28:16 GMT</pubDate>
    <dc:creator>PhilipKnight1</dc:creator>
    <dc:date>2013-01-17T19:28:16Z</dc:date>
    <item>
      <title>Negative Area?</title>
      <link>https://community.esri.com/t5/arcgis-api-for-silverlight-questions/negative-area/m-p/111097#M2766</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Bear with me, I am a developer who just recently started working with a GIS API. I also looked at &lt;/SPAN&gt;&lt;A class="jive-link-external-small" href="http://forums.arcgis.com/threads/14730-Area-And-Perimeter" rel="nofollow" target="_blank"&gt;this thread&lt;/A&gt;&lt;SPAN&gt; but that didnt help at all even though the problem seems similar.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;I am using version 3.0 of the Silverlight API:&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;I am trying to get the area of a polygon. In our software there is already functionality to get the perimeter/length in feet, which appears to be working correctly:&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;PRE class="plain" name="code"&gt;&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; //converts points to WGS84 (WKID=4326) and then does math on converted points &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; private double CalcWorldLength(MapPoint pt1, MapPoint pt2) &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; WebMercator web = new WebMercator(); &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; MapPoint wgsPt1 = (MapPoint)web.ToGeographic(pt1); &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; MapPoint wgsPt2 = (MapPoint)web.ToGeographic(pt2); &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; double[] ppt1 = ProjectPoint(wgsPt1.X, wgsPt1.Y); &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; double[] ppt2 = ProjectPoint(wgsPt2.X, wgsPt2.Y); &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; double ret = Math.Round(Math.Abs(Math.Pow((Math.Pow((ppt2[0] - ppt1[0]), 2) + Math.Pow((ppt2[1] - ppt1[1]), 2)), .5))); &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return ret; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/PRE&gt;&lt;DIV style="display:none;"&gt; &lt;/DIV&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;I am trying to add functionality to get the area of a polygon, but I routinely get incorrect values for the area, and even length. I have tried getting the area and length by incorporating the example &lt;/SPAN&gt;&lt;A class="jive-link-external-small" href="http://help.arcgis.com/en/webapi/silverlight/samples/start.htm#AreasAndLengths" rel="nofollow" target="_blank"&gt;Area and Perimeter&lt;/A&gt;&lt;SPAN&gt;:&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;PRE class="plain" name="code"&gt;geometryService.AreasAndLengthsAsync(graphicList, ESRI.ArcGIS.Client.Tasks.LinearUnit.Foot, ESRI.ArcGIS.Client.Tasks.LinearUnit.Foot,CalculationType.Geodesic);&lt;/PRE&gt;&lt;DIV style="display:none;"&gt; &lt;/DIV&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt; but I found that the answer is consistently off in both area and length by a particular ratio (unit values being returned are always ~1.35x bigger than they should be).&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;I also tried using the function "ESRI.ArcGIS.Client.Geometry.Euclidian.Area", but I keep getting back relatively small or negative numbers. I am passing the function a polygon in the spatial Reference of 4326 (WKID).&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Any ideas?&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 17 Jan 2013 19:28:16 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-api-for-silverlight-questions/negative-area/m-p/111097#M2766</guid>
      <dc:creator>PhilipKnight1</dc:creator>
      <dc:date>2013-01-17T19:28:16Z</dc:date>
    </item>
    <item>
      <title>Re: Negative Area?</title>
      <link>https://community.esri.com/t5/arcgis-api-for-silverlight-questions/negative-area/m-p/111098#M2767</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;BLOCKQUOTE class="jive-quote"&gt;but I found that the answer is consistently off in both area and length by a particular ratio (unit values being returned are always ~1.35x bigger than they should be).&lt;/BLOCKQUOTE&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;To get accurate results, you have better to use Equal Area Projection such as WKID 54034.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Your result is likely due to the Web Mercator distorsion which is 1/cos(latitude).&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;That being said, the best approach is likely to use the built-in &lt;/SPAN&gt;&lt;A class="jive-link-external-small" href="http://help.arcgis.com/en/webapi/silverlight/apiref/ESRI.ArcGIS.Client~ESRI.ArcGIS.Client.Geometry.Geodesic.html" rel="nofollow" target="_blank"&gt;geodesic methods&lt;/A&gt;&lt;SPAN&gt;.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;This method should return accurate results when your input in in geographical coordinates and is Superior to the Euclidian method that you tested.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Note that a negative value is normal if your polygon is oriented in a counter clock wise direction.&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 18 Jan 2013 06:08:44 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-api-for-silverlight-questions/negative-area/m-p/111098#M2767</guid>
      <dc:creator>DominiqueBroux</dc:creator>
      <dc:date>2013-01-18T06:08:44Z</dc:date>
    </item>
    <item>
      <title>Re: Negative Area?</title>
      <link>https://community.esri.com/t5/arcgis-api-for-silverlight-questions/negative-area/m-p/111099#M2768</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;BLOCKQUOTE class="jive-quote"&gt;To get accurate results, you have better to use Equal Area Projection such as WKID 54034.&lt;BR /&gt;Your result is likely due to the Web Mercator distorsion which is 1/cos(latitude).&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;That being said, the best approach is likely to use the built-in &lt;A href="http://help.arcgis.com/en/webapi/silverlight/apiref/ESRI.ArcGIS.Client~ESRI.ArcGIS.Client.Geometry.Geodesic.html"&gt;geodesic methods&lt;/A&gt;.&lt;BR /&gt;This method should return accurate results when your input in in geographical coordinates and is Superior to the Euclidian method that you tested.&lt;BR /&gt;&lt;BR /&gt;Note that a negative value is normal if your polygon is oriented in a counter clock wise direction.&lt;/BLOCKQUOTE&gt;&lt;BR /&gt;&lt;SPAN&gt; &lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Thank you so much for the relatively quick reply! I will try out your advice.&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 18 Jan 2013 11:22:15 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-api-for-silverlight-questions/negative-area/m-p/111099#M2768</guid>
      <dc:creator>PhilipKnight1</dc:creator>
      <dc:date>2013-01-18T11:22:15Z</dc:date>
    </item>
  </channel>
</rss>

