有一次遇到这种情况:vtkactor的GetProperty()->SetColor()之后actor的颜色不起作用,解决方案如下:
Mapper->ScalarVisibilityOff();
Actor->GetProperty()->SetColor();
原因:生成actor的polydata直接或间接设置过映射成颜色的标量数据,此时只要告知mapper 忽略标量数据,再次设置颜色属性就能正确显示出来了。
记录两个小问题:
1、vtkactor的默认颜色为白色。
2、颜色可以直接作为一种标量属性数据,设置到相应的点或者单元数据中,这也是最直接的一种图形着色方式,在点属性与单元属性同时存在时,没有特殊指定的情况下,默认使用点颜色进行颜色渲染。