查看: 270|回复: 3|关注: 0

[已解决] 两个三维隐函数求交线的问题

[复制链接]

新手

29 麦片

财富积分


050


2

主题

8

帖子

0

最佳答案
本帖最后由 小白菜111 于 2020-5-24 09:51 编辑


复制代码

  1. [/backcolor][indent]f=@(x,y,z)(24423119*cos(x))/1000000 - (2827*y)/1000 - (402*z)/125 - (3988491*sin(x))/500000 - (1527*z.*cos(x))/500 - (1033*y.*cos(x))/200 + (1033*z.*sin(x))/200 - (1527*y.*sin(x))/500 + z.^2/2 + y.^2/2 + 88556823303088083361/3518437208883200000;[/indent][indent]g=@(x,y,z)(1973*z.*cos(x))/500 - (1441*y)/500 - (1468443*cos(x))/50000 - (69297847*sin(x))/1000000 - (2243*z)/200 - (1033*y.*cos(x))/200 + (1033*z.*sin(x))/200 + (1973*y.*sin(x))/500 + z.^2/2 + y.^2/2 + 64477912719761099367/17592186044416000000;[/indent][indent]h=implicitsurf(g,[0 20],[-20 30],[-10 35],100);[/indent][indent]set(h,'AmbientStrength',.5);%可以设置各种效果 [/indent][indent]hold on;%可以添加图形[/indent][indent]h=implicitsurf(f,[0 20],[-20 30],[-10 35],100);[/indent][indent]colormap hsv; set(h,'AmbientStrength',.8,'FaceAlpha',.5);%可以设置各种效果[/indent][indent]view(20,30);[/indent][indent]shading interp;[/indent][indent]camlight,lighting gouraud; alpha(0.5);[/indent][/size][/indent][indent][backcolor=rgb(242, 242, 242)]程序代码
复制代码














已经画出了曲面,想画出这两个曲面的交线,怎么实现

两个三维曲面

两个三维曲面
回复主题 已获打赏: 0 积分

举报

新手

29 麦片

财富积分


050


2

主题

8

帖子

0

最佳答案
 楼主| 发表于 2020-5-24 09:49:16 | 显示全部楼层
为什么复制过来的代码出现乱七八糟的东西了
回复此楼 已获打赏: 0 积分

举报

新手

29 麦片

财富积分


050


2

主题

8

帖子

0

最佳答案
 楼主| 发表于 2020-5-24 09:54:35 | 显示全部楼层

  1. f=@(x,y,z)(24423119*cos(x))/1000000 - (2827*y)/1000 - (402*z)/125 - (3988491*sin(x))/500000 ...
  2. - (1527*z.*cos(x))/500 - (1033*y.*cos(x))/200 + (1033*z.*sin(x))/200 - (1527*y.*sin(x))/500 + z.^2/2 + y.^2/2 ...
  3. + 88556823303088083361/3518437208883200000;
  4. g=@(x,y,z)(1973*z.*cos(x))/500 - (1441*y)/500 - (1468443*cos(x))/50000 - (69297847*sin(x))/1000000 ...
  5.     - (2243*z)/200 - (1033*y.*cos(x))/200 + (1033*z.*sin(x))/200 + (1973*y.*sin(x))/500 + z.^2/2 + y.^2/2 ...
  6.     + 64477912719761099367/17592186044416000000;
  7. h=implicitsurf(g,[0 20],[-20 30],[-10 35],100);
  8. set(h,'AmbientStrength',.5);%可以设置各种效果
  9. hold on;%可以添加图形
  10. h=implicitsurf(f,[0 20],[-20 30],[-10 35],100);
  11. colormap hsv; set(h,'AmbientStrength',.8,'FaceAlpha',.5);%可以设置各种效果
  12. view(20,30);
  13. shading interp;
  14. camlight,lighting gouraud; alpha(0.5);

  15. 程序代码
复制代码
回复此楼 已获打赏: 0 积分

举报

论坛优秀回答者

5

主题

2338

帖子

706

最佳答案
  • 关注者: 196
发表于 2020-5-28 07:24:14 | 显示全部楼层 |此回复为最佳答案
Mike Garrity有篇文章谈到绘制隐函数曲面交线的实现方法的,每步的说明参见
https://blogs.mathworks.com/grap ... face-intersections/
懒得看的话就直接去下载 Leif Persson 据该文章原理写的代码,直接调用他编写的 isocurve3 函数就是了
https://www.mathworks.com/matlab ... r-implicit-surfaces
提问请:①准确描述问题②提出你的思考(等着抄作业的一律锁帖)③提供代码文本而非截图④及时反馈
回复此楼 已获打赏: 0 积分

举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

站长推荐上一条 /4 下一条

快速回复 返回顶部 返回列表