![]() |
![]() | ![]() | ![]() | ![]() | ![]() | ![]() | ![]() |
| Welcome to Windows Vista Forums. Our forum is dedicated to helping you find solutions with any problems, errors or issues you are experiencing with Windows Vista. The Vista forum also covers news and updates and has an extensive Windows Vista tutorial section that covers a wide range of tips and tricks. |
| |||||||
![]() |
| |
| | #1 (permalink) |
| | Converting the sine of an angle to degrees, minutes, and seconds I am using VS2003 Professional and am trying to display the other two angles of a right triangle in degrees, minutes, and seconds. This is easy enough to do with my desktop calculator but I am having difficulty doing it in DOTNET code. I find the sine of an angle as .6157548327167 which is the sine of an angle a little over 38 degrees. How do I get this to 38 degrees ? minutes ? seconds? Thanks in advance for any help and have a good day. -- JungleJim74 |
My System Specs![]() |
| | #2 (permalink) |
| | Re: Converting the sine of an angle to degrees, minutes, and seconds It happens that JungleJim74 formulated : Quote: > I am using VS2003 Professional and am trying to display the other two angles > of a right triangle in degrees, minutes, and seconds. This is easy enough to > do with my desktop calculator but I am having difficulty doing it in DOTNET > code. I find the sine of an angle as .6157548327167 which is the sine of an > angle a little over 38 degrees. How do I get this to 38 degrees ? minutes ? > seconds? Thanks in advance for any help and have a good day. method. This will return a value in radians. Note: there is also a Math.Acos() method that starts with the cosine. There are "pi" radians in 180 degrees, so you will have to divide the answer by Math.PI and multiply by 180. There is no built-in method that displays this number in degress, minutes and seconds so you will have to calculate that yourself. The Math.Truncate() method could help here. For more methods, see http://msdn.microsoft.com/en-us/libr...stem.math.aspx Hans Kesting |
My System Specs![]() |
| | #3 (permalink) |
| | Re: Converting the sine of an angle to degrees, minutes, and seconds Andrew Morton wrote: Quote: > Use Math.Asin to get the angle in radians and then use google to find > the conversion. > > http://www.freevbcode.com/ShowCode.asp?ID=8179 Dim a As Double = Math.Asin(0.06316308504476903) * 180.0 / Math.PI Dim d As Double = Math.Truncate(a) Dim t As New TimeSpan(CLng((a - d) * 36000000000.0)) Console.WriteLine("{0} {1} {2}", d, t.Minutes, t.Seconds) ' ->3 37 17 Watch out for negative angles. Andrew |
My System Specs![]() |
| | #4 (permalink) |
| | Re: Converting the sine of an angle to degrees, minutes, and secon Thank you so much but when I try to use the Function that is shown when I click on your link I get an error in my compiler C:\MyDotNet\DecimalDegreesToDMS\Form1.vb(197): 'Truncate' is not a member of 'System.Math'. "How do I eliminate this compiler error? TIA -- JungleJim74 "Andrew Morton" wrote: Quote: > Andrew Morton wrote: Quote: > > Use Math.Asin to get the angle in radians and then use google to find > > the conversion. > > > > http://www.freevbcode.com/ShowCode.asp?ID=8179 > Or if you were using a later version of VS, you could do the conversion like > > Dim a As Double = Math.Asin(0.06316308504476903) * 180.0 / Math.PI > Dim d As Double = Math.Truncate(a) > Dim t As New TimeSpan(CLng((a - d) * 36000000000.0)) > Console.WriteLine("{0} {1} {2}", d, t.Minutes, t.Seconds) ' ->3 37 17 > > Watch out for negative angles. > > Andrew > > > |
My System Specs![]() |
| | #5 (permalink) |
| | Re: Converting the sine of an angle to degrees, minutes, and secon JungleJim74 wrote: Quote: > Thank you so much but when I try to use the Function that is shown when I > click on your link I get an error in my compiler > C:\MyDotNet\DecimalDegreesToDMS\Form1.vb(197): 'Truncate' is not a member of > 'System.Math'. > "How do I eliminate this compiler error? TIA -- Mike |
My System Specs![]() |
| | #6 (permalink) |
| | Re: Converting the sine of an angle to degrees, minutes, and secon "JungleJim74"wrote Quote: > Thank you so much but when I try to use the Function that is shown when I > click on your link I get an error in my compiler > C:\MyDotNet\DecimalDegreesToDMS\Form1.vb(197): 'Truncate' is not a member > of > 'System.Math'. > "How do I eliminate this compiler error? TIA Did you know you can get a free version of Visual Basic 2008 Express? http://www.microsoft.com/express/vb/Default.aspx Otherwise, you can define Function truncate(ByVal x As Double) As Integer If Math.Sign(x) >= 0 Then Return Math.Floor(x) Else Return Math.Ceiling(x) End If End Function HTH Andrew |
My System Specs![]() |
![]() |
| Thread Tools | |
| |
Similar Threads | ||||
| Thread | Forum | |||
| How do I get from the sine of an angle to the actual angle | .NET General | |||
| WLM 9 Beta - Video freezing for 5-10 seconds every few minutes | Live Messenger | |||
| Vista randomly freezes every few minutes for about 2-4 seconds | Vista performance & maintenance | |||
| Vista Upgrade - Takes 30 Seconds to 5 minutes after mouse "click" | Vista General | |||