Matlab surface isolines

5 vues (au cours des 30 derniers jours)
Chris
Chris le 20 Juil 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?

Réponses (1)

Sean de Wolski
Sean de Wolski le 20 Juil 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 commentaire
Chris
Chris le 20 Juil 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.

Connectez-vous pour commenter.

Community Treasure Hunt

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

Start Hunting!

Translated by