Skip to main content
Question

adding points to the line


fme_can_do_it
Enthusiast
Forum|alt.badge.img+9

Hi, I have a task in which I have station values attached to the line. I need to select station values and split the line at the station points. Some station points are easy to split; for example, 1789+00, but others, like 1201+50, are not that simple. I am trying to create points between two station points. I want to place points 10 ft apart and calculate station values so that I can split the line at those values. I have attempted to generate points between two station values using the Densifier transformer, but I am not achieving the desired outcome. If someone can assist me in this situation, I would greatly appreciate it.

5 replies

raghavendrans
Contributor
Forum|alt.badge.img+9

@fme_can_do_it Can you provide more details such as the format, how are the station values are attached to the line?

You can try looking at DistanceChopper on the FME Hub, which chops lines or polygons into lines of the specified length.

Another transformer to consider would be LineDivider, which divides a line into multiple lines. Resulting lines and/or points which separate the lines will be output.

Chopper transformer also has the option to chop by length.

Happy FME:-)

SRG

 

 


fme_can_do_it
Enthusiast
Forum|alt.badge.img+9
  • Author
  • Enthusiast
  • April 30, 2025

@raghavendransI need to add points between two station points and subsequently split the lines at these station points. For example, I have two stations: 74+00 and 76+00. I want to create points at 10-foot intervals between these two stations, so that I can split the line wherever the station values fall within that range.


philipwhitten
Contributor
Forum|alt.badge.img+11

I am struggling to understand or picture the problem.  Do you have a line where the vertices are called “station values” with values like 1789 and 1201?  Then, do you sometimes need to identify a location on the line that is an offset distance from a particular vertex - that is the staoin point 1201+50 is located 50 ft along the line past the vertex with the value 1201?  If so, a different approach could be:

  1. creating a point feature from the original line with a vertex at 1201, and, create a new line segment between the current station value of 1201 and the next station value (for a positive set distance).
  2. buffering this point with the distance (e.g. 50 ft) to create a circle
  3. using the intersector to locate the intersection between the new line segment and the circle - this should give you the location to split your original line. With FME you could do this via attributes for each station point with an offset value.

maddiegiles
Contributor
Forum|alt.badge.img+6

I've had great success when using the DistanceMarker transformer https://hub.safe.com/publishers/safe-lab/transformers/distancemarker

I was doing a similar thing, where I wanted to split lines at a specific distance.

  • I calculated the length of the original line
  • The desired length (in your case 10ft) which i had as a user parameter
  • Calculated how many times a line would be split rounded to 0dp (OG_length/user parameter)
  • Then created a new attribute as the length for the distance marker so it would be dynamic (OG_length/number of segments)

The output of the distance marker is points, which you can then use with a PointOnLineOverlayer to split the original line(s).

 

Hope that helps


fme_can_do_it
Enthusiast
Forum|alt.badge.img+9

@philipwhitten 

The line vertices do not include station values; these values are provided separately and are near the line. We often get requests to use these values for splitting lines, such as from 1942+10 to 1941+40. I need to find the station value, measure the distance, and then split the line.

 

To automate this process,

  1. I connected the lines and points using the NeighborFinder Transformer. 2.I then sent the output to the vertex creator to snap the points to the closest line.
  2. With two known station values, I used the LineBuilder to create a line segment.
  3. Next, I connected this to the Line Divider Transformer to generate points every 10 feet. I now need to calculate the station values needed to get from 1988+20 to 1988+40 for splitting the original line.

 

I am stuck on how to calculate these station values. After getting these values, I also need to figure out how to split the line at these points 1988+20 to 1988+40.I have attached a screenshot where I showed the generated points and added manual labels.


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