角度的计算(200分)

  • 主题发起人 主题发起人 马晓明
  • 开始时间 开始时间

马晓明

Unregistered / Unconfirmed
GUEST, unregistred user!
各位朋友,大家好!

我在Canvas上从左至右画了一条向上倾斜的线段,线段的开始点A的
坐标是(X = 10,Y = 100),结束点B的坐标是(X = 100, Y = 10),这样,
这条线段的水平宽H := Abs(B.x - A.x),垂直高V := Abs(B.y - A.y)
我用勾股定理求得了这条线短的长:

AB := Round( Sqrt(H * H + V * V) );

我想算出这条斜线与开始点为基准的水平线的夹角的度数。
如果用V/H则求得这个角的正切值;如果用H/V则求得这个角的余切值;
如果用V/AB则得到角的正弦值;如果用H/AB则求得角的余弦值。问题是如何
把这些三角函数值转换成角度值?我查过Dephi的帮助文件和API函数,
都没有找到转换函数。在Math.pas中有一些函数是用于三角函数计算的,
但都是将角度值转换成三角函数值或弧度值。我想弧度其实就是角度(不知这
个说法对不对?),我用ArcSin做过试验,比如:

Angle := ArcSin(0.5);
Label1.Caption := Format('%.1f', [Angle]);

我想0.5是一个30度角的正弦值,Angle应该返回0.3(或30度?),
但是不对,看来ArcSin之类的函数不是这个用法。请各位朋友指点密津。谢谢!

马晓明
 
弧度和角度有一点区别,180度等于3。14159。。。,你得到的可能是弧度值,转换一下看看
 
你好!

我先这可能是关于反三角函数的问题。不幸的是我正在刚刚自学高中的数学,
学得慢,还没有学到反三角函数。如果可以的话,可不可以把转换三角函数到角的
公式先告诉我一下。我看书没看明白。还需要过些日子,按部就班地学到那再说了。
任何的三角函数转换角的公式都可以。谢谢!

马晓明
 
弧度是圆心角所对的弧与半径的比值.
因此 360度相当于2(pi)r/r = 2(pi)弧度
1弧度就是180/pi角度,而1角度就是(pi)/180弧度
 
抢分啊,一个公式搞定
弧度 = (角度 /180) * 3.1415926535897932384626433832795
 
ft
use function DegToRad() and RadToDeg() in math unit
 
delphi 中的函数完全可以解决,只不过弧度和角的值要分清.
 
谢谢各位的帮助,我再研究两天,请各位稍等。非常感谢!

马晓明
 
多人接受答案了。
 
后退
顶部