matlab如何快速定位点集中的点属于哪三角形区域

2021-02-26 07:24:07 字数 2403 阅读 3071

1楼:丰收在春天

x=[0,1,2]; y=[0,1,0.5]; %三角bai形du的三zhi个dao

顶点坐标 px=[x,x(1)]; py=[y,y(1)]; figure;hold on; line(px,py); %画原三角形 lshift=[3,2]; %偏移向

版量 line(px+lshift(1),py+lshift(2),'color','r') %画新三角形 效果图:权

matlab 已知三角形顶点坐标,如何确定三角形内的点坐标的范围

2楼:匿名用户

如果说是范围的bai话应该是满足du

与三角形三条边直zhi线方程有关的不等式组dao专a(x1,y1),b(x2,y2),c(x3,y3)组成三角形属想知道某点(x,y)是否在三角型里面

可以用matlab函数

[in on]=inpolygon(x,y,[x1 x2 x3],[y1 y2 y3]);

返回的in和on都是逻辑矩阵,1表示逻辑是,0表示逻辑非如果in等于1,那么点就在三角形内

如果on等于1,那么点在三角形边上

该函数也可以用于多变形的判断

matlab如何用3个点取一个三角形?

3楼:刘贺

说法有点笼统bai,不具体,试du试这样:

zhiclear all;clc;

x1=0;y1=0;

x2=1;y2=1;

x3=0,y3=2;

x=[x1,x2,x3,x1];

y=[y1,y2,y3,y1];

plot(x,y);axis([-1,2,-1,3]);

----------------------改变x1、y1等值,dao便可移动

三角形,但专最好是用属模拟圆的方法画

就是利用圆的参数方程来做,会比较好一些,如有问题,可**

请问高手们matlab中怎么表示三角形区域?

4楼:匿名用户

要画出上面的图下面的程序才可以,一楼的有问题,我画出的图%figure ********

x0=0;y0=0; %起始坐标

x1=1;y1=1; %对角坐版标

y2=[0:1/4:1-1/4];

x2=[0:1/4:1-1/4];

plot([x0,x1],[y0,y0],'r') %横轴坐标直线hold on

plot([x0,x0],[y0,y1],'r') %纵轴权坐标直线

hold on

plot([x0,x1],[y1,y0],'r') %斜边直线hold on

plot([1/4,1/4,1/4,1/4],y2,'r');

hold on

plot([1/2,1/2,1/2],[0:1/4:1/2],'r');

hold on

plot([3/4,3/4],[0:1/4:1/4],'r');

hold on

plot(x2,[1/4,1/4,1/4,1/4],'r');

hold on

plot([0:1/4:1/2],[1/2,1/2,1/2],'r');

hold on

plot([0:1/4:1/4],[3/4,3/4],'r');

5楼:孙继刚

x0=0;y0=0; %起始坐抄标袭

x1=1;y1=1; %对角坐标

baiplot([x0,x1],[y0,y0],'r') %横轴du坐标直线

zhihold on

plot([x0,x0],[y0,y1],'r') %纵轴坐标直线hold on

plot([x0,x1],[y1,y0],'r') %斜边直dao线

怎么用matlab表示一个点在三角形里面?

6楼:匿名用户

解答如下

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

7楼:

您想问什么。。?

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