示例

可视化函数

v=xe(−x2−y2−z2)

(在范围 –2 ≤ x ≤ 2, –2 ≤y ≤2, – 2 ≤ z ≤2)上:

[x,y,z] = meshgrid(-2:.2:2,-2:.25:2,-2:.16:2);

v = x.*exp(-x.^2-y.^2-z.^2);

xslice = [-1.2,.8,2];

yslice = 2;

zslice = [-2,0];

slice(x,y,z,v,xslice,yslice,zslice)

colormap hsv

在任意角处切片

也可以创建在任意平面中定向的切片。要完成此操作,请执行以下步骤:在三维体的域中创建一个切片曲面 (surf, linspace)。

相对于坐标轴定向该曲面 (rotate)。

使用该数据在该三维体中绘制切片平面。

例如,以下语句使用旋转平面切分第一个示例中的三维体。将这些命令放在 for 循环中可沿 z 轴使该平面“经过”该三维体。注意:

从 R2014b 开始,您可以使用圆点表示法来设置和查询属性。如果您使用的是早期版本,请改用 set 和 get 函数,例如 xd = get(hsp,'XData')。

[x,y,z] = meshgrid(-2:.2:2,-2:.25:2,-2:.16:2);

v = x.*exp(-x.^2-y.^2-z.^2);

figure

colormap hsv

for k = -2:.05:2

hsp = surf(linspace(-2,2,20),linspace(-2,2,20),...

zeros(20) + k);

rotate(hsp,[1,-1,1],30)

xd = hsp.XData;

yd = hsp.YData;

zd = hsp.ZData;

delete(hsp)

slice(x,y,z,v,[-2,2],2,-2) % Draw some volume boundaries

hold on

slice(x,y,z,v,xd,yd,zd)

hold off

view(-5,10)

axis([-2.5 2.5 -2 2 -2 4])

drawnow

end

下图展示了同一切片曲面在经过该三维体时的三个位置。

使用非平面曲面切分

可以使用任何曲面切分该三维体。此示例通过在该三维体中传递球形切片曲面查看在上一示例中创建的三维体。注意:

从 R2014b 开始,您可以使用圆点表示法来设置和查询属性。如果您使用的是早期版本,请改用 set 和 get 函数,例如 xd = get(hsp,'XData')。

[xsp,ysp,zsp] = sphere;

slice(x,y,z,v,[-2,2],2,-2)

colormap hsv

for i = -3:.2:3

hsp = surface(xsp+i,ysp,zsp);

rotate(hsp,[1 0 0],90)

xd = hsp.XData;

yd = hsp.YData;

zd = hsp.ZData;

delete(hsp)

hold on

hslicer = slice(x,y,z,v,xd,yd,zd);

axis tight

xlim([-3,3])

view(-10,35)

drawnow

delete(hslicer)

hold off

end

下图说明了球形切片曲面在经过该三维体时的三个位置。

matlab 一维数组 切片,三维体切片图 - MATLAB slice - MathWorks 中国相关推荐

  1. Matlab:可视化标量三维体数据的方法

    Matlab:可视化标量三维体数据的方法 什么是标量三维体数据? 显示 MRI 数据的方法 更改数据格式 显示 MRI 数据的图像 显示二维等高线切片 显示三维等高线切片 将等值面应用于 MRI 数据 ...

  2. matlab:一维数组

    1:如何生成一维数组 方法一:用:生成等差向量 >> a=2:3:20 a =2 5 8 11 14 17 20 方法二:linspace() 函数 >> a=linspace ...

  3. matlab一维数组截取,Matlab创建一维数组的具体操作讲解

    原创Matlab创建一维数组的具体操作讲解 编辑:小葫芦 来源:PC下载网时间:2019-12-25 11:54:41 最近不少网友表示自己刚刚入手Matlab软件,还不会创建一维数组,而下面这篇文章 ...

  4. matlab创建数组对象,MATLAB一维数组(向量)的定义

    在 MATLAB 中,向量和矩阵主要是由数组表示的. 数组运算始终是 MATLAB 的核心内容,并且 MATLAB 区别于其他编程语言最大的优势就是数组计算.这种编程的优势使得计算程序简单.易读,程序 ...

  5. Matlab一维数组及其应用

    目录 1.一维数组 2.与一维数组相关的函数 3.一维数组在二维绘图中的应用 4.在已存在的图形上添加新图形 5.在一个图形窗口中绘制多个子图 6.一维数组在一元多项式运算中的应用 1.一维数组 数值 ...

  6. matlab寻访一维数组,MATLAB 一维数组的创建和寻访

    3.2 一维数组的创建和寻访 3.2.2 一维数组的子数组寻访和赋值 [ * 例 3.2.2 -1 ]子数组的寻访( Address ). rand('state',0) %把均匀分布伪随机发生器置为 ...

  7. MATLAB一维数组的创建与元素提取

    1.一维数组(向量)的创建 1.1直接输入法 从键盘直接输入元素,列与列之间的数据用逗号或空格分隔,行与行之间的数据用分号分隔. #生成列向量* a=[1;2;3] #生成列向量 b=[1,2,3] ...

  8. 用MATLAB编程正弦稳态相量图,matlab课程设计--利用MATLAB对线性电路正弦稳态特性分析...

    matlab课程设计--利用MATLAB对线性电路正弦稳态特性分析 课程设计任务书 学生姓名: 专业班级: 指导教师: 刘 新 华 工作单位:信息工程学院 题 目: 利用MATLAB对线性电路正弦稳态 ...

  9. matlab单元数组与结构体的区别,MATLAB中的结构体和单元数组

    MATLAB中的结构体和单元数组 一.结构: x.real=10 x.imag=5 增加字段 x.scale=1 使用struct函数 s=struct('field1',values1,'field ...

最新文章

  1. AI吉尼斯:那些你不知道的人工智能之“最”
  2. react+express+mongodb搭建个人博客
  3. XMNetworking 网络库的设计与使用
  4. 花椒web端实时互动流媒体播放器
  5. RAC的搭建(一)--安装环境准备
  6. AbstractQueuedSynchronizer理解之三(Semaphore)
  7. mac mysql密码错误_解决mac 下mysql安装后root用户登录密码错误问题
  8. linux部署redis集群遇到的问题
  9. TensorFlow 深度学习中文第二版(初稿)
  10. 百度推出挖掘机自动驾驶技术:操作不输蓝翔
  11. LG_2051_[AHOI2009]中国象棋
  12. 大数据平台搭建及搭建过程出错解析
  13. 【空间分析】4 探索性分析
  14. MediaChooser图库浏览器
  15. 海康录制视频文件无法播放以及FFmpeg最新版下载
  16. 使用MinUI组件库
  17. VM ware安装Cent OS系统并配置静态IP
  18. 童鞋们,我模拟了Google的电吉他,可录音,支持键盘
  19. 大学校园IP网络广播-厂家基于局域网的大学校园IP广播设计指南
  20. MySql---关键字 limit和offset

热门文章

  1. python关于二手房的课程论文_用Python对2019年二手房价格进行数据分析
  2. 二手房比新房贵的原因
  3. 无需工具:腾讯视频.qlv格式转换成.mp4格式的方法!
  4. 如何删除WhatsApp消息
  5. 关于 vue项目 中实现导入Excel表 + 预览生成的Excel
  6. 采购订单历史表EKBE和物料凭证表MSEG的关系
  7. 串口之COMMTIMEOUTS结构体详解
  8. NOIP5424. 【NOIP2017提高A组集训10.25】凤凰院凶真 LCIS 方案
  9. Day17(集合)学习记录(HashSet集合 HashMap集合)
  10. Apache POI简介