osgSim.ScalarsToColors 是 OpenSceneGraph 中用于将标量数据转化为颜色数据的类。
该类主要用于给图形中添加颜色,例如地形、气象等领域中经常会用到。
#include <osgSim/ScalarsToColors>
继承自 osg::Object。
ScalarsToColors();
virtual void apply(osg::FloatArray& input,osg::Vec4Array& output)const=0;
将输入的 osg::FloatArray 数组 input 转化为 osg::Vec4Array 数组 output。
该类有一个子类 osgSim::Oscillator,用于生成震荡效果的颜色。
Oscillator 使用的公式类似于正弦函数,计算形式为:
output=color1+(color2-color1)*pow(sin((_phase)+time*_frequency),_amplitude);
其中 color1 和 color2 是指定的两个颜色值, _frequency 是频率,_phase 是相位差,_amplitude 是波幅。