This is a program set I wrote for the RPN calculator that runs on the Palm Pilot. It implements two support functions that are helpful when using a clinometer to measure vertical distance.
A clinometer is a sighting device used to measure an angle from horizontal. It's used, for example, by foresters to determine the height of a tree by standing a known distance away from a tree, and seeing from there the angle to the top of the tree. Trigonometery is then used to determine the height given that distance and angle.
These two functions will do the math to calculate the height given the distance and angle. See instructions and descriptions below.
This can be pasted into the Memo application and from there added to the RPN calculator.
// Clinometer trigonometery functions. // // By Truman Collins // May 28, 2000 // // These functions take angles in // degrees, and will do the calculations // in degrees regardless of the // degree/radian mode of the calculator. // Clin_foot assumes that distance is // measured in feet and that the user // is about 6 feet tall. // // The two functions are Clin_eye and // Clin_foot, and they differ only in // what distance you enter. Clin_eye // takes the distance from your eye to // the base of what you're trying to // measure, and Clin_foot takes the // distance from your foot. Farther // than about 30 feet away, it doesn't // make much difference which you use. // Clin_foot first calculates the // distance to your eye and then does // what Clin_eye does. It assumes that // your eye is about 5.7 feet higher // than your foot. This number can be // changed to fit the user. // // Clin_eye: Enter the distance from your // eye to the base of what you want to // measure, the angle in degrees from // horizontal to the base, and the angle // in degrees from horizontal to the top // of what you want to measure. Use // negative numbers for angles below // horizontal. // // Clin_foot: Same as Clin_eye, but // enter the distance from your foot // to the base of what you want to // measure RPN.1.z "Clinometer" "Clin_eye: Enter dist to base,\angle from level to base,\ angle from level to top (+ or -)." Mr(#'3.14159265359'#'180'/:1)Vg1r3-v*i#'90'r3-v*i/*; ~ "Clin_foot: Same as Clin_eye,\but corrects distance for\eye level." Mr(#'3.14159265359'#'180'/:1)V#'90'g3+g1v*i#'5.7'*g5/Iv/#'90'g5-r2-v*ir2v*i/r4*k3g1r3-v*i#'90'r3-v*i/*;
12,003 visits (3 today, 16 this week, 32 this since May 28, 2000.