作者smith0102 (C.K)
看板MATLAB
标题[问题]两个1/4圆相减
时间Sat Jan 9 14:44:07 2016
各位前辈好,
最近刚接触matlab,
拿他来玩玩小自走车,
在模拟时有个问题请教各位前辈,
我现在把一条路的模形(转弯90度)给画出来了,如下图
| |
| |
| |
| |
| |
| |
_______」 |
|
|
|
|
|
____________」
而我的程式如下,
我现在是想让车子保持在外边界与内边界的中间,
我的方法是外边界的座标减内边界的座标(利用距离公式)来除以2,
不过现在卡在那1/4圆的关系,
因外边界的圆周比内边界的圆周还长导致点位比较多,
这样在矩阵相减时会有维度不同的问题,
想请教各位前辈是怎麽解决这个问题?
或我的程式需修改什麽地方。
以上。
谢谢回答
%----------------Left line----------------%
x1_L=[0:.1:50];
y1_L=0*x1_L+125;
r1_L=110;
ci_x1_L=50;
ci_y1_L=235;
theta_L=[1.5*pi:.1:2*pi];
x2_L=ci_x1_L+r1_L*cos(theta_L);
y2_L=ci_y1_L+r1_L*sin(theta_L);
y3_L=[227:.1:350];
x3_L=0*y3_L+159;
line_lx=[x1_L, x2_L,x3_L]';
line_ly=[y1_L, y2_L,y3_L]';
%----------------Right line----------------%
x1_R=[0:.1:50];
y1_R=0*x1_R-125;
r1_R=360;
ci_x1_R=50;
ci_y1_R=235;
theta_R=[1.5*pi:.1:2*pi];
x2_R=ci_x1_R+r1_R*cos(theta_R);
y2_R=ci_y1_R+r1_R*sin(theta_R);
y3_R=[209:.1:350];
x3_R=0*y3_R+409;
line_rx=[x1_R, x2_R, x3_R]';
line_ry=[y1_R, y2_R, y3_R]';
plot(line_lx,line_ly,'b',line_rx, line_ry,'r');
-------------------------------------------------------------
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 101.10.114.175
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/MATLAB/M.1452321850.A.D23.html
1F:→ s4300026: 把内边界自己脑补边界怎麽样? 这样就可以跟外边界一样啦 01/09 14:57
2F:→ smith0102: 抱歉,请问前辈指的让内边界自行脑补边界的意思是? 01/09 15:32
3F:→ s4300026: 恩阿,反正你也知道他会怎麽弯了就自己补值罗 01/09 18:00