Skip to main content
Question

Change detection - how to measure geometry change between original and revised

  • August 12, 2026
  • 2 replies
  • 11 views

j.botterill
Evangelist
Forum|alt.badge.img+62

Hi brains trust!

Does anyone know how to determine how 2 x polygon geometry might change being passed into Change Detector original vs revised. 

I’ve set Check Geometry with the parameters to be lenient and using 1.5m tolerance for example

I know how to explain the change list, exploding and keeping these attribute

geometryObject has changed, but how much
  1. I had considered extracting the geometry of orig and revised to an attribute, then passing it into AreaOnAreaOverlayer?
  2. GeometryExtractor / Clipper arrangement

  3. Calculating the area to attribute and comparing differences in attribute values

  4. I’m trying to see if Geometry Concepts traits can be used here?

Any thoughts?

2 replies

s.jager
Influencer
Forum|alt.badge.img+26
  • Influencer
  • August 12, 2026

Interesting challenge!

One thing to watch out for when using the area-method, is that there is a possibility that the vertices have changed position in such a way that the area does not change, or changes minimally. That is usually an exception, but I’ve seen it happen. So calculating area alone is not something I would rely on.

Another approach might be to explode all the vertices into separate points, then compare those (using Group By on the polygon ID). There should be at least one or two that do not match, so then you know where the change has happened.

But I think I’d start experimenting with either the Clipper or the AreaOnAreaOverlayer. Of course it depends on why and how you need to know where a change has happened as well. Different methods have different advantages (the point-method would be good for reporting visually, the area-method would be better for subsequent calculations I think - but it really depends on what the underlying information request is...).

Interested to see what others come up with :-)


redgeographics
VIP
Forum|alt.badge.img+63

I’ve had this discussion with a client a while ago regarding 2 datasets containing buildings that have some interesting differences. 

Dataset A shows the building footprint (i.e. the part touching the ground), dataset B shows the top-down view (so including overhanging balconies and stuff). They have to be within a certain tolerance of eachother.

We started by comparing the difference in area, if it was more than x% different we would flag it for human checking, if it was lower than that we’d look at the individual points. If the closest B neighbor to a point in A was more than y cm away we would again flag it as an error. This was not helped by the fact B might have unnecessary extra vertices.