一个关于openGL中颜色映射函数的问题

时间:2020-12-27 23:29:53
最近接手一个三维地震数据显示的程序,需要做进一步开发。这个程序是由openGL做的。里面有些颜色映射函数我不知道具体是什么意思,函数体里面的那些数字究竟代表什么意思,现在把函数贴下来,请大家看一下,希望大家能够解释一下这些函数,非常感谢!
inline float redTrans(float c) //颜色映射函数
{
float r;
if(c>0.4)
{
r=2.0*c-0.6;
}
else
{
r=0.5*c;
}




return r;
}

inline float greenTrans(float c)
{
float r;
if(c>0.25)
{
if(c>0.75)
{
r=-0.5*c+0.5;
}
else
{

if(c<0.5)
{
r=2.0*c-0.375;
}
else
{
r=-2.0*c+1.525;
}


}
}
else
{
r=0.5*c;
}


return r;
}

inline float blueTrans(float c)
{
float r;
if(c>0.3)
{
r=0.0;
}
else
{
r=-1.7*c+0.6;
}
return r;
}

inline float alphaTrans(float c)
{
float r;
if(c>0.25)
{
r=0.3*c+0.7;
}
else
{
r=2.5*c;
}
return r;
}

4 个解决方案

#1


希望大家能够提供帮助

#2


希望知道的能够提示一下,谢谢了

#3


还是没有人知道吗?

#4


是一个控制R、G、B颜色值的工作,要看参数c的值,这种事情调试一下就知道了。

#1


希望大家能够提供帮助

#2


希望知道的能够提示一下,谢谢了

#3


还是没有人知道吗?

#4


是一个控制R、G、B颜色值的工作,要看参数c的值,这种事情调试一下就知道了。