VB

Dim x, y, z As Double x = EndPoint.X - StartPoint.X y = EndPoint.Y - StartPoint.Y z = EndPoint.Z - StartPoint.Z 'a = arcsin(v.z / sqrt(v.x²+v.y²+v.z²)) MsgBox((Math.Asin(z / Math.Sqrt((x ^ 2) + (y ^ 2) + (z ^ 2)))) * (180 / Math.PI))

Is the solution. Someone was kind enough to assist me on another site!

Just learn a bit of vector algebra; if someone write some code for you, it won't help you. Do I even have to explain why?

—SA