Skip to main content
I have two polygon shapefiles that I need to spatially join. I'm trying to populate township/range/section in my dataset based on a TRS shapefile. I have it working in ModelBuilder through ArcGIS but I can't get it to correlate the same in FME Desktop.

@m_stateland​ did you try SpatialRelator? Have a look at this knowledge article on spatial joins for ideas.

If you can attach a small sample dataset someone might create a proof-of-concept workspace


@m_stateland​ did you try SpatialRelator? Have a look at this knowledge article on spatial joins for ideas.

If you can attach a small sample dataset someone might create a proof-of-concept workspace

@Mark Stoakes​ Yes I tried that. So the GCDB_TRS input does not having any blank attributes, but my output below does? I'm trying to populate the first four attributes via their spatial reference to the GCDB_TRS file, so where there are related candidates, fill in the attributes based on the file.WorkflowOutputTable


@m_stateland​ are the ASLDP and TRS features in the same coordinate system? Without sample data I'm just guessing.


@m_stateland​ are the ASLDP and TRS features in the same coordinate system? Without sample data I'm just guessing.

@Mark Stoakes​ Yes they are both in the same coordinate system. I have attached a sample of the ASLD and the TRS areas related to them. Thank you for your help!


Use a center point replacer and intersect using a point on area overlay. After that, merge them back together using a feature merger with the unique ID to get the polygons. I very rarely use the spatial relator due to the speed difference with simply converting them to points.

 

Reference my @jlbaker2779​  in future questions if you have other questions related to lease mapping. I've dealt with the legal description polys quite a bit and have mapped hundreds of thousands of the descriptions in FME. I actually made my own lease mapper in FME that maps tens of thousands of descriptions per minute vs the hand mapping with Parcel Edit Tools or similar software. :D


@m_stateland​ Thanks for attaching the data. The issue is that your boundaries do not match exactly. SpatialRelator is very exacting, so if you use the 'Within' predicate and the boundaries cross, even very slightly, the test will fail. If you use 'Intersects' then you might pickup the neighbouring TRS as well (getting two matches). So you have two options:

  • clean the data to make sure the edges match then use SpatialRelator with a 'Within' predicate
  • replace the ASLD features with an inside point and then do the spatial join with either SpatialRelator or PointOnAreaOverlayer.

I think I'd lean to the second option using PointOnAreaOverlayer.

workspace 

I've attached an example workspace (FME 2020.2.2)

(actually you could use a single Snapper instead of the two AnchorSnapper's)


Use a center point replacer and intersect using a point on area overlay. After that, merge them back together using a feature merger with the unique ID to get the polygons. I very rarely use the spatial relator due to the speed difference with simply converting them to points.

 

Reference my @jlbaker2779​  in future questions if you have other questions related to lease mapping. I've dealt with the legal description polys quite a bit and have mapped hundreds of thousands of the descriptions in FME. I actually made my own lease mapper in FME that maps tens of thousands of descriptions per minute vs the hand mapping with Parcel Edit Tools or similar software. :D

Thank you so much


@m_stateland​ Thanks for attaching the data. The issue is that your boundaries do not match exactly. SpatialRelator is very exacting, so if you use the 'Within' predicate and the boundaries cross, even very slightly, the test will fail. If you use 'Intersects' then you might pickup the neighbouring TRS as well (getting two matches). So you have two options:

  • clean the data to make sure the edges match then use SpatialRelator with a 'Within' predicate
  • replace the ASLD features with an inside point and then do the spatial join with either SpatialRelator or PointOnAreaOverlayer.

I think I'd lean to the second option using PointOnAreaOverlayer.

workspace 

I've attached an example workspace (FME 2020.2.2)

(actually you could use a single Snapper instead of the two AnchorSnapper's)

Thank you thank you!!!


Reply