Geoprocessing: Geometry Field updates

5735
13
03-09-2014 03:36 PM
CraigEissler
New Contributor III
After Geoprocessing (trying various Tools) I notice that sometimes the Geometry Fields (Area, Length, etc.) are automatically updated for the new Feature record and sometimes they are not. ...Why is this?

Is there some concept to understand or List that explains which types of Tools provide these geometry updates and which do not?

Thanks!
0 Kudos
13 Replies
CraigEissler
New Contributor III
...Ok, I'm going to partially answer my own question.
First f all, my data is projected, so that's not the reason. I read now that the reason is because these are ArcGIS managed fields.

Ok so now I'm back to my original dilemma ;-/

It seems if I'm working with Shapefiles (which I will now try to avoid like the plague) I will have to make a pseudo-copy of those Fields and Calculate Geometry and just know that those original ArcGIS Geometry Fields are bogus from here on out. And my new User-defined Geometry Fields will potentially be bogus in the future if I do further geo-processing.

And if I'm working with Geodatabases, I will only need to do the same "if" I desire to see geometry values in different units. My original ArcGIS Geometry Fields will be dynamically valid with potential future geoprocessing, but my User-defined Fields will have the same behavior as they would in a Shapefile as described above.

Sound correct, ...finally? 😉
0 Kudos
CraigEissler
New Contributor III
haha, now I'm answering my own question again!

It looks to me like you CAN edit (Calculate Geometry for) a Shapefile's ArcGIS-managed Geometry Fields, but you CANNOT edit (Calculate Geometry for) a Geodatabase Feature Class.

...So now the Shapefile doesn't sound quite as bad as the plaque, but the Geodatabase still has the advantage of having "valid"  ArcGIS-managed Geometry Fields, even though they may not be the Units you desire. ...In other words, square feet and square meters are are pretty small units for covering large areas.
0 Kudos
RichardFairhurst
MVP Honored Contributor
haha, now I'm answering my own question again!

It looks to me like you CAN edit (Calculate Geometry for) a Shapefile's ArcGIS-managed Geometry Fields, but you CANNOT edit (Calculate Geometry for) a Geodatabase Feature Class.

...So now the Shapefile doesn't sound quite as bad as the plaque, but the Geodatabase still has the advantage of having "valid"  ArcGIS-managed Geometry Fields, even though they may not be the Units you desire. ...In other words, square feet and square meters are are pretty small units for covering large areas.


That is correct.  If you want other units create your own double field and calculate it to the units you want as a static value.  I never use shapefiles as a matter of sanity.  They perform horribly and I tell everyone to stop using them.

Also, in a geodatabase feature class if you have to calculate your own units in a static field and know the conversion factor you can find all of the outdated values with a simple SQL query against the native length field.  I.e,

ABS(Length_Miles - Shape_Length / 5280) > .001

This find all values where the shape length has changed by more than 1/1000th of a mile if my native units are in feet.  Then you can just recalculate the Miles field for these records that changed over your tolerance and don't have to recalculate everything.  This is also a good way of making sure you have posted date stamps to all of the recent changes if you do that.  Shapefiles cannot do this.  You have to calculate every feature every time to be sure you are fully up to date on any field tracking geometry and cannot detect just the changes for date stamping.
0 Kudos
CraigEissler
New Contributor III
OK great -- I got it now
Thanks for all your help!
0 Kudos