Creating Matlab plot with multiple mesh models, only one with CDATA

29 次查看(过去 30 天)
Hi Everyone,
I am looking for a way to plot three mesh models using trisurf but I want one of the mesh models to be colored using CData, but the other two to be a single color using FaceColor. Is there a simple way to do this?
-Katherine
EDIT:
My data is in face vertex format and plotting is done using trisurf.

回答(1 个)

Walter Roberson
Walter Roberson 2020-4-9
surf(x1, y1, z1, c1);
hold on
surf(x2, y2, z2, c2);
surf(x3, y3, z3, 'facecolor', 'g')
hold off
  4 个评论
Katherine Beaulieu
Hi Walter,
This is the code I am using:
figure;
trisurf(skull_f,skull_v(:,1),skull_v(:,2),skull_v(:,3),gradient_color)
hold on
trisurf(cs_tri,'facecolor','w')
hold on
trisurf(mid_tri,'facecolor','k');
But I still am only getting one color for the skull mesh. My color data is a 5000x1 vector, the same size as x,y, and z.
Walter Roberson
Walter Roberson 2020-4-9
You need to pass the x, y, z coordinates for the second and third trisurf(). It will not inherit them from the first call.

请先登录,再进行评论。

类别

Help CenterFile Exchange 中查找有关 Optimization 的更多信息

标签

Community Treasure Hunt

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

Start Hunting!

Translated by