关于如何在Matlab中构造三维几何,以及三棱柱实例演示
Matlab 中如何构造三棱柱
在Matlab中,如果想要进行散点连线构造三维立体几何,首先想到的还是plot3,但是因为plot3通常用来绘制火柴图,而构造三棱柱还需要有先后次序的连线,因此最终选择了矩阵更为清晰的patch函数。
1.先确定顶点坐标
代码为
V1=[-1,0,2;-1,4,0;-1,0,0;1,0,2;1,4,0;1,0,0];
这里做说明,首先声明的点便是1点,接下来顺序依次改变。
如图所示
(三棱柱顶点次序图)
2.确定顶点坐标次序
代码为
F1=[1,2,3,1;1,2,5,4;1,3,6,4;3,2,5,6;4,6,5,4];
根据此次序便可以连接出一个如上图所示的三棱柱了。
3.patch函数的引用
代码如下
1.clear %清除工作区数据
2.clc %清除命令行窗口数据
3.figure() %调用窗口进行显示
4.V1=[-1,0,2;-1,4,0;-1,0,0;1,0,2;1,4,0;1,0,0]; %顶点位置次序定义
5.F1=[1,2,3,1;1,2,5,4;1,3,6,4;3,2,5,6;4,6,5,4]; %顶点连接成面次序定义
6. patch('Faces',F1,'Vertices',V1,'FaceColor','none',...'LineWidth',1,'EdgeColor','red');%patch函数:Faces组成面的点的连接顺序,Vertices是组成这些面的顶点,FaceColor是组成面的颜色,LineWidth是线宽的意思,EdgeColor是边线颜色的意思
7. grid minor; %添加网格
8. axis([-2 2 0 9 0 5]); %设置x,y,z轴的最大最小值范围
9. xlabel('x轴'); ylabel('y轴');zlabel('z轴'); %设置各个轴的名字
10. set(gca,'XDir','reverse')%使X轴正方向反向
11. set(gca,'YDir','reverse')%使Y轴正方向反向
附录
而最终的代码,因为设计了两个三棱柱在坐标系中,而且有相关确定位置,所以最终的成型代码如下,有兴趣的可以参考。
clear
clc
figure()
V1=[-1,0,2;-1,4,0;-1,0,0;1,0,2;1,4,0;1,0,0];F1=[1,2,3,1;1,2,5,4;1,3,6,4;3,2,5,6;4,6,5,4];V2=[-1,5,2;-1,9,0;-1,5,0;1,5,2;1,9,0;1,5,0;];F2=[1,2,3,1;1,2,5,4;1,3,6,4;3,2,5,6;4,6,5,4];patch('Faces',F1,'Vertices',V1,'FaceColor','none',...'LineWidth',1,'EdgeColor','red');patch('Faces',F2,'Vertices',V2,'FaceColor','none',...'LineWidth',1,'EdgeColor','red');grid minor;axis([-2 2 0 9 0 5]);xlabel('x轴'); ylabel('y轴');zlabel('z轴');
set(gca,'XDir','reverse')
set(gca,'YDir','reverse')
关于如何在Matlab中构造三维几何,以及三棱柱实例演示相关推荐
- matlab 三维y轴平面图,#如何在excel中绘制三维坐标系?#excel怎么画图平面坐标图...
用excel绘制曲线图时如何进行坐标轴转换 点"插入"->"图表"->"XY图","子图表类型"选择&quo ...
- matlab怎么画三维坐标的二维图,excel怎么画二维坐标表格图(如何在excel中绘制三维坐标系?)...
在excle中怎么把二维图形变成三维图形 你说的是图表吗,如果是的话就这样操作 excel2007以上版本:选中图表-点击设计选项卡-最左面有更改图表类型-选择合适的类型-确定 excel2003也是 ...
- matlab 对话框保持,如何在matlab中创建输入对话框?(How to create Input dialog box in matlab?)...
如何在matlab中创建输入对话框?(How to create Input dialog box in matlab?) 我想在matlab中创建输入对话框. 我在MATLAB中执行简单的加法运算. ...
- 如何在MATLAB中调用(运行)“用Python写成的函数或脚本”
如何在MATLAB中调用"用Python写成的函数或脚本",首先要确保MATLAB知道咱们的Python解释器的位置在哪里. 如果安装了Python的时候把Python加入了系统环 ...
- matlab中拟合函数中的gian值,如何在Matlab中优化基本周期图法对随机信号进行的功率谱估计...
首都师范大学学报(自然科学版)第27卷 第5期2006年10月 Journal of Capital N ormal University (Natural Science Edition ) V o ...
- matlab矩阵指定行最大值,求Matlab程序:在2行矩阵中,如何求第1行最大值和第2行相应的最大,请问,如何在MATLAB中编写程序实现求两矩阵A*B,A.*...
导航:网站首页 > 求Matlab程序:在2行矩阵中,如何求第1行最大值和第2行相应的最大,请问,如何在MATLAB中编写程序实现求两矩阵A*B,A.* 求Matlab程序:在2行矩阵中,如何求 ...
- 如何在 Matlab 中启用 UTF-8 编码
如何在 Matlab 中启用 UTF-8 编码 文章目录 定位问题 为什么应该使用 UTF-8 怎么让 Matlab 使用 UTF-8 一点吐槽 [注意]最后更新于 October 12, 2020, ...
- matlab三维 旋转矩阵,matlab中的三维坐标系与旋转
1. matlab中的三维坐标系 matlab中的三维坐标系是使用的右手坐标系: 输入以下代码: >> plot3(0,0,0) >> xlabel('axis X') > ...
- 二次函数 用matlab,这个二次函数如何在MATLAB中拟合出来?
这个二次函数如何在MATLAB中拟合出来? 关注:278 答案:2 手机版 解决时间 2021-01-15 20:02 提问者夕阳再美ソ也会落幕 2021-01-15 17:12 (q+1/1.1 ...
最新文章
- C语言static 具体分析
- 风险管理、收尾管理和知识产品管理
- 多线程编程实践——实现生产者、消费者模型
- PHP 批量生成静态html
- java定时器检测状态_实用代码| shell脚本实现定时检查应用状态
- spring boot actuator服务监控与管理
- ACM ICPC 2017 Warmup Contest 2[菜鸡选手的成长]
- 常见排序算法详解 (收藏!)
- 【Kafka】Kafka Producer整体架构概述及源码分析
- FFmpeg — 屏幕录制器材
- 深入浅出MFC笔记(5)
- Multisim 10软件介绍
- 各种卫星产品数据总结
- javascript 使用zlib发送wss请求,接收blob,并解压
- 中文输入法中光标跟随能力触发的浏览器事件探究
- PdShell16扫描内容不符合数据库规范整合
- FPGA信号处理系列文章——定点数据截位处理
- 北京亚控笔试题目(2014年10月9日)
- 扒开思派健康招股书:大数据的面子,“卖药”的里子
- 嵌入式linux与pc串口传输文件基于lrzsz
热门文章
- HTTP状态码的含义
- 自制拖把机器人_懒出新境界:可以自己洗拖布的机器人
- web应用程序安全性测试_Web应用程序导航菜单的可访问性
- 新媒体跨考计算机,跨专业考研求助
- 使用eNSP配置防火墙USG6000v双机热备(VGMP+HRP+OSPF+NAT)
- A Monocular SLAM System Leveraging Structural Regularity in Manhattan World
- 数学运算符“异或”的妙用
- Goolge Colab免费GPU服务器使用教程
- 自定义ImageView实现圆形图片
- android仿微信聊天功能,Android高仿微信聊天界面代码分享