mirror of
				https://github.com/esphome/esphome.git
				synced 2025-10-30 22:53:59 +00:00 
			
		
		
		
	[light] Fix transitions with `lerp` (#9269)
				
					
				
			This commit is contained in:
		| @@ -86,16 +86,16 @@ class LightColorValues { | |||||||
|   static LightColorValues lerp(const LightColorValues &start, const LightColorValues &end, float completion) { |   static LightColorValues lerp(const LightColorValues &start, const LightColorValues &end, float completion) { | ||||||
|     LightColorValues v; |     LightColorValues v; | ||||||
|     v.set_color_mode(end.color_mode_); |     v.set_color_mode(end.color_mode_); | ||||||
|     v.set_state(esphome::lerp(completion, start.get_state(), end.get_state())); |     v.set_state(std::lerp(start.get_state(), end.get_state(), completion)); | ||||||
|     v.set_brightness(esphome::lerp(completion, start.get_brightness(), end.get_brightness())); |     v.set_brightness(std::lerp(start.get_brightness(), end.get_brightness(), completion)); | ||||||
|     v.set_color_brightness(esphome::lerp(completion, start.get_color_brightness(), end.get_color_brightness())); |     v.set_color_brightness(std::lerp(start.get_color_brightness(), end.get_color_brightness(), completion)); | ||||||
|     v.set_red(esphome::lerp(completion, start.get_red(), end.get_red())); |     v.set_red(std::lerp(start.get_red(), end.get_red(), completion)); | ||||||
|     v.set_green(esphome::lerp(completion, start.get_green(), end.get_green())); |     v.set_green(std::lerp(start.get_green(), end.get_green(), completion)); | ||||||
|     v.set_blue(esphome::lerp(completion, start.get_blue(), end.get_blue())); |     v.set_blue(std::lerp(start.get_blue(), end.get_blue(), completion)); | ||||||
|     v.set_white(esphome::lerp(completion, start.get_white(), end.get_white())); |     v.set_white(std::lerp(start.get_white(), end.get_white(), completion)); | ||||||
|     v.set_color_temperature(esphome::lerp(completion, start.get_color_temperature(), end.get_color_temperature())); |     v.set_color_temperature(std::lerp(start.get_color_temperature(), end.get_color_temperature(), completion)); | ||||||
|     v.set_cold_white(esphome::lerp(completion, start.get_cold_white(), end.get_cold_white())); |     v.set_cold_white(std::lerp(start.get_cold_white(), end.get_cold_white(), completion)); | ||||||
|     v.set_warm_white(esphome::lerp(completion, start.get_warm_white(), end.get_warm_white())); |     v.set_warm_white(std::lerp(start.get_warm_white(), end.get_warm_white(), completion)); | ||||||
|     return v; |     return v; | ||||||
|   } |   } | ||||||
|  |  | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user