[GIS] How to create a point along a line given distance

geocodinggrasslinear-referencingqgisvector

I have been given a non-spatial database which contains the names of lines which I have a shapefile for. The database also has names of points and the distance of each point from the origin along the route of these lines.
How would I create a point shapefile which locates each of the points?

Of course I would like to use QGIS, or GRASS and as a last resort I can get access to ArcGIS. I expect I will have to carry out a step to specify which end of the line is the origin.

Best Answer

An alternate method is to use the haversine formula, since you have the lines in a shapefile, you can use QGIS to extract the begin and end points to calculate the bearing. Once you have the bearing and the distance from the origin, you can calculate the end point. This all doable in excel as documented here: http://www.movable-type.co.uk/scripts/latlong.html.

Once you have calculated the coordinates of the endpoints, save them to a CSV file and use ogr2ogr to turn them into a shape file using a VRT as shown here: http://www.gdal.org/ogr/drv_csv.html