向量叉积的应用——正反画画
1
解题思路
解题思路涉及的向量积相关知识
c++实现
#include<iostream>
#include<vector>
using namespace std;
struct TrianglePoint {
int x;
int y;
};
int momentForce(TrianglePoint A, TrianglePoint B, TrianglePoint C)
{
//AB向量:(B.x-A.x, B.y-A.y),AC向量:(C.x-A.x, C.y-A.y)
int result = (B.x - A.x) * (C.x - A.y) - (C.x - A.x) * (B.y-A.y);
return result;
}
int main()
{
int n;
cin >> n;
TrianglePoint A, B, C;
vector<int> results;
while (n)
{
cin >> A.x >> A.y >> B.x >> B.y >> C.x >> C.y;
int result = momentForce(A,B,C);
results.push_back(result);
n--;
}
for (int i = 0; i < results.size(); i++)
{
if (results[i] > 0)
{
cout<<"Counterclockwise"<<endl;
}
else
{
cout << "Clockwise" << endl;
}
}
return 0;
}