Skip to main content

Hi Community!

 

I was wondering if anyone had an idea of why I am getting different values for polygonal areas when calculated in FME using AreaCalculator vs the SHAPE_Area attribute of an ESRI feature class?

The geometry I am working with enters the workbench with a defined projected coordinate system (DUB-DTLM) from a dwg file and the feature dataset in which the destination feature class resides is also in DUB-DTLM.

The discrepancies are minor (at the 3rd decimal place in sqm) but nonetheless have the potential to cause issues.

Interestingly, when the features are interrogated in Map3D, they show the same area as is calculated in FME.

Any explanation (or even hint!) as to the cause of the difference would be much appreciated.

I think the differences can be either two things:

1. The accuracy with which the calculation is executed; or

2. The library that is being used to calculate the areas.

I hope this helps.


Another difference: SHAPE_AREA is an attribute that only gets updated in ESRI software and is static as soon as you read it in FME.

The AreaCalculator calculates the value at the moment the transformer is used.


Another difference: SHAPE_AREA is an attribute that only gets updated in ESRI software and is static as soon as you read it in FME.

The AreaCalculator calculates the value at the moment the transformer is used.

Thanks for the reply.

I see what you mean, but I don't think that is the explanation: I am writing to the ESRI file geodatabase, so the SHAPE_Area attribute is only created at that point. The AreaCalculator is the last transformer I use in the workbench, so the data is not undergoing any other transformations prior to writing.


I think the differences can be either two things:

1. The accuracy with which the calculation is executed; or

2. The library that is being used to calculate the areas.

I hope this helps.

Thanks for the reply Lars.

I wondered if you might know any more detail on your responses:

1.Do you know to what accuracy the two calculations are performed, and is there any way I can change that?

2. Do you know which libraries are used for the calculations?

 

I've had a brief look through the documentation on both, but couldn't find anything specific.

 

Thanks


Thanks for the reply Lars.

I wondered if you might know any more detail on your responses:

1.Do you know to what accuracy the two calculations are performed, and is there any way I can change that?

2. Do you know which libraries are used for the calculations?

 

I've had a brief look through the documentation on both, but couldn't find anything specific.

 

Thanks

Unfortunately I cannot answer your questions. Perhaps someone at the dev-team of Safe can help you finding the right answer.


Thanks for the reply.

I see what you mean, but I don't think that is the explanation: I am writing to the ESRI file geodatabase, so the SHAPE_Area attribute is only created at that point. The AreaCalculator is the last transformer I use in the workbench, so the data is not undergoing any other transformations prior to writing.

That means that the SHAPE_AREA is calculated after writing to File Geodatabase. Most ESRI databases have a tolerance setting for coordinates (limiting the number of decimals) which could mean that the calculation of SHAPE_AREA gets a slightly different value.


Hi, this is interesting, I’m stucked at the same issue. 

I need to do a change detection on geometry, and since there is a slightly difference between the area, everything is deleted and added. 

Anyone found a workaround over the last 5 years?


Hi, this is interesting, I’m stucked at the same issue. 

I need to do a change detection on geometry, and since there is a slightly difference between the area, everything is deleted and added. 

Anyone found a workaround over the last 5 years?

I am currently using centerpoints for my change detection. I calculate the center of gravity point of each polygon and save the XY coordinates in two columns. I then recalculate the center of gravity point and compare the new XY coordinates with the old ones.

 


Reply