已知三角形的三個頂點,先計算每條邊的邊長,利用三角形的餘弦定理,使用反三角函式求出每個角的弧度值,再將弧度值轉化為角度值。
三角形的餘弦定理:cosa=(b^2+c^2-a^2)/2bc
cosb=(a^2+c^2-b^2)/2ac
cosc=(b^2+a^2-c^2)/2ab
弧度和角度轉換:示例**:角度=弧度*180/pi
#include #include double getlength(cv::point pt1, cv::point pt2);
int main()
; for (int i = 0; i < 3; ++i)
//獲取三角形三邊的長度
double a, b, c;
a = b = c = 0.00;
a = getlength(point2, point1);
b = getlength(point3, point2);
c = getlength(point1, point3);
std::cout << "a:" << a << std::endl;
std::cout << "b:" << b << std::endl;
std::cout << "c:" << c << std::endl;
//獲取角度
double a, b, c;
a = b = c = 0.00;
a = std::acos((b*b + c*c - a*a) / (2 * b*c)) * 180 / 3.1415;
b = std::acos((a*a + c*c - b*b) / (2 * a*c)) * 180 / 3.1415;
c = std::acos((a*a + b*b - c*c) / (2 * a*b)) * 180 / 3.1415;
std::cout << "a:" << a << std::endl;
std::cout << "b:" << b << std::endl;
std::cout << "c:" << c << std::endl;
std::cout << "d:" << std::acos(0.5)*180/3.1415 << std::endl;
cv::imshow("srcimage", srcimage);
cv::waitkey(0);
cv::destroyallwindows();
return 0;
}//計算三角形的邊長
double getlength(cv::point pt1, cv::point pt2)
顯示結果:
Js求角度 三角形 弧度計算
已知角度和斜邊,求直角邊 function hypotenuse long angle console.log hypotenuse 1,45 考慮以下三角形 我想計算角度x.我有以下內容 var opposite 2.5 var hypotenuse 5 var sinofanglex oppos...
python求三角形的角度
import math print 請輸入邊長a a float input 獲取邊長a print 請輸入邊長b b float input 獲取邊長b print 請輸入邊長c c float input 獲取邊長c if a b c and a c b and b c a 判斷三邊是否能構成三...
計算三角形面積
計算三角形面積 總時間限制 1000ms 記憶體限制 65536kb 描述平面上有乙個三角形,它的三個頂點座標分別為 x1,y1 x2,y2 x3,y3 那麼請問這個三角形的面積是多少。輸入輸入僅一行,包括6個單精度浮點數,分別對應x1,y1,x2,y2,x3,y3。輸出輸出也是一行,輸出三角形的面...