Skip to main content
Question

Give polygons attributes from nearby text


Forum|alt.badge.img

I have a CAD file with polygons representing areas of landscaping which I am going to export as a shape file after some manipulating. These polygons have multileaders with an area reference (as text) pointed towards them, and I am trying to give the polygons this text value. I would've liked to have used the Neighbor Finder transformer but the distance between the leader arrowhead and polygon isn't necessarily the same throughout.

Any suggestions would be much appreciated.

Katie

4 replies

erik_jan
Contributor
Forum|alt.badge.img+19
  • Contributor
  • November 3, 2017

You could use the leader lines to move the text point into the polygon (CoordinateExtracotor for extracting start and end of leader line, ExpressionEvaluator to calculate delta X and Y and Offsetter to move the point using delta X and Y).

The use the PointonAreaOverlayer to add point (text) attributes to the polygon.


gio
Contributor
Forum|alt.badge.img+15
  • Contributor
  • November 3, 2017

You still need to overcome the gap if the arrow length is shorter then the distance to the polygon or if the arrow length is larger then the polygons bounds in the direction of the arrow, you not? (undershoot or overshoot)

I would extent the arrow (or line made of start- and end point of the arrow)

Then do a lineonarea overlayer. Overlaps>0. Then you would have the data merged. Which leaves you to estimate a extension length.

Which in fact is not much better then using a neighbourfinder on the end vertex of the arrow and the polygon.


Forum|alt.badge.img+2
  • November 3, 2017

If you have leader lines, you use these as an intermediate spatial join for the NeighborFinder. Use one Neighborfinder to match the leader line to the nearest area, then use a second NeighborFinder to match same leader line to the text. I've attached a small example workspace (2017) leaderlinesareas.fmw


gio
Contributor
Forum|alt.badge.img+15
  • Contributor
  • November 3, 2017
markatsafe wrote:

If you have leader lines, you use these as an intermediate spatial join for the NeighborFinder. Use one Neighborfinder to match the leader line to the nearest area, then use a second NeighborFinder to match same leader line to the text. I've attached a small example workspace (2017) leaderlinesareas.fmw

you create ideal environment for your workbench: no area will compete in the neighborfinder.

 

That's not realistic.

 

 

You need to do a neighbor finder to the head of the arrow, which should be the end node of the line.

 

Then hope that the gap between arrow and polygon is not larger then some nearby polygon is near...

 

 

Is there a transformer called "hope" yet? ;)

 

 

Even using line extension (as i previously suggested) will often not entirely save us. For instance parcel maps are seamless. An arrow pointing to a parcel will cross more then 1 parcel.

 

Obviously neighborfinding on such a map will fail.

 

 

 


Cookie policy

We use cookies to enhance and personalize your experience. If you accept you agree to our full cookie policy. Learn more about our cookies.

 
Cookie settings