【发布时间】:2018-09-13 13:56:48
【问题描述】:
我正在尝试确定 3D 坐标系中各个点的颜色。我想要这样做的方法是根据该点的 Z 坐标值确定特定 3D 点的 RGB 值,对于具有最大 Z 值的点只有红色,对于具有最小 Z 值的点具有只有蓝色。但我不确定如何在所有点之间转换 R、G 和 B 的值。
谢谢
【问题讨论】:
-
彩色立方体?有点像 3D 颜色选择器?
-
类似的,我希望它用红色突出 z 的较高值和用蓝色突出 z 的较低值,并在值之间有一个很好的过渡。
-
通常你有这样的颜色渐变(作为刻度颜色),或者只是作为渐变函数(具有开始和结束值(颜色),例如还有中间值(如 0))。工具提供了这样的功能。手工不太灵活(但在你的情况下:要么:用白色插值(中间),要么插值极端(每个通道)。这应该足够了。为了真正好,你需要一个设计师,更好的功能(也许通过保持相同的亮度和饱和度)。
-
@GiacomoCatenazzi 您能否提供一些实施您建议的示例。
-
例如matplotlib.org/users/colormapnorms.html CSS(HTML)和 SVG 也实现了这种颜色分级,因此各种绘图库都支持它们,因为它们基于或复制了这种图形 API。检查你的图形工具,或者如果你想控制,就像我告诉你的那样:从开始到结束颜色的线性插值(每个通道,所以 R、G、B 分别)。