The Sun/Moon Calculator Az/Alt Tool uses Google™ Maps to calculate the azimuth, altitude, and distance between two locations indicated by markers on the map. If you need to make such a calculation, this tool is faster and easier than most of the other methods described in the Sun/Moon Calculator tutorial. You can get similar results using The Photographer’s Ephemeris, except that with the desktop application, you cannot include the height of a man-made feature in the calculation.
The Az/Alt Tool offers a choice of map styles: terrain, road, or satellite-image; each has advantages for specific situations. It can sometimes be surprisingly difficult to locate natural features from satellite imagery, so a terrain map is often much better for initial positioning. But a terrain map is often short on fine detail, especially in urban areas; moreover, the Google Maps satellite-image view offers greater zooming, so it’s sometimes best for final positioning of a marker.
You must run the Az/Alt Tool from the Sun/Moon Calculator by clicking the Az/Alt Tool button at the bottom of the calculator’s main form. The tool will open with the blue marker () positioned at the location selected or specified in the calculator’s Location area.
Positioning the cursor over the heading for any column in the information area at the top of the map displays a brief description of what the column contains; with some browsers, the description also is displayed on the status line. Clicking on the label brings up the appropriate section on this page. Tooltips are also shown for the marker icons in the information area.
The Az/Alt Tool comprises a map with two positionable markers, an information area at the top for inputs and outputs, standard Google map-type selectors at the upper left of the map, full-screen toggle at the upper right, and zoom controls at the lower right. The appearance of the tool at startup is shown in Figure 1.
The tool has two positionable location markers, and several controls at the top of the map. The blue marker () corresponds to the “From” location; the red marker () corresponds to the “To” location. The marker icons at the right of the Markers column in the table at the top of the map serve to remind of this correspondence.
The “From” marker is initially positioned at the location specified on the calculator’s main form. Either marker can be clicked and dragged to the desired location; latitude and longitude, and azimuth and distance update continuously during dragging; the altitude, displays Dragging ..., as shown in Figure 2, and updates when dragging is completed, as shown in Figure 3.
The values for azimuth and distance may change slightly after releasing the mouse button at completion of dragging. The final azimuth is determined assuming an ellipsoidal Earth, but because of performance considerations, the values shown during dragging are calculated assuming a spherical Earth. If the second location is visible from the first, the final distance is the direct (“mark-to-mark”) distance, if not, the distance is that on Earth’s surface. The distance shown during dragging is that on the surface of a spherical Earth. Calculation of azimuth and distance is explained in greater detail in Technical Notes. The altitude is determined from elevations obtained from the Google Elevation Service, and the response is not fast enough to provide continuous updating while dragging, so the altitude is not displayed.
Right-clicking either marker exchanges the marker positions; double-clicking either marker centers the map on that marker position. Markers can also be controlled using the marker icons at the right of the Markers column.
If precise positioning is required, the easiest approach is usually to center the marker by double clicking on the marker or clicking on the marker icon in the controls area at the top of the map, and zoom to the desired level. If necessary, switch to satellite view to get greater zooming or view a feature that is not shown on the terrain map.
The tool has the standard Google Maps Controls: map-type selector at the upper left of the map, full-screen toggle at the upper right, and zoom controls at the lower right. By default, a terrain map is shown; this can be changed with the map-type selector. With a satellite map, if 45° imagery is available for the location, tilt and rotate controls appear at greater zoom levels; by default, 45° imagery is not shown.
The map can be panned by clicking with the mouse and dragging to the desired position. The map can also be panned using the arrow keys; to pan diagonally, press a vertical and horizontal arrow key simultaneously.
The map can be zoomed in and out by rotating the scrolling wheel on the mouse; when doing so, ensure that the cursor is over the map rather than the information area so that the map–rather than the entire window—is zoomed. The map can also be zoomed using the + and − keys (it is not necessary to press the Shift key). Avoid pressing the Ctrl key when zooming with the keyboard, because this will zoom the entire window, including the information area, as well as the map.
The Fit button adjusts the map zoom to just contain (more or less) the two markers. The Swap button exchanges the positions of the “From” () and “To” () markers.
The marker icons at the right of the column serve to remind of the locations to which the markers correspond. The marker icons also allow some control of the map:
The map can also be controlled by right-clicking or double-clicking directly on either marker, described under Map Markers, or using the buttons provided in the Markers column.
Latitude, Longitude are the latitude and longitude of the two marker locations; east longitudes are positive. These values are normally obtained automatically from the Google Maps API after positioning a marker, but values can be entered in the text box to set a marker to the corresponding location; if a marker position is changed by dragging or one of the other available methods, the manually entered values are replaced with values corresponding to the new location.
Latitude and longitude are displayed in decimal degrees, but may be input either in decimal or in one of the DMS formats described in the section DMS and HM Input in the Sun/Moon Calculator reference, except that neither the latitude nor longitude may contain spaces. The comma between the latitude and longitude is optional, as is the space following the comma.
Elevation is the terrain elevation for each location; it is normally determined from the marker position. The automatically determined value can be overridden by manually entering a value, but that value will be replaced if the marker is dragged. Elevation should not include the height of a man-made structure.
Height is the height of the observer or man-made feature above the terrain elevation. It must be entered manually, and is not updated when the corresponding marker position is changed. This height is not the same as Height Above Horizon on the Sun/Moon Calculator main form.
If the marker positions in Figure 3 correspond to a photographer at the “From” location using a camera on a tripod at a height of 5 feet and the Transamerica Building (height 853 feet) at the “To” location, these heights can be entered, with the results as shown in Figure 4.
Azimuth is the azimuth in decimal degrees, measured from true north, from the “From” marker position to the “To” marker position. To get a back azimuth, click the Swap button or ctrl-click or alt-click on either marker image to exchange the markers.
Altitude is the altitude, in decimal degrees, of the “To” marker position from the “From” marker position. It uses the elevation and height of each position and includes correction for atmospheric refraction and Earth’s curvature. If a marker is dragged, Altitude displays Dragging ..., and updates when dragging is completed. If one location cannot be seen from the other, Altitude displays Not visible. The visibility criterion is crude, assuming sea-level elevation for the terrain between the two locations, so it’s a “best case” condition. When the actual elevations between the two locations are not at sea level (which is most of the time), one location may not be visible from the other even if an altitude is displayed.
Distance is the distance, in miles or kilometers, between the two marker locations. It is independent of direction.
The azimuth is calculated assuming an ellipsoidal Earth; the distance is the direct (“mark-to-mark”) distance if the second location is visible from the first; if not, the distance is that on Earth’s surface. Because of performance considerations, the azimuth and distance shown while dragging a marker are calculated assuming a spherical Earth, and the altitude is not shown. Because of the different methods of calculation, the values for azimuth and distance may change slightly after releasing the mouse button at completion of dragging; the final values are the more accurate. The means of calculation are explained in greater detail in Technical Notes.
The Az/Alt Tool can generate an elevation profile—
Two profile heights are available—
To create a profile, click the Create button; if
a profile for the current marker locations has already been created,
this button will appear as Show. To hide the
profile, click the Hide button; the button will
be disabled if no profile has been created or if the profile has already
been hidden. When the profile is displayed, the Show button will be disabled.
Dante’s View in the Black Mountains above Death Valley National
Park affords a view of several peaks in the Sierra Nevada, but as Figure 5 illustrates, Mount
Whitney—
The sight line is slightly curved upward; this is not what actually
happens, but it is shown this way because the elevation profile is
distorted. At the indicated distance of 90.695 miles, the effect of
Earth’s curvature is significant—
An elevation profile is not necessarily the last word on visibility,
especially in an urban area. If a profile is generated for the
locations shown in Figure 4, it can be seen
from Figure 6 that there are several high
points on the terrain. They are all well below the sight line, but some
of them may include tall buildings that could block the view of the
Transamerica Building.
Moving the cursor over the plot area will show dots on both the
elevation and sight-line plots for each distance along the profile, as
shown in Figure 7.
Clicking at a point along the profile will select that distance, and
display a tooltip window with the values for distance, the terrain and
sight-line elevations, and the altitude, as shown in Figure 8.
To hide the tooltip window, click again at the selected point.
The unlabeled value at the top is the distance; the distance and
elevations are shown in the appropriate English or metric units. The
altitude is from the “From” position, including the height,
to a point on the terrain at the selected distance; it is shown in
degrees. The altitude of the sight line at any point is that of the
“To” location, shown in the information area at the top.
If the second location is not visible from the first under “best
case” conditions (i.e., sea-level terrain between the two
locations), the sight-line elevation is not shown.
To help identify features that may block the view of the
Transamerica Building, you can click Show on map to
place an orange intermediate marker
()
on the map, positioned at the selected distance, as shown in Figure 9.
If 45° satellite imagery is available, it may help identify
potential obstructions; for a man-made structure, the height can often
be found from an online resource.
One high point for this profile is on Lone Mountain at about 1.4 miles
from the “From” location, as shown in Figure 9. Other high points are in the Anza
Vista neighborhood at about 1.8 miles, and on Nob Hill, at about
3.6–
The intermediate marker
()
isn’t draggable; to move it to a new location, pass the cursor
along the elevation profile and select a new distance. To hide the
marker, right-click on it; hovering over the marker displays a tooltip
to this effect. If either the “From”
()
or “To”
()
marker is moved, or the latitude or longitude of either location is
changed, the intermediate marker is hidden.
There is obviously no substitute for field verification of
visibility, preferably with a photograph from the intended camera
position; this is especially true from a heavily wooded area such as
Strawberry Hill. But an advance field trip may be impractical for a
one-time visit to a faraway location.
Sometimes it’s helpful to extend an elevation profile far beyond
the feature of interest. For example, many scenes in San
Francisco—
Specified heights apply only at the “From” and
“To” locations; if you specify a feature height and then
create an elevation profile to check the background, the feature height
will be shown at the “To” location, with a sight line
that’s not relevant to the visibility of the feature. If you find
this distracting, reset the “To” height to zero, as was done
for Figure 10.
If a profile is displayed and the units or profile height are changed, or
the markers are exchanged, the profile is redrawn; the previous
elevation data are re-used, so simply redrawing the profile
doesn’t require an additional request from the elevation service.
The profile is always shown with the “From” location at the left
and the “To” location at the right, regardless of the marker
positions. If the “From” location is east of the
“To” location and you wish to have the profile direction
match that of the markers, click Swap to
exchange the markers and redraw the profile. The indicated altitude
will, of course, be that looking back from the distant location, and the
portions of the terrain shown as visible will be quite different.
If either the “From” or “To” marker is moved, or
either of the elevations or heights is manually changed while an
elevation profile is displayed, the profile is no longer valid, and the
Show button changes to Create; click Create if you
need to view an updated profile. If the elevation profile is invalid,
clicking Show on map has no effect.
Elevation profiles are based on 512 points between the two locations.
In most cases, this is more than adequate; however, for long distances,
if the sight line is close to the plotted terrain elevation at any
point, the visibility of one location from the other should be verified
by field observation if at all feasible.
Use the radio buttons to select the units for height and
distance—
There are daily limits on map loads and on queries to the Google
Elevation Service. If the map load limits are exceeded, the result will
be a low-resolution map; if the limit on Elevation Service queries is
exceeded, you may get an error message indicating that the query has
failed.
Azimuth is calculated treating the Earth as ellipsoidal, using the
WGS 84 ellipsoid and the algorithm developed by Vincenty (1975) and
subsequently refined by the US National Oceanic and Atmospheric
Administration’s National
Geodetic Survey. If the second location is visible from the first,
the distance is the straight-line (“mark-to-mark”) distance
between the two locations; if not, the distance is that on Earth’s
surface at sea level. The direct distance is always greater than the
surface distance.
The geodetic value for azimuth is found using an iterative,
compute-intensive procedure that is too slow to provide real-time
updates when dragging a marker, and that, in rare cases, also fails to
find a solution.
Though slightly less accurate, azimuth calculations using a spherical
Earth model are fast and deterministic; accordingly, they’re used
to determine the azimuth displayed while a marker is dragged.
The distance displayed while dragging is that on the surface of a
spherical Earth; both azimuth and distance are obtained from the Google
Maps API.
Because of the different methods of calculation, the
displayed azimuth and distance may change slightly when the mouse button
is released after dragging is complete; the final distance will almost
always be greater than that shown while dragging.
If the ellipsoidal procedure fails, a warning is given and values
determined using the spherical model are used.
The NGS have an online
calculator that will perform this calculation, known as the
geodetic inverse; a PC (Windows® and MS-DOS®) version
of the program
and the Fortran program source are available for download. The NGS
program uses the GRS 80 ellipsoid rather than the WGS 84, so in
some cases results may differ slightly from those obtained with the
Az/Alt Tool.
Strictly, “elevation” should be the distance above the
reference ellipsoid, but in most cases, the error that results from
using elevation above mean sea level is negligible, especially at short
distances.
Because of Earth’s curvature, distant features appear to be lower
than they would appear if Earth were flat. Using Earth’s mean radius
of 6371 km (3959 mi), with the correction C in feet
and the distance D in miles, the effect of curvature is
Because the density of Earth’s atmosphere varies with elevation,
light is refracted as it passes through the atmosphere. The effect is
opposite that of curvature, making distant features appear higher than
they are. The effect of refraction is about 1/7
that of curvature; with the correction R in feet and the
distance D in miles, the effect is
At short distances, the effect is minor, but at long distances, the
effect is significant. For example, at a distance of a mile, the
apparent decrease in elevation is about 7 inches; at 30 miles, it is
slightly greater than 500 feet, and at 100 miles, it is over 5700 feet.
At a distance of 132 miles over sea-level terrain, a 10,000 foot
mountain is barely visible.
A realistic elevation profile would show sea-level elevation as curved
downward, and because of atmospheric refraction, would also show the
sight line as curved downward, with a radius approximately seven times
Earth’s.
Most graphing packages, including Google Charts used to show elevation
profiles here, plot only straight axes. Because sea-level elevation is
plotted as a straight line, the compensation for both curvature and
refraction is incorporated into the sight line to preserve the vertical
distances between the sight line and the terrain. For short distances,
the effect usually isn’t noticeable, but for long distances,
the sight line will be concave upward (i.e., dipping in the middle).
Though its appearance is distorted, the sight line is nonetheless
accurate for determining visibility of one point from another.
Similarly, curvature and refraction combine to decrease the apparent
altitude of the feature.
If h is the
altitude in degrees, Δy is the elevation difference in
feet, the altitude can be calculated to good approximation by
with the distance D again in miles.
The first term is simply the relationship that would obtain if the Earth
were flat; the second term is equivalent to the correction for elevation
above; it can be neglected at short distances.
Values for elevation vary, even among presumptively reliable sources.
In the United States, the most reliable values are usually from monument data
sheets provided by the United States
National Oceanic and Atmospheric Administration’s National Geodetic Survey; however,
accessing them can be tedious, and they are available for only a few
locations, such as major geographical features—
Digital elevation data are convenient, but they are still a work in
progress. Although the values are generally reasonable, they sometimes
can differ considerably from actual values. When relying on such data,
you should be aware that they may not be exact, and you should be
prepared to make slight adjustments to camera positions as a Sun or Moon
event approaches.
When the calculator’s elevation values have been manually
overridden, elevations of nearby features are adjusted when creating an
elevation profile; the correction decreases linearly with distance from
the “From” and “To” locations. There is no
assurance that this adjustment will improve the accuracy of nearby
elevations; it simply ensures smooth transitions from the profile
endpoints.
The basic criterion for visibility of one location from another is
crude, assuming sea-level elevation for the terrain between the two
locations—
When calculating the altitude of a man-made feature, the height of the
feature must be added to the base elevation. Heights and illustrations
of many tall buildings and other structures in major cities can be
obtained from the Skyscraper
Page; heights can also be obtained from Emporis or the Council on Tall Buildings and Urban
Habitat’s Skyscraper Center;
the CTBUH is internationally recognized as the arbiter of the criteria
by which tall building height is determined.
Vincenty, T. 1975.
Direct and Inverse Solutions of Geodesics on the Ellipsoid with
Application of Nested Equations.
Survey Review
XXII, 176, April 1975, 88–
The Sun/Moon Calculator, including the Az/Alt Tool, is copyright Jeff
Conrad, and all rights remain with the author. There are no
restrictions on personal use; however, any commercial use or posting on
a website requires express permission of the author. The Az/Alt Tool is
provided only for use in conjunction with the Sun/Moon Calculator on the
Large Format
website; accordingly, it is not included in the zipped file provided
for download. The Sun/Moon Calculator is made available for use as a
local application by those who may have a slow internet connection (or
sometimes no connection at all). Because the Az/Alt Tool does not
function at all without an internet connection, there is little point in
running it locally.
The Az/Alt Tool is also subject to the
Google Maps/Google Earth Additional Terms of Service,
linked at the lower right of the map, and the
Google Privacy Policy.
The Az/Alt Tool is provided in the hope that it may be useful, but
without any warranty of any kind, express or implied,
and you assume all risk of use.
© 2012–Units
Usage Limits
Technical Notes
Ellipsoidal vs. Spherical Earth
Elevation vs. Geoid Height
Elevation Profiles
Effect of Curvature and Refraction on Apparent Elevation
Effect on Apparent Altitude
Elevation Data
Visibility Criterion
Heights of Man-Made Features
References
Legal