Solved

Join by attribute by only when two features intersects

  • 16 October 2017
  • 5 replies
  • 30 views

Badge

Hi guys,

I have two feature classes here one is points and another is polygon. The rule i want to apply is to only let them join by attribute when the point intersects with polygons.

Both feature classes are land ownership data hence both of them would have features with same geometry but different attribute (lot number, unit number and etcs)

I am thinking to use database joiner to join the table but does anyone knows how i can apply the rule to only let intersected feataures to be joined?

Thanks!

icon

Best answer by takashi 16 October 2017, 08:38

View original

5 replies

Userlevel 2
Badge +17

Hi @sangli, if you need to merge attributes of a feature from one feature class to other feature(s) from another feature class based on their spatial relationships, you can use the SpatialRelator transformer in general. If you want to merge attributes of a polygon to points within the polygon, the Clipper could also be used efficiently.

Badge

Hi @sangli, if you need to merge attributes of a feature from one feature class to other feature(s) from another feature class based on their spatial relationships, you can use the SpatialRelator transformer in general. If you want to merge attributes of a polygon to points within the polygon, the Clipper could also be used efficiently.

Thanks @takashi :)

 

What I want to do is not merging the attribute but join two feature classes by attribute based on one field, when they intersects each other.. (for both feature classes there are often more than one features has the same location)..
Badge

Sorry not sure if i explained clear enough or not.

The two datasets that I am working on are:

feature class A: Point, has spatially duplicated records with different attribute

feature class B: Polygon, has spatially duplicated records with different attribute

the rules I want to apply is:

When feature class A intersect feature class B, join the table from B to A based on common feature attribute.

This common feature attribute is unique for each location but not for the whole dataset.

Userlevel 2
Badge +17

Sorry not sure if i explained clear enough or not.

The two datasets that I am working on are:

feature class A: Point, has spatially duplicated records with different attribute

feature class B: Polygon, has spatially duplicated records with different attribute

the rules I want to apply is:

When feature class A intersect feature class B, join the table from B to A based on common feature attribute.

This common feature attribute is unique for each location but not for the whole dataset.

So, the Clipper doesn't help you?

 

  • Send the polygons (B) to the Clipper port, send the points (A) to the Clippee port.
  • Set the common attribute to the Group By parameter.
  • Check the Merge Attributes checkbox.
The point from the Inside port will have the attributes of a polygon that has the same common attribute as the point and also spatially contains the point. Isn't it your required result?

 

Badge
So, the Clipper doesn't help you?

 

  • Send the polygons (B) to the Clipper port, send the points (A) to the Clippee port.
  • Set the common attribute to the Group By parameter.
  • Check the Merge Attributes checkbox.
The point from the Inside port will have the attributes of a polygon that has the same common attribute as the point and also spatially contains the point. Isn't it your required result?

 

Thank you again Takashi I didn't thought about using the group by parameter option.. yes that's perfectly sovled my problem!

 

Reply