gpt4 book ai didi

c++ - 为什么显示的颜色不是 VTK 中预期的颜色?

转载 作者:搜寻专家 更新时间:2023-10-31 01:37:08 27 4
gpt4 key购买 nike

问题是我传递给 vtkProperty 的 RGB 值没有生成预期的颜色。例如 RGB (146, 110, 218) 标识的 slateblue 显示为白色。

相关代码如下:

vtk.vtkLineSource line = new vtkLineSource();
line.SetPoint1(0.0, 0.0, 0.0);
line.SetPoint2(50, 50, 0.0);

vtkPolyDataMapper mapper = new vtkPolyDataMapper();

mapper.SetInput(line.GetOutput());

vtkActor lineActor = new vtkActor();
lineActor.SetMapper(mapper);

double r = 146.0;
double g = 110.0;
double b = 218.0;

vtkProperty property = new vtkProperty();
property.SetColor(r, g, b);
lineActor.SetProperty(property);

最佳答案

此行为的原因是 VTK 使用标准化颜色值。

所以解决方案非常简单:我们必须将值除以 255

[...]

double r = 146.0 / 255.0;
double g = 110.0 / 255.0;
double b = 218.0 / 255.0;

vtkProperty property = new vtkProperty();
property.SetColor(r, g, b);
lineActor.SetProperty(property);

关于c++ - 为什么显示的颜色不是 VTK 中预期的颜色?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34634778/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com