# How can I calculate the center point inside a polygon in ArcGIS 9.3?

I'm using the JavaScript API 1.6 on ArcGIS 9.3. I have a polygon geometry in an ArcGIS map, and I'm trying to find a way to get the point that lies in the exact center of the geometry. What is the best way to do this?

Thanks!

-

Each instance of geometry (esri.geometry.Geometry) has a method called getExtent() which returns the extent of the geometry (polygon in your example). esri.geometry.Extent has a method called getCenter() that returns a point.

So you could do something like:

``````var myPolygonCenterLatLon = myPolygon.getExtent().getCenter();
``````

You could alternatively calculate the centroids to polygons beforehand in ArcMap. Then host the layer which has a one-to-one relationship with the polygons.

-
That will only calculate the center of the extent, and not the center of the actual polygon. Additionally, the center of the extent may not actually fall in the polygon. – Sasa Ivetic Mar 31 '11 at 18:28
If you're referring to my first solution, yes. But that might not matter. – CaptDragon Mar 31 '11 at 18:31
This is what I'm looking for - thanks! – AndyGeek Apr 1 '11 at 14:27
This answer does not guarantee a the point fall inside a circle or U shape polygon. – Zhenyang Hua Jul 21 at 19:48

You could set up a model in Model Builder to use the Feature to Point tool (in ArcToolbox), export the script (JScript), and call it in your code.

-

This an updated version (2.2 Javascript API)

This example finds the centre point of the polygon to label the coordinates

http://help.arcgis.com/en/webapi/javascript/arcgis/demos/util/util_label_point.html

This uses the Geometry Service http://webhelp.esri.com/arcgisserver/9.3/dotNet/index.htm#geometry_service.htm

-