How to get the angles across a 3D surface?
3 次查看(过去 30 天)
显示 更早的评论
I want to create a colorbar for the angle variations across an STL 3D surface. How can this be done effectively such as in the attached image?

0 个评论
回答(1 个)
DGM
2025-4-4
I think this is what was meant.
unzip pringle_top.stl.zip % for the forum
% an STL file
T = stlread('pringle_top.stl');
% get the elevation angle for each face
fn = faceNormal(T);
th = acosd(fn(:,3)./vecnorm(fn,2,2));
% it's easier to set up scaled FVCData for a trisurf()
trisurf(T,'facevertexcdata',th);
axis equal; grid on; view(10,28)
xlabel('X'); ylabel('Y'); zlabel('Z')
colorbar
0 个评论
另请参阅
产品
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!
