【发布时间】:2013-12-24 12:56:22
【问题描述】:
我希望在 MATLAB 中绘制位于同一平面的两个曲面(补丁)的交点。
正如您在上图中看到的,绿色圆圈与四个红色矩形相交。我只想绘制(或修补)四个交叉点。我该如何进行?
我尝试使用条件语句在位于一个矩形和圆的交点之外的圆形补丁上绘制点。但是 MATLAB 抛出一个错误。这里是代码 sn-p。
[p,q] = size(points);
for s=1:1:q;
t = points(1,s);
if (points(1,s) >= Pa3(1,1)) && (points(1,s) <= Pa2(1,1)) && (points(2,s) >= Pa3(1,2)) && (points(2,s) <= Pa4(1,2))
points(1,s) = 0;points(2,s) = 0;
end
end
fill3(points(1,:), points(2,:), points(3,:), 'g');
上面的代码在if语句处报错。基本上代码中的“points”代表绿色圆圈中的所有点。Pa1,Pa2,Pa3,Pa4代表左上角矩形的顶点,Pa1为左边角顶顶点,Pa2,Pa3,Pa4顺时针依次跟随。
谢谢
【问题讨论】: