24小时热门版块排行榜    

查看: 897  |  回复: 17
当前主题已经存档。
【有奖交流】积极回复本帖子,参与交流,就有机会分得作者 wuqingming2003 的 50 个金币
当前只显示满足指定条件的回帖,点击这里查看本话题的所有回帖

wuqingming2003

木虫 (小有名气)

[交流] 【求助】如何做一个由三个点确定的切面的等高线?

本人是matlab新手,现得到一组数据(在附件中),是一个40*40*40的空间内的各个点的强度值,现在想做由(26,26,26)、(20,20,20)和(38,10,22)三个点确定的平面的等高线分布图,请问如何做?
请将程序写的详细一点,万分感谢!

[ Last edited by wuqingming2003 on 2009-10-14 at 09:41 ]
回复此楼
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

wuqingming2003

木虫 (小有名气)

我把输出的结果旋转了一下,麻烦你看看,谢谢!
引用回帖:
Originally posted by hitzhang at 2009-10-15 18:38:

没明白啥意思,旋转一下看看。

8楼2009-10-15 23:16:29
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
查看全部 18 个回答

hitzhang

木虫 (正式写手)

★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★
wuqingming2003(金币+20,VIP+0):非常感谢,辛苦了!明天试试看,如果可以成功,50个金币全部赠送。 10-14 22:05
nono2009(金币+2,VIP+0):谢谢专家!麻烦再看一下此问题的进展。 10-15 13:37
引用回帖:
Originally posted by wuqingming2003 at 2009-10-14 09:25:
本人是matlab新手,现得到一组数据(在附件中),是一个40*40*40的空间内的各个点的强度值,现在想做由(26,26,26)、(20,20,20)和(38,10,22)三个点确定的平面的等高线分布图,请问如何做?
请将程序写的详细一点, ...

40*40*40的数组比较大,估计你的附件白贴了。

下面是一个例子,可供参考。


\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\

生成一个数据
>> [x y z]=meshgrid(1:40);
>> C=sin((x.^2+y.^2+z)/20);

定义制定的斜面


1,三个点的坐标;
>> a=[20 20 20];
>> b=[26 26 26];
>> c=[38 10 22];

2,计算x-z平面与预制平面的夹角

>> der1=[0 1 0]; %x-z平面法相方向
>> der2=cross(b-a,c-a);%预制平面法向方向
>> der3=cross(der1,der2);%两平面交线方向
>> the=dot(der2,der1)/sqrt(sumsqr(der1)*sumsqr(der2));%两平面夹角


3,画出这两个平面,看看是不是落在那三个点上?

>> [xx zz]=meshgrid(-10:50);yy=ones(size(xx));
>> mesh(xx,yy,zz),hold on;hsp = mesh(xx,yy,zz);
>> rotate(hsp,der3,the*180/pi,[1 1 1])%旋转平面,如附件一
>> scatter3(20,20,20)
>> scatter3(26,26,26)
>> scatter3(38,10,22)


4,得到旋转后平面的数据
>> xd = get(hsp,'XData');
>> yd = get(hsp,'YData');
>> zd = get(hsp,'ZData');


5,画一下且过那三个点的等值线,如附件2

>> contourslice(x,y,z,C,xd,yd,zd)
>> hold on;
>> contourslice(x,y,z,C,[],1,[])
>> scatter3(20,20,20)
scatter3(26,26,26)
scatter3(38,10,22)

/////////////////////////////////////////////////////////////////////////////
2楼2009-10-14 19:16:43
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

wuqingming2003

木虫 (小有名气)

非常感谢你的回答,写的很详细,我明天试试看,再次感谢!
引用回帖:
Originally posted by hitzhang at 2009-10-14 19:16:



40*40*40的数组比较大,估计你的附件白贴了。

下面是一个例子,可供参考。


\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\

