Circular polygons created in ArcSDE Geodatabase

564
2
11-19-2019 08:27 PM
AdminNCCMA
New Contributor II

Hi,

I have a polygon feature class within an ArcSDE Geodatbase.

Within ArcMap I have created a polygon using the Circle edit tool.

I am now accessing the data within SQL Server 2017.

My question is can I programmatically identify that this polygon is a Circle within SQL server?

I can obviously identify the feature with statements such as:

SELECT Shape.STGeometryType();  RETURNS Polygon

SELECT Shape.STAsText();  RETURNS POLYGON ((2423859.4153780821 2495265.7907268363, 2423859.4101329744 2495265.7907232433,.....)) plus many more vertices.

But these don't delve into the feature geometry detail I require.

I would like to dig deeper and identify that the feature is circular and contains curves.

The primary reason I ask is I have another feature class with thousands of records and some of them are circular polygons. Once I identify them I intend on cleaning them up (simplifying to envelopes and deleting where possible) to improve performance on our various clients.

Any help would be appreciated.

Thanks,

Pat

Tags (2)
0 Kudos
2 Replies
JoshuaBixby
MVP Esteemed Contributor

If you are going to work with EGDB data outside of Esri products, I suggest you learn about the EGDB structure in SQL Server.  You can start with Enterprise geodatabase system tables—Manage geodatabases in SQL Server | ArcGIS Desktop .

For your specific question, read the sections from Outside ArcGIS and down in SQL Server spatial types and ArcGIS—Manage geodatabases in SQL Server | ArcGIS Desktop 

AdminNCCMA
New Contributor II

Thanks Josh.

I was aware of the addition of the gdb_geomattr_data column (when we upgraded to 10.6.1) which stores additional geometric elements. In regards to this column I note the ESRI link you provided provided states:

The additional geometric elements include the following:

  • Parametric objects such as circular arcs and Bezier curves created with advanced editing tools
  • PointIDs
  • Multipatch features
  • Surface patches from ArcGIS Spatial Analyst extension

I am hoping to use this column to identify additional elements such as the circular arcs/curves within the polygons I am targeting. But with this column being VARBINARY type - I am not sure how to uncover the circular arcs/curves. Any ideas on a specific SQL query that might do this?

0 Kudos