1
我遇到了如何在兩個顏色矢量之間淡出的問題。如何通過值在兩個向量之間淡出?
這兩種顏色:
Tinker::Vect3d<float> startCol(255,0,0);
Tinker::Vect3d<float> endCol(0,0,255);
我也有從0-100 「T1」 的傳入值。
而且我改掉之一:
for(int i=0;i<nLEDs;i++){
const float fade = (255/100) * (t1 * sensitivity);
Tinker::Vect3d<float> finalColour(startCol*a + endCol*(1-a));
FTLEDColour col = { finalColour[0] , finalColour[1] , finalColour[2] };
}
連續循環的運行。我試圖從紅色開始,並基於傳入值面對綠色,所以0是紅色,100是綠色。
乘以255/100是錯誤的,如果你的輸入值是0..100,而你想縮放到0..1則需要除以100. –
我發現使用不同顏色的顏色漸變效果更好空間比RGB。 - http://stackoverflow.com/a/20469911/106092 –
如果有人想使用Tinker庫,你可以在git hub上找到它https://github.com/Nicola17/ArduinoTinkerLibrary –