我使用此命令绘制网格
trimesh(F, X, Y, Z,...
'EdgeColor','k','FaceColor','flat','FaceVertexCData',c, ...
'CDataMapping','scaled','FaceLighting','flat','BackFaceLighting','lit');
camlight;
当我这样做时,大多数面孔都按照预期点亮,但有些面孔似乎没有点亮;即,当我将视图旋转到其他角度并改变光线位置(因为它取决于相机)时,我仍然看不到它们被照亮。
在我看来,这似乎是法线的经典问题(即我的法线是相反的方向),尽管我认为在trimesh
的调用中,参数'BackFaceLighting','lit'
会照顾到它。
有什么想法吗?
答案 0 :(得分:0)
尝试使用以下命令将渲染器设置为opengl
:
set(gcf,'Renderer','opengl');
它通常比标准渲染器更好地处理3D。