Solved

point on line overlayer skip first segment.

  • 11 June 2020
  • 1 reply
  • 0 views

Badge +9

I have points with attributes and a line. I have used the point on line overlayer to break the line at each point. however there is not a point at the beginning. I assume that is why the attribute of the point is attached to the line the point is at the end of. I need to attach that attribute to the next segment of line. in other words the begin point of the broken piece would give it's attribute to the following segment.

I can think of a long way around by creating a crc with the points coords, then by getting the begin point of the broken segment and creating a crc with it but if there were any round issues it would not find it's match. Any other more elegant method anyone has used?

If i simply add a point to the beginning of the line will that offset them all to the beginning?

icon

Best answer by daveatsafe 11 June 2020, 23:27

View original

1 reply

Userlevel 2
Badge +17

Hi @gisbradokla2,

The PointOnLineOverlayer will transfer the the attributes from the first point it finds that lies on that line, to all resultant lines. If you enable the list, you will get a list of all the points that intersect the line.

I think you will get the results you want from the TopologyBuilder transformer. Set the point tolerance in Advanced - Tolerance, and enable Generate List from Input Nodes.

Each resulting line segment will have the attributes _from_node and _to_node with node ids numbers. These node ids are also in the node list as _list{}.node_number. If you want the segment to get the attribute from the point at the beginning of the segment, you can use the ListSearcher to search _list{}.node_number for _from_node.

I am attaching a simple workspace that will transfer the attribute from the point at the beginning of the segment to the line.

 

addpointattributetoline.fmw

Reply