怎么用matlab表示一个点在三角形里面?设三角形三点A(x1,y1), B(x2,y2), C(x3,y3),已知点M(x,y), (1) 先求出三个向量MA,MB,MC. (2)计算MA X MB,MB X MC,MC X MA (X表叉乘) (3)如果此三组的向量叉乘的

来源:学生作业帮助网 编辑:作业帮 时间:2024/05/10 22:59:58
怎么用matlab表示一个点在三角形里面?设三角形三点A(x1,y1), B(x2,y2), C(x3,y3),已知点M(x,y),     (1) 先求出三个向量MA,MB,MC.     (2)计算MA X MB,MB X MC,MC X MA (X表叉乘)    (3)如果此三组的向量叉乘的

怎么用matlab表示一个点在三角形里面?设三角形三点A(x1,y1), B(x2,y2), C(x3,y3),已知点M(x,y), (1) 先求出三个向量MA,MB,MC. (2)计算MA X MB,MB X MC,MC X MA (X表叉乘) (3)如果此三组的向量叉乘的
怎么用matlab表示一个点在三角形里面?
设三角形三点A(x1,y1), B(x2,y2), C(x3,y3),已知点M(x,y),
(1) 先求出三个向量MA,MB,MC.
(2)计算MA X MB,MB X MC,MC X MA (X表叉乘)
(3)如果此三组的向量叉乘的结果都是同号的(或都正,或都负),即方向相同的,则说明点M在三角形每条边的同侧,即内部.否则必在外部!

怎么用matlab表示一个点在三角形里面?设三角形三点A(x1,y1), B(x2,y2), C(x3,y3),已知点M(x,y), (1) 先求出三个向量MA,MB,MC. (2)计算MA X MB,MB X MC,MC X MA (X表叉乘) (3)如果此三组的向量叉乘的
A=[x1 y1 0];
B=[x2 y2 0];
C=[x3 y3 0];
M=[x y 0];
MA=A-M;
MB=B-M;
MC=C-M
a=cross(MA,MB); b=cross(MB,MC); c=cross(MC,MA);
result=(a*b')*(b*c')*(c*a')
if result > 0
'M点在三角形内部'
else
'M点在三角形外部'
end

您想问什么。。?
另外,“同号”表述不妥吧,叉乘得到的是向量,而且只对三维向量有定义。假设三角形放在XOY平面内的话,可以叉乘结果z方向系数同号与否。