VTK中改变默认的vtkAxesActor坐标轴上X,Y,Z的字体颜色,从白色改为其他颜色

时间:2021-12-13 10:01:48

在VTK中绘图需要使用到坐标轴,所以决定使用vtkAxesActor这个类在窗口中绘制坐标轴,但是由于我预先设置的窗口背景色为白色,

而vtkAxesActo坐标轴字体X,Y,Z三个字的字体的默认颜色也为白色,当颜色混在一起,白色看不清楚,如下

VTK中改变默认的vtkAxesActor坐标轴上X,Y,Z的字体颜色,从白色改为其他颜色

在出现上面的情况的时候决定修改vtkAxesActor本身的字体颜色,但是vtkAxesActor本身并不提供这一功能,所以通过查看vtkAxesActor的源代码,发现可以通过

GetXAxisCaptionActor2D()函数来获得vtkCaptionActor2D()对象,然后可以调用GetProperty()->SerColor();来修改默认字体的颜色


其中,需要另外包含头文件

#include "vtkCaptionActor2D.h"
#include "vtkProperty2D.h"

然后将原有的代码修改如下

//修改vtkAxesActor默认的字体颜色,Axes为vtkAxesActor的对象指针
Axes->GetXAxisCaptionActor2D()->GetProperty()->SetColor(1,0,0);//修改X字体颜色为红色
Axes->GetYAxisCaptionActor2D()->GetProperty()->SetColor(0,2,0);//修改Y字体颜色为绿色
Axes->GetZAxisCaptionActor2D()->GetProperty()->SetColor(0,0,3);//修改Z字体颜色为蓝色

修改后,其效果如下

VTK中改变默认的vtkAxesActor坐标轴上X,Y,Z的字体颜色,从白色改为其他颜色


VTK这种开源工具的优势体现了。

开源的真的好。。。