Matlab surface isolines

6 次查看(过去 30 天)
Chris
Chris 2011-7-20
Hi, I have a triangular surface that I'm plotting using the trimesh() function. Each node of my mesh has a value that I am representing using the figure colorscale. What I would like to do is add "isolines" to the surface so you can get a better since of the data. However, when I try using plot3() to plot these lines on top of the surface, most of them are not visible. Does anyone know how I can plot visible lines on top of a surface in matlab?

回答(1 个)

Sean de Wolski
Sean de Wolski 2011-7-20
EDIT per comments:
Of course; set the facealpha property of the mesh to a small number (1 is opaque, 0 is transparent). This will allow your line to be visible:
[x,y]=meshgrid(1:15,1:15); %ml example from doc
tri = delaunay(x,y);
z = peaks(15);
trimesh(tri,x,y,z,'facealpha',0.2)
hold on
plot3([1 30],[1 30],[0 pi])
  1 个评论
Chris
Chris 2011-7-20
Unfortunately, using line() instead of plot3() gives the same behavior. If I create a small pyramid using trimesh() and test either of these commands with a sample line, the line ends up being visible only where it does not overlap with one of the triangle faces.

请先登录,再进行评论。

类别

Help CenterFile Exchange 中查找有关 Surface and Mesh Plots 的更多信息

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by