24小时热门版块排行榜    

CyRhmU.jpeg
查看: 1951  |  回复: 7

gaoyuan007

木虫 (小有名气)

[求助] 空间圆绘制 matlab已有1人参与

已知圆心坐标(1,2,3),半径为2,法向向量(1,1,2),如何在三维空间中绘制此圆,请大侠帮忙,最好能够给出MATLAB程序.谢谢!
回复此楼

» 猜你喜欢

» 本主题相关价值贴推荐,对您同样有帮助:

尝试改变,敢于担当
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

wurongjun

专家顾问 (职业作家)

【答案】应助回帖

★ ★ ★ ★ ★ ★ ★ ★ ★ ★
感谢参与,应助指数 +1
gaoyuan007: 金币+10, ★★★很有帮助 2015-04-24 22:17:24
>> t=linspace(0,2*pi,100);
>> s=atan(-(cos(t)+sin(t))/2);
>> xt=1+2*cos(s).*cos(t);
>> yt=2+2*cos(s).*sin(t);
>> zt=3+2*sin(s);
>> plot3(xt,yt,zt,'r-')
>> hold on
>> axis equal
>> plot3(1,2,3,'ro')
>> t1=linspace(0,1,100);
>> plot3(1+t,2+t,3+2*t,'b-')
空间圆绘制     matlab
yuan.jpg

善恶到头终有报,人间正道是沧桑.
2楼2015-04-23 23:29:01
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

gaoyuan007

木虫 (小有名气)

引用回帖:
2楼: Originally posted by wurongjun at 2015-04-23 23:29:01
>> t=linspace(0,2*pi,100);
>> s=atan(-(cos(t)+sin(t))/2);
>> xt=1+2*cos(s).*cos(t);
>> yt=2+2*cos(s).*sin(t);
>> zt=3+2*sin(s);
>> plot3(xt,yt,zt,'r-')
>& ...

非常感谢,试过了很好。我想让这个圆面涂上一种颜色,如何能做到呢?
尝试改变,敢于担当
3楼2015-04-24 22:17:06
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

wurongjun

专家顾问 (职业作家)

引用回帖:
3楼: Originally posted by gaoyuan007 at 2015-04-24 22:17:06
非常感谢,试过了很好。我想让这个圆面涂上一种颜色,如何能做到呢?...

再加一条命令!
fill3(xt,yt,zt,'g')
空间圆绘制     matlab-1
yt.jpg

善恶到头终有报,人间正道是沧桑.
4楼2015-04-24 22:30:28
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

gaoyuan007

木虫 (小有名气)

引用回帖:
4楼: Originally posted by wurongjun at 2015-04-24 22:30:28
再加一条命令!
fill3(xt,yt,zt,'g')

yt.jpg
...

非常感谢您,我还有些不明白的地方请教您。比如我绘制另外一个空间圆:圆心坐标(3,1,7),半径为4,法向向量(2,5,9),我知道您给我的上述代码中,那些地方表示的圆心坐标,那些地方表示是半径,只要对应地替换下参数就行。但我不知道那些地方是表示圆的方向的,也就是说其法向向量怎样替换?还请您帮忙。另外,您定义了t1=linspace(0,1,100);但后面没有用到。
尝试改变,敢于担当
5楼2015-04-25 13:52:23
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

wurongjun

专家顾问 (职业作家)

引用回帖:
5楼: Originally posted by gaoyuan007 at 2015-04-25 13:52:23
非常感谢您,我还有些不明白的地方请教您。比如我绘制另外一个空间圆:圆心坐标(3,1,7),半径为4,法向向量(2,5,9),我知道您给我的上述代码中,那些地方表示的圆心坐标,那些地方表示是半径,只要对应地替换下 ...

t1是画法向量的,画圆可以不考虑!
换一下这个式子:
s=atan(-(2*cos(t)+5*sin(t))/9);
善恶到头终有报,人间正道是沧桑.
6楼2015-04-25 16:37:45
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

gaoyuan007

木虫 (小有名气)

引用回帖:
6楼: Originally posted by wurongjun at 2015-04-25 16:37:45
t1是画法向量的,画圆可以不考虑!
换一下这个式子:
s=atan(-(2*cos(t)+5*sin(t))/9);...

非常感谢,现在完全可以实现了。
尝试改变,敢于担当
7楼2015-04-26 21:56:42
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

Jeviers

银虫 (小有名气)

引用回帖:
6楼: Originally posted by wurongjun at 2015-04-25 16:37:45
t1是画法向量的,画圆可以不考虑!
换一下这个式子:
s=atan(-(2*cos(t)+5*sin(t))/9);...

当法向量的z分量趋近0时,画出来的圆就不理想,能怎么改改这个程序?
8楼2016-03-02 14:09:32
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 gaoyuan007 的主题更新
信息提示
请填处理意见