![](/img/trans.png)
[英]Matlab ezmesh - plotting a plane that is a function of one variable
[英]Edit Matlab's `ezmesh` properties
我正在尝试绘制一个表面,它是具有不同属性的线框。 首先,我使用ezsurf
,我认为最重要的是可以使用ezmesh
。 但是,看起来ezmesh
具有白色FaceColor
且不透明。 我试图更改该属性,但没有成功。 这是我的工作示例。
那么,如何编辑ezmesh
的属性?
clc;clear all; close all;
pmin=-.25*pi;
pmax=1.25*pi;
syms x t
%---Surface---%
figure(1)
n=60;
colormap([.95 .95 .95])
hold on
ezsurf((x-2)*cos(t),(x-2)*sin(t),x,[pmin,pmax,-.75,1],n)
ezsurf((x-2)*cos(t),(x-2)*sin(t),-x,[pmin,pmax,-.75,1],n)
ezsurf((-sqrt(1-x.^2)-3.41)*cos(t),(-sqrt(1-x.^2)-3.41)*sin(t),x,[pmin,pmax,-1,1],n)
ezsurf((sqrt(1-x.^2)-3.41)*cos(t),(sqrt(1-x.^2)-3.41)*sin(t),x,[pmin,pmax,0.75,1],n)
ezsurf((sqrt(1-x.^2)-3.41)*cos(t),(sqrt(1-x.^2)-3.41)*sin(t),x,[pmin,pmax,-1,-0.75],n)
shading interp
view(185,10)
axis equal
h=light('Position',[0 10 0])
%----------------%
%---Wireframe---%
%I'd like something as follows
%set(FromNowOn,'FaceColor','none','EdgeColor','k')
n=10;
ezmesh((x-2)*cos(t),(x-2)*sin(t),x,[pmin,pmax,-.75,1],n)
ezmesh((x-2)*cos(t),(x-2)*sin(t),-x,[pmin,pmax,-.75,1],n)
ezmesh((-sqrt(1-x.^2)-3.41)*cos(t),(-sqrt(1-x.^2)-3.41)*sin(t),x,[pmin,pmax,-1,1],n)
ezmesh((sqrt(1-x.^2)-3.41)*cos(t),(sqrt(1-x.^2)-3.41)*sin(t),x,[pmin,pmax,0.75,1],n)
ezmesh((sqrt(1-x.^2)-3.41)*cos(t),(sqrt(1-x.^2)-3.41)*sin(t),x,[pmin,pmax],[-1,-0.75],n)
%--------------%
解决方案 : 请勿使用ezmesh
或ezsurf
! 那样生活才美好。
clc;clear all; close all;
pmin=-.25*pi;
pmax=1.25*pi;
%---Surface---%
figure(1)
colormap([.65 .65 .65])
hold on
[x,t]=meshgrid(-.75:0.01:1,pmin:.1:pmax);
surf((x-2).*cos(t),(x-2).*sin(t),x)
surf((x-2).*cos(t),(x-2).*sin(t),-x)
[x,t]=meshgrid(-1:0.01:1,pmin:.1:pmax);
surf((-sqrt(1-x.^2)-3.41).*cos(t),(-sqrt(1-x.^2)-3.41).*sin(t),x)
[x,t]=meshgrid(.75:0.01:1,pmin:.1:pmax);
surf((sqrt(1-x.^2)-3.41).*cos(t),(sqrt(1-x.^2)-3.41).*sin(t),x)
[x,t]=meshgrid(-1:0.01:-.75,pmin:.1:pmax);
surf((sqrt(1-x.^2)-3.41).*cos(t),(sqrt(1-x.^2)-3.41).*sin(t),x)
shading interp
view(185,10)
axis equal
h=light('Position',[0 10 0])
%---------------------%
%-- Wireframe---%
[x,t]=meshgrid(-.75:0.25:1,pmin:.1:pmax);
mesh((x-2).*cos(t),(x-2).*sin(t),x,'Edgecolor','k','FaceColor','none')
mesh((x-2).*cos(t),(x-2).*sin(t),-x,'Edgecolor','k','FaceColor','none')
[x,t]=meshgrid(-1:0.1:1,pmin:.1:pmax);
mesh((-sqrt(1-x.^2)-3.41).*cos(t),(-sqrt(1-x.^2)-3.41).*sin(t),x,'Edgecolor','k','FaceColor','none')
[x,t]=meshgrid(.75:0.05:1,pmin:.1:pmax);
mesh((sqrt(1-x.^2)-3.41).*cos(t),(sqrt(1-x.^2)-3.41).*sin(t),x,'Edgecolor','k','FaceColor','none')
[x,t]=meshgrid(-1:0.05:-.75,pmin:.1:pmax);
mesh((sqrt(1-x.^2)-3.41).*cos(t),(sqrt(1-x.^2)-3.41).*sin(t),x,'Edgecolor','k','FaceColor','none')
%---------------%
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.