三点顺序(计算几何)
生活随笔
收集整理的這篇文章主要介紹了
三点顺序(计算几何)
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
坐標中給出三點,求順時針或逆時針
分析:利用矢量叉積判斷是逆時針還是順時針。
設A(x1,y1),B(x2,y2),C(x3,y3),則三角形兩邊的矢量分別是: AB=(x2-x1,y2-y1), AC=(x3-x1,y3-y1) 則AB和AC的叉積為:(2*2的行列式) |x2-x1, y2-y1| |x3-x1, y3-y1| 值為:(x2-x1)*(y3-y1) - (y2-y1)*(x3-x1) 利用右手法則進行判斷: 如果AB*AC>0,則三角形ABC是逆時針的 如果AB*AC<0,則三角形ABC是順時針的 如果……? =0,則說明三點共線, #include<iostream> #include<cstdio> using namespace std; int main() {while(1) {int x1, y1, x2, y2 ,x3, y3;cin >> x1 >> y1 >> x2 >> y2 >> x3 >> y3;if(!x1 && !y1 && !x2 && !y2 && !x3 && !y3) break;if((x2 - x1)*(y3-y1)-(y2-y1)*(x3-x1) < 0) printf("1\n");else printf("0\n"); }return 0; }?
轉載于:https://www.cnblogs.com/kindleheart/p/8962203.html
總結
以上是生活随笔為你收集整理的三点顺序(计算几何)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 为何腾讯元宝要支持插件扩展?
- 下一篇: 如何评估腾讯元宝的长期价值?