MDI Height from Shadow Calculator

The MDI Height from Shadow Calculator provides a simple form for calculating the vertical height of an object using solar position and the length of the objects's shadow, and storing the specified data in a file. This calculation is typically used in a site visit for establishing information about objects such as trees, power towers or light poles.

The MDI Height from Shadow Calculator assumes that the shadow length is measured from 'the point at grade that is under the top of the object' and 'across a horizontal surface'.

The solar position is calculated using the location and time-and-date information provided. The location information has to be keyed in. The time-and-date information can be automatically set for 'Now' or the information can be specified on the form for 'Then'. All the information can be saved into a file named by the user and with an optional description.


The MDI Height from Shadow Calculator determines the height of an object like a pole or tower using the shadow of the object. The calculator uses information about the location, time of day and year and one distance measurement. The location is specified by Latitude and Longitude values, like those provided by a GPS. The time and date information can be either 'Now' or 'Then' - 'Now' uses the current time and date, 'Then' uses the information from either the form or a file. The Distance is the length of the shadow, extending from the point under the top of the object to the end of the shadow, and assumes a level horizontal surface. This distance is used as the triangle side between the right angle (at the base of the object) and the calculated Solar Altitude Angle, with the triangle dimensions determined through 'angle-side-angle' geometry.

HtShadow Form

The available actions are presented in the line of command buttons across the top [red box in image at left]. 'Calculate' uses the current form data to calculate the Height. New and existing files can be opened and saved using the command buttons 'New', 'Open' and 'Save' (and the Height is calculated for an existing file). 'Save' will overwrite an existing file. The current file name and the description are shown just below the command buttons [gray box].

Latitude & Longitude

The Latitude and Longitude are in decimal values: 40 deg 45 min is 40.75. Values entered into the text boxes [green box] can be positive or negative. If either the Latitude or the Longitude value entered is negative, the corresponding radio button for 'South' or 'West' is automatically set, and the value made positive. The user can also set these buttons as desired. When displayed, the values are always positive.

Now or Then

The choice of 'Now or Then' [upper blue box] determines the source of the time and date information used in the calculation. For 'Now' the information about the time and date is set from the clock. For 'Then' the information comes from either the form or a just-opened file. To switch this choice, click on the corresponding radio button.

Time, Day, Month & Year

The Time, Day, Month & Year [lower blue box] are combined to establish the time of year, to calculate the solar position. The Time is is decimal hours, using a 24-hr clock e.g. 2:15 PM is 14.25. The Time Zone is the number of hours from GMT (~ UTC) and is calculated automatically as equal to the Longitude divided by 15. It can also be set to a value that is one more or one less than that default. The Day, Month and Year use typical numerical formats. For all these values, checking is automatically applied.


The Distance is specified by the user [orange box, along with the calculated Solar Altitude Ange, in degrees] and must be positive. This distance is the base of the right triangle that also includes the Height as the vertical side. It is assumed to extend from the base of the object over a horizontal surface. Whatever units are used for the Distance are also the units for the Height.


The Height [gold box] is the result of the calculation, equal to the vertical side of the right triangle that includes the Distance as the horizontal base. Units are the same as were used for the Distance measurement. If either the Distance or the Solar Altitide Angle is less than or equal to zero, the Height is left blank.

copyright ©2016 Marshall Design Inc.