Matlab surface isolines

5 views (last 30 days)
Chris
Chris on 20 Jul 2011
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?

Answers (1)

Sean de Wolski
Sean de Wolski on 20 Jul 2011
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 Comment
Chris
Chris on 20 Jul 2011
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.

Sign in to comment.

Community Treasure Hunt

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

Start Hunting!