Solved

GeometryRefiner - Convert single points incorrectly stored as multipoint to point

  • 22 December 2016
  • 2 replies
  • 19 views

Badge +7

I'm reading an FGDB point feature class containing single points but the geometry type has been incorrectly set as "multipoint". I thought I would need to fix this in my Workspace as I'm then sending the data to FeatureMerger to compare (attributes & geometry) against an older version of the data where the geometry type is set correctly as "point".

So I used GeometryRefiner which appears to output the "multipoint" features as "point" features.

However, FeatureMerger doesn't seem to need this. It produces the same results without using GeometryRefiner as it does with it. Happy days.

Maybe Matcher would be less tolerant and GeometryRefiner would be needed there...?

icon

Best answer by fmelizard 23 December 2016, 22:19

View original

2 replies

Userlevel 4
Badge +13

FeatureMerger doesn't actually ever compare geometries -- it combines features that have a matching key. The Matcher is what you want if you are truly comparing things, but it will differentiate aggregates vs. non. But if you put a GeometryRefiner in there, it will turn the single point "multi"points into normal points and all is well. See attached workspace: pointaggregatematch.fmw

Badge +7

FeatureMerger doesn't actually ever compare geometries -- it combines features that have a matching key. The Matcher is what you want if you are truly comparing things, but it will differentiate aggregates vs. non. But if you put a GeometryRefiner in there, it will turn the single point "multi"points into normal points and all is well. See attached workspace: pointaggregatematch.fmw

Thanks Dale, I'll check out your FMW.

 

I think what I meant was that when I use FeatureMerger (joining on an ID field), I select "Attributes and Geometry" as the Merge Type. I'm pretty sure my testing showed that if a single point multi-point feature goes into FeatureMerger, it comes out as a normal point.

 

Usually what I need to do is compare 2 versions of a dataset (e.g. master data and a monthly Change Only Update - COU) where there's a common ID field, then update the dataset with the latest version of each feature. FeatureMerger is perfect for this :-)

 

Reply