I have fought with this task for quite sometime now and have finally decided to release myself of the anxiety that I may not come up with the answer I need before I get recommended for Janitorial duty at my company. I have an advanced license in Arcgis Pro/Desktop: I have to take all of our client's Railroad Centerline (One, Single, Continuous Line, that I have created as a SHAPEFILE/LINE in the desktop's software, and "Interpolate" distances between certain "Mile Post Numbers (MP)." In the older days these MP's were measured "BY COUNTING STEPS" at 1 mile intervals along said Railroad track (Our Centerline). Using today's technology, I can see that each Mile Post Marker (MP), at "1 mile intervals" along this track, has a different measurement value of distance because of the way they stepped the miles out. Sometimes 1.3 miles, sometimes 0.75 miles (Ex. Mp 64.00 is 1.3 miles away from MP 65.00 while at the same time MP 63.00 is 0.75 miles away from MP 64.00). I NEED TO TAKE THAT RR CENTERLINE THAT I CREATED, ADD THE "KNOWN MILE POST MARKERS" WE FOUND IN THE FIELD TO THAT "RR CENTER LINE" THAT I CREATED AS A REFERENCE, THEN SEGMENT/INTERPOLATE THE DISTANCE BETWEEN EACH MILE POST MARKER SO THAT EACH 1 MILE SEGMENT CAN BE BROKEN DOWN INTO 0.02 FRACTIONS/DISTANCE MILES (REGARDLESS OF HOW FAR THEY TRULY ARE IN REAL LIFE (i.e. 1.3 miles shown as 1 mile). AFTER SEGMENTING THE LINE INTO FRACTIONS OF DISTANCE, I CAN THEN REFERENCE ALL POINTS AND ROAD CROSSINGS TO AUTOMATICALLY FILL IN THE APPROPRIATE DISTANCES (MP NUMBERS) BECAUSE THEY DO NOT HAVE THAT DATA . I NEED TO INTERPOLATE EACH 1 MILE MP TO MP MARKER SEGMENT SO I CAN USE THE LINE FOR THE MP DATA REFERENCE LATER.....SO BASICALLY I NEED MP 64-65 TO READ 64.00, .02 .04 .06 .08, AND THEN MP 65.00 ALL OF WHICH WILL BE ON THE RR'S CENTER-LINE ITSELF (OUR DISTANCE REFERENCING LINE). I HAVE TRIED USING PERCENTAGES INSTEAD OF DISTANCE IN THE "GENERATE POINTS ALONG LINE" GEO-PROCESSING TOOL. I KEEP COMING UP SHORT. I ALSO TRIED EXPORTING THE GENERATED "POINTS ALONG LINE" AND INTERPOLATING THE DISTANCES IN EXCEL BUT IT WAS NOT ACCURATE.
Hi Jarrett. Did you ever figure out how to do this? I am trying to do something similar and have no idea how to proceed. I have a railroad centerline where I too have a few marked Mile posts at road crossings , although mine are only measured to the 1/10 th of a mile.. I want to get the create a file of points between the known ones. Basicall the same as you were looking for. There must be a solution out there?
Cheers
Jim Ward
Hi Jarrett and Jim,
A bit late to the game on this one, but better late than never.
Yes, there is a reliable and accurate workflow to do exactly what you're trying to accomplish—and you're closer than you think.
To interpolate values like MP 64.02, 64.04, etc., between known mileposts (even when the real-world distances vary), the key is to convert your railroad centerline into a M-enabled route, calibrate it using your known milepost points, and then use linear referencing tools to generate and label features by milepost.
This approach mirrors how mileposts work on the ground—even if MP 64 to 65 is actually 1.3 miles long, it still counts as 1.0 milepost unit in the system.
Create a new polyline feature class with M-values enabled.
Import your single, continuous railroad centerline into it.
No need to split the line at each milepost.
Input your M-enabled centerline as the Route Feature.
Use your known milepost points as the calibration input.
These should include a Route ID and a field for the milepost value (e.g., 63.0, 64.0, etc.).
Set Measure Calculation Method to Distance.
This ensures that M-values are distributed proportionally based on actual segment lengths.
After this, your route will have M-values aligned with the milepost system—even if MP 64–65 spans 1.3 miles in the real world.
Since the Generate Points Along Lines tool uses spatial distance, not M-values, it won’t work for milepost-based spacing. Instead:
Create a simple table with:
Route ID
Measure (M-value) field — e.g., 64.00, 64.02, 64.04, … up to 65.00
Use the Make Route Event Layer tool:
Input your calibrated route and your table.
Set Event Type to POINT.
Use your Measure field to place each point at its exact M-value.
You’ll now have a dynamic layer of points at every 0.02 MP increment along the route.
Optionally, export this event layer to a permanent point feature class.
For example: road crossings, signal locations, etc.
This tool reads the calibrated route and assigns the appropriate MP value to each point feature based on its location along the route.
This workflow gives you an M-calibrated railroad centerline that matches legacy mileposts, allows precise placement of interpolated MP points like 64.02, and enables accurate milepost tagging for other features—even when physical distances between mileposts vary.
I hope this helps.
Best,
Cameron Rex
RMI Valuation