Let's suppose I have the following data points on Earth:
var startPoint = [51.263969,-0.527153]
var endPoint = [51.258813,-0.505876]
var vector = [startPoint,endPoint]
var metres = 100
So the startPoint and endPoint represent a vector along the globe. What I need to do is find a new point which represents a point 100 metres away from endPoint in the direction of the vector.
How can I do this?
I've found some algorithms to move a lat/long by a number of metres, but they don't take into account an angle. I've also had a look through C# libraries such as DotSpatial but can't find anything to do this.
Bonus points for a C# library which can do this! But I'm happy to implement this myself if necessary.
Note: This should be calculated on a 3D spherical plane, example: Earth