I would like to simplify a polygon shapefile where the resulting output has a minimum distance of 5 kilometres between the new vertices.

We have ArcMap 10 on an ArcView license, FME and QGIS.

I have tried the generaliser transformer in FME using NURBfit smoothing and set the segment length to 5km but it still created vertices within that distance.


The image attached below shows what an order can can look like. So there can't be a vertex within 5km of another vertex.

We would like to be able to generalise multiple shapefiles so there are no vertices within 5km of each other, and without using a bounding box as that would include areas where we don't want.

enter image description here

| improve this question | | | | |
  • 1
    What do you mean by "a minimum distance of 5 kilometres"? Maybe you meant the max offset between the source vertex and the newly created after generalization? – Alex Tereshenkov Feb 3 '15 at 11:47
  • 1
    Hello, I've just updated the original question with an image to try and better explain what we are trying to achieve. – MattEnvSys Feb 3 '15 at 13:29
  • What if the source polygon has vertices that are closer than 5 km? Could you please describe the use case for this kind of requirement, I am still having a hard time understanding why would need to generalize the polygons this way. Maybe we can find another easier and more efficient approach. – Alex Tereshenkov Feb 3 '15 at 18:31

Assuming I'm understanding the question correctly, this can be easily achieved using FME and the Generaliser transformer. If you use the "Thin" (or maybe "ThinNoPoint" depending on your use-case).

This will remove any points that are more than 5km from the next.


Says of Thin:

The Thin algorithm will remove vertices that are less than the Generalization Tolerance distance away from an adjacent vertex. The begin and end points are never moved, unless the entire length of the feature being thinned is less than the tolerance, in which case the feature is replaced by a point feature holding the final coordinate.

| improve this answer | | | | |

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.