JS版本的光谱波长转换RGBA颜色值的方法,在网上没找到,后来领导发来一个C++版本的,我对照着改为JS版,有需要的朋友 可以参考,代码如下:
<html>
<head><meta charset="utf-8"><meta name="viewport" content="width=device-width,initial-scale=1.0"></head>
<body>
<div id="mainDiv"></div>
<script>
// 指定波长转换成RGBA颜色
function lambdaToColor(lambda, gamma, intensityMax) {
if (typeof(gamma)=='undefined') {
gamma = 0.8; // double
}
if (typeof(intensityMax)=='undefined') {
intensityMax = 255.0; // double
}
var r, g, b, alpha; // double
if (lambda >= 380.0 && lambda < 440.0) {
r = -1.0 * (lambda - 440.0) / (440.0 - 380.0);
g = 0.0;
b = 1.0;
}else if (lambda >= 440.0 && lambda < 490.0) {
r = 0.0;
g = (lamb