2009-02-24 99 views
2

好的,所以我需要讓C走A到B的最短路徑。A到B是我的直角三角形的斜邊,我需要給C三角形的正切。我該如何做,並且公式是否有名字?我怎樣才能找到直角三角形只使用斜邊?

+0

我不太確定我理解這個問題。你提供哪些信息與之合作?只是點A和B,還是別的? – 2009-02-24 19:59:14

+0

如果你有一個角度或一個邊,你會使用更多的trig或畢達哥拉斯。但只知道斜邊的長度並不能告訴你很多。 – 2009-02-24 20:00:32

回答

1

Arctan會產生度數或弧度,因此您的A和B最有可能具有像(x,y)這樣的座標。如果我沒有記錯的話,那麼你做了((By-Ay)/(Bx-Ax)),這裏Bx是B的x座標等。

如果A和B沒有座標,有意義。

+0

一個簡單的問題,如果你從矢量角度考慮它。 – duffymo 2009-02-24 20:05:15

3

目前尚不清楚你問的是什麼,但我認爲你試圖找到A-B線的角度。我將做出你知道的假設,或者可以計算出A和B的(x,y)座標,否則你將無法解決問題。

這聽起來像你已經概述了大部分的解決方案......角度將等於(y/x)距離的arctan。因此,如果我們考慮A(Y)是A的y座標,那麼你正在尋找類似:

arctan ((A(y) - B(y))/(A(x) - B(x))) 

這是否幫助?或者你在尋找稍有不同的東西?

編輯:要注意的一件事是你認爲這些條款的順序(無論你是從A到B還是從B到B),等等。你必須仔細考慮這件事或者你可以結束一些跡象問題。

0

如果A到B是直角三角形的斜邊,A到B也是從A到B的最短路徑,因爲它是點之間的直線。

可以通過將相鄰邊的長度除以相反邊的長度來計算非直角的反正切因爲它是正切的倒數。但是,根據你所描述的信息,你將缺少分子或分母。

有一個無限數量的直角三角形,具有給定長度的斜邊。

1

如果你只有一個長度和這裏沒有隱藏的假設(如說,三角形的一邊已經標準化):你不能

一個有趣的隱藏的假設可能是:

  • 所有的距離都是整數
  • 的三角形,只要至少因爲它是高。

然後問題只是很難。


如果AB是點,那麼你想要的角度推測的一個拍攝於x軸,而你通過得到它(使用fortranish名):

atan((B.y - A.y)/(B.x - A.x)) 

或如果您有它在您的圖書館

atan2((B.y - A.y),(B.x - A.x)) 

它處理零的情況下整齊的鴻溝......

2

大多數系統都有Arctan2(dy, dx),它給你一個完整的圓的角度(並處理垂直),所以你會說Arctan2((By - Ay), (Bx - Ax))以弧度(從東逆時針)獲得方向。度數乘以360/(2*PI)

只要確保A!= B。