生成一个数据
>> [x y z]=meshgrid(1:40);
>> C=sin(( ...

3楼2009-10-14 22:14:29
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

wuqingming2003

木虫 (小有名气)

nono2009(金币+0,VIP+0):建议PM或引用回复该帖,以便别人及时知道你的message! 10-15 13:36
我用你说的方法试了一下,出现了点问题,我把程序写在下面,麻烦帮我看看哪里出错了,谢谢!
[path,fn]=uigetfile('*.txt','Open');
fp=fopen([fn,path],'r');
head=fscanf(fp,'%s',4);
data=fscanf(fp,'%f',[4,40*40*40]);
fclose(fp);
x=reshape(data(1,,[40,40,40]);
y=reshape(data(2,,[40,40,40]);
z=reshape(data(3,,[40,40,40]);
C=reshape(data(4,,[40,40,40]);
>> a=[20 20 20];
>> b=[26 26 26];
>> c=[38 10 22];
>> der1=[0 1 0]; %x-z平面法相方向
>> der2=cross(b-a,c-a);%预制平面法向方向
>> der3=cross(der1,der2);%两平面交线方向
>> the=dot(der2,der1)/sqrt(sumsqr(der1)*sumsqr(der2));%两平面夹角
>> [xx zz]=meshgrid(-10:50);yy=ones(size(xx));
>> mesh(xx,yy,zz),hold on;hsp = mesh(xx,yy,zz);
>> rotate(hsp,der3,the*180/pi,[1 1 1])%旋转平面
>> scatter3(20,20,20)
>> scatter3(26,26,26)
>> scatter3(38,10,22)
这样得到的结果中旋转后的平面并没有经过这三个点,如附件中的图所示
引用回帖:
Originally posted by hitzhang at 2009-10-14 19:16:



40*40*40的数组比较大,估计你的附件白贴了。

下面是一个例子,可供参考。


\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\

生成一个数据
>> [x y z]=meshgrid(1:40);
>> C=sin(( ...

4楼2009-10-15 12:12:23
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
普通表情 高级回复 (可上传附件)
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[找工作] 售SCI文章,我:8O5.5.1.O.54,科目齐全,可+急 +4 jCd0dEvKHShX 2026-08-29 5/250 2026-08-30 19:48 by hZiFeudZyoGR
[找工作] 售SCI一区T0P文章,我:8.O55.1.O.54,科目全,可十急 +3 jCd0dEvKHShX 2026-08-29 4/200 2026-08-30 19:35 by hZiFeudZyoGR
[基金申请] 投票:  有多少人是今天查系统知道结果的? +17 爱看书的可乐 2026-08-26 19/950 2026-08-30 19:07 by xiangy672
[公派出国] 售SCI一区T0P文章,我:8O.55.1.O.54,科目全,可伽急 +4 G6APbkg8SA6w 2026-08-29 5/250 2026-08-30 18:51 by hZiFeudZyoGR
[考博] 售SCI文章,我:8O5.5.1.O.54,科目齐全,可+急 +4 G6APbkg8SA6w 2026-08-29 5/250 2026-08-30 18:50 by hZiFeudZyoGR
[考博] 售SCI-T0P文章,我:8O.5.5.1.O.54,科目齐全,可+急 +4 gy1nBQXYQJqL 2026-08-29 6/300 2026-08-30 18:20 by hZiFeudZyoGR
[硕博家园] 售SCI一区T0P文章,我:8.O.55.1.O.54,科目齐全,可+急 +4 gy1nBQXYQJqL 2026-08-29 7/350 2026-08-30 17:45 by hZiFeudZyoGR
[考博] 售SCI一区T0P文章,我:8.O.55.1.O54,科目全,可伽急 +7 ASdOkHsho7FD 2026-08-28 11/550 2026-08-30 17:34 by hZiFeudZyoGR
[论文投稿] 售一区SCI文章T0P,我:8O.551.O54,科目全,可十急 +5 gy1nBQXYQJqL 2026-08-29 7/350 2026-08-30 11:51 by l0VvVHGBGRLv
[考博] 售SCI-T0P文章,我:8O.5.5.1.O.54,科目齐全,可+急 +3 ASdOkHsho7FD 2026-08-28 6/300 2026-08-30 11:10 by l0VvVHGBGRLv
[硕博家园] 售SCI一区文章,我:8.O.55.1.O.54,科目齐全,可伽急 +6 ASdOkHsho7FD 2026-08-28 11/550 2026-08-30 06:00 by ZPa0EcMwuECS
[基金申请] 国社科申报系统有变化 +3 kynobel 2026-08-23 3/150 2026-08-29 21:57 by 余韵清
[基金申请] 基金不中,共勉 +11 eulota 2026-08-26 11/550 2026-08-28 14:22 by 火星超人xi
[基金申请] 面上合作单位盖章 +5 ssyjh 2026-08-27 5/250 2026-08-27 20:50 by gdfollow
[基金申请] 基金未中,这种答复是模板吗? +5 zhaosm1982 2026-08-27 6/300 2026-08-27 16:00 by lfy8008
[基金申请] 为什么国自然不能直接公布 +4 bjdxyxy 2026-08-26 4/200 2026-08-26 13:12 by qingmu1201
[基金申请] 系统进不去 +4 yanglien 2026-08-26 5/250 2026-08-26 11:10 by wenfengw83
[基金申请] 在坚冰还盖着北海的时候,我看到了怒放的梅花。 (金币+10) +6 ziyangfang 2026-08-25 9/450 2026-08-25 20:26 by huagongfeihu
[基金申请] 某些机构,以效率低为荣,以效率低作为存在感 +9 yuleib84 2026-08-25 10/500 2026-08-25 17:14 by alexon
[基金申请] 没有任何消息-是不是就凉了 +9 图啦图啦 2026-08-24 10/500 2026-08-25 11:59 by 南海小哥
信息提示
请填处理意见