MATLAB 三维曲面

1.平面网格数据的生成

        用矩阵X、Y分别存储每一个小矩形顶点的x坐标和y坐标,矩阵X、Y就是该矩形区域的xy平面网格坐标矩阵

在 matlab 中,产生平面区域内的网格坐标矩阵有两种方法

  1. 利用矩阵运算生成
  2. 利用meshgrid函数生成

示例1:

 

 

 X和Y相同位置上的元素如X(3,2)、Y(3,2)是区域的第三行第二列网格点的坐标(3,5)

[X,Y] = meshgrid(x,y);

其中,参数x,y为向量,存储网格点的坐标为X、Y为矩阵

示例二:绘制空间曲线


2.绘制三维曲面函数

  1. mesh(x,y,z,c)
  2. surf(x,y,z,c)

其中,x、y是网格坐标系矩阵,z是网格点上的高度矩阵,c用于指定不同高度下的曲面颜色,c省略时,颜色的设定正比于图形的高度。

示例:绘制三维曲面 z = xe ^-x^2 - y^2

 

 

  1.  mesh(x,c)
  2. surf(x,c)

当x、y坐标省略时,z矩阵的第二维下标当作x轴坐标,z矩阵的第一下标当作y轴坐标

如:

 

 

  1. 带等高线的三维网格曲面函数meshc
  2. 带底座的三维网格曲面函数meshz
  3. 带有等高线的曲面函数
  4. 具有光照效果的曲面函数surf1

示例:用上述四种函数绘制 z = (x-1)^2 + (y-2)^2 - 1 的曲面图

 

 


3.标准三维曲面

  1.  sphere 函数
  2.  cylindear 函数
  3.  peaks 函数

(1)[x,y,z] = sphere(n)

产生3个(n+1)阶方阵,采用这3个矩阵可以绘制出圆心位于原点,半径为1的单位球体

(2)[x,y,z] = cylindear(R,n)

其中,参数R是一个向量,存放柱面各个等间隔高度上的半径,n表示在圆柱上有n个间隔点,默认有20个间隔点

(3)

  1. peaks(n)
  2. peaks(V)
  3. peaks(x,y)
  4. peak

示例:绘制柱面,花瓶和圆锥面

 

 


4.fmesh函数和fsurf函数

  1. fsurf(funx,funy,funz,uvlims)
  2. fmesh(funx,funy,funz,uvlims)

其中,funx,funy,funz代表定义曲面x,y,z坐标的函数,通常采用函数句柄的形式,uvlims为funx,funy,funz的自变量的取值范围,用4元向量[umin,umax,vmin,vmax]描述,默认为[-5,5,-5,5]

示例:绘制螺旋曲面

 

 

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值