# Bearing distance to line with X/Y/Z

1100
3
02-27-2019 11:53 AM
Occasional Contributor III

I have a fc that looks a bit like the following:

``````ID    NAME    AZIMUTH    ELEVATION    DIST
01    first   60.5       28.3         100
02    second  125.2      14           100
03    third   90         7.8          100‍‍‍‍``````

Azimuth and Elevation are expressed in degrees.

I would like to create lines between these points (themselves with no Z value) and paired points that must be calculated along a trajectory from the starting point, for n meters (the DIST field).

Creating the lines once I have the paired XYZ is easy.  Getting to the XYZ is harder.  Math is not my strong suit, and I am curious how I would accomplish it in python.

Distance unit of measurements are in meters.  I want to keep this simple and relative, i.e., no need to account for curvature of the earth or terrain.  Just calculating a new point 100 meters away from the origin point in xyz space, assuming the trajectory provided by the azimuth and elevation angles and a flat X plane.

Tags (3)
3 Replies
MVP Legendary Contributor

You have ruled out using....

Projected coordinates?

what is your start point?

bearing... are they azimuth's from North? (bearings has several meanings

related to show it is doable

Occasional Contributor III

start point for each calculation is the XY for each row in the point feature class.  I guess we just assume Z is 0 since it's not included in the data.

no local projection just 4326.

And yes, azimuth from North.

Your blog makes my head hurt but it's good stuff, thanks

MVP Legendary Contributor

Well to make it hurt more, I don't use geodesic (aka 4326, aka longitude/latitude), only planar coordinates (like utm, etc, aka, projected)

Since you already have the Long/Lat values, you should look at the