24小时热门版块排行榜    

查看: 1170  |  回复: 4

anychi

金虫 (小有名气)

[求助] 求助:如何用matlab实现一个沿x轴运动的且半径随x坐标变化的圆的轨迹图 已有1人参与

以下程序可以实现一个沿x轴运动的圆的轨迹图,但圆的半径是不变的:
>> x = 40:0.1:67.53; % 函数变量取值范围
y = 0;  % 函数
plot(x,y);
axis equal
hold on
rho = 0.25;  % 圆的半径
rho = rho*ones(1,100);
theta = linspace(-pi,pi,100);
[xx,yy] = pol2cart(theta,rho);
h = plot(xx,yy,'r');
for ii = 40:0.2:67.53
    data = ii;
    set(h,'Xdata',xx+ii);
    pause(0.01);   % 调整速度
end
求助用matlab实现一个沿x轴运动的且半径随x坐标变化的圆的轨迹图,
具体来说圆的半径R(x)=-3.79263*10^(-5)*x^4+0.00856*x^3-0.7236*x^2+27.35571*x-387.14149
x的变化范围是40~67.53
回复此楼
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

Mr__Right

专家顾问 (著名写手)

【答案】应助回帖

★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★
感谢参与,应助指数 +1
anychi: 金币+50, ★★★★★最佳答案, 很好地解决了我的问题 2015-08-15 14:30:00
CODE:
clear all ;
close all;
clc;
x0=40;
r=-3.79263*10^(-5)*x0^4+0.00856*x0^3-0.7236*x0^2+27.35571*x0-387.14149;
lb=x0-r; ub=x0+r;
x=linspace(lb,ub,300);
y1=-sqrt(r^2-x.^2+2*x0*x-x0^2);
y2=sqrt(r^2-x.^2+2*x0*x-x0^2);
scrsz = get(0,'ScreenSize');
hb=figure('Position',[150 50 scrsz(3)-200 scrsz(4)-200],'color','white');
h=plot(x,y1,'r',x,y2,'r'); axis([30,80,-12,12]) ;
for x0=40:.5:70, r=-3.79263*10^(-5)*x0^4+0.00856*x0^3-0.7236*x0^2+27.35571*x0-387.14149;
lb=x0-r;
ub=x0+r;
x=linspace(lb,ub,300);
y1=-sqrt(r^2-x.^2+2*x0*x-x0^2);
y2=sqrt(r^2-x.^2+2*x0*x-x0^2);
set(h(1),'xdata',x,'ydata',y1);
set(h(2),'xdata',x,'ydata',y2);     
pause(0.1) ;
end

文章乃身外之物,要多考虑编辑、审稿人和读者的感受。
2楼2015-08-15 10:41:30
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

anychi

金虫 (小有名气)

引用回帖:
2楼: Originally posted by Mr__Right at 2015-08-15 10:41:30
clear all ;
close all;
clc;
x0=40;
r=-3.79263*10^(-5)*x0^4+0.00856*x0^3-0.7236*x0^2+27.35571*x0-387.14149;
lb=x0-r; ub=x0+r;
x=linspace(lb,ub,300);
y1=-sqrt(r^2-x.^2+2*x0*x-x0^2);
y2=sqr ...

谢谢您的回答。我还有一个小问题,就是想在上面的动画中添加一条y=0的水平线,并且一直存在,请问代码应该如何修改一下。
3楼2015-08-15 14:31:21
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

Mr__Right

专家顾问 (著名写手)

引用回帖:
3楼: Originally posted by anychi at 2015-08-15 14:31:21
谢谢您的回答。我还有一个小问题,就是想在上面的动画中添加一条y=0的水平线,并且一直存在,请问代码应该如何修改一下。...

CODE:
h=plot(......................);

改成
CODE:
h=plot(x,y1,'r',x,y2,'r',[0,100],[0,0],'g:');

» 本帖已获得的红花(最新10朵)

文章乃身外之物,要多考虑编辑、审稿人和读者的感受。
4楼2015-08-15 16:11:53
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

anychi

金虫 (小有名气)

送红花一朵
引用回帖:
4楼: Originally posted by Mr__Right at 2015-08-15 16:11:53

h=plot(......................);
改成
h=plot(x,y1,'r',x,y2,'r',,,'g:');...

谢谢
5楼2015-08-15 17:24:06
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 anychi 的主题更新
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[考研] 0854,计算机类招收调剂 +3 胡辣汤放糖 2026-03-15 6/300 2026-03-18 12:09 by 上岸上岸……..
[考研] 收复试调剂生 +3 雨后秋荷 2026-03-18 3/150 2026-03-18 11:36 by xdu电子
[考研] 290求调剂 +10 ADT 2026-03-11 10/500 2026-03-18 11:00 by 哦哦123
[考研] 085601材料工程专硕求调剂 +5 慕寒mio 2026-03-16 5/250 2026-03-17 21:31 by hmn_wj
[考研] 293求调剂 +6 世界首富 2026-03-11 6/300 2026-03-17 17:04 by ruiyingmiao
[考研] 085600材料与化工求调剂 +5 绪幸与子 2026-03-17 5/250 2026-03-17 16:40 by laoshidan
[考研] 302求调剂 +4 小贾同学123 2026-03-15 8/400 2026-03-17 10:33 by 小贾同学123
[考研] 304求调剂 +4 ahbd 2026-03-14 4/200 2026-03-16 16:48 by 我的船我的海
[考研] 0703一志愿211 285分求调剂 +5 ly3471z 2026-03-13 5/250 2026-03-16 16:16 by 哦哦123
[考研] 0703化学调剂,求各位老师收留 +8 秋有木北 2026-03-14 8/400 2026-03-16 15:21 by 哦哦123
[考研] 294求调剂 +3 Zys010410@ 2026-03-13 4/200 2026-03-15 10:59 by zhq0425
[考研] 255求调剂 +3 李嘉慧, 2026-03-12 4/200 2026-03-14 16:58 by 有只狸奴
[考研] 330求调剂 +3 ?酱给调剂跪了 2026-03-13 3/150 2026-03-14 10:13 by JourneyLucky
[考研] 304求调剂 +6 Mochaaaa 2026-03-12 7/350 2026-03-13 22:18 by 星空星月
[考研] 材料与化工求调剂一志愿 985 总分 295 +8 dream…… 2026-03-12 8/400 2026-03-13 22:17 by 星空星月
[考研] 315求调剂 +9 小羊小羊_ 2026-03-11 10/500 2026-03-13 21:13 by SXNU李老师
[考研] 290求调剂 +7 ADT 2026-03-12 7/350 2026-03-13 15:17 by JourneyLucky
[考研] 土木第一志愿276求调剂,科研和技能十分丰富,求新兴方向的导师收留 +3 土木小天才 2026-03-12 3/150 2026-03-13 15:01 by JourneyLucky
[考研] 0817化学工程与技术考研312分调剂 +3 T123 tt 2026-03-12 3/150 2026-03-13 10:49 by houyaoxu
[考研] 081200-11408-276学硕求调剂 +3 崔wj 2026-03-12 4/200 2026-03-12 19:33 by 求调剂zz
信息提示
请填处理意见