Color CalcColor(float temperature) { Color colorOne = new Color(); if (temperature < 35) { colorOne = new Color(0, 1, 0.5f, 0); colorOne = Color.Lerp(new Color(0, 1, 0.5f, 0), new Color(0, 0.5f, 1, 1f), (temperature) * 0.05f); } else if (temperature >= 35 && temperature < 70) { colorOne = Color.Lerp(new Color(0, 0.5f, 1f, 1f), new Color(0, 1, 0, 1f), (temperature - 35) * 0.04f); } else if (temperature >= 70 && temperature < 95) { colorOne = Color.Lerp(new Color(0, 1, 0, 1f), new Color(1, 1, 0, 1f), (temperature - 70) * 0.04f); } else if (temperature >= 95 && temperature < 120) { colorOne = Color.Lerp(new Color(1f, 1f, 0f, 1f), new Color(1f, 0f, 0f, 1f), (temperature - 95) * 0.04f); } else { colorOne = new Color(1f, 0f, 0f, 1f); } return colorOne; }
时间: 2024-04-06 20:33:12 浏览: 58
color-temp:将颜色转换为开尔文温度,然后返回
这段代码是一个函数,输入一个温度值,返回一个对应的颜色值。代码中使用了 Unity 引擎中的 Color 类型来表示颜色,通过一些条件语句和插值计算,将温度值映射到不同的颜色上。具体来说,当温度小于 35 度时,颜色从绿色到蓝色渐变;当温度在 35 至 70 度之间时,颜色从蓝色到绿色渐变;当温度在 70 至 95 度之间时,颜色从绿色到黄色渐变;当温度在 95 至 120 度之间时,颜色从黄色到红色渐变;当温度大于等于 120 度时,颜色为红色。
阅读全文