From 4fadcade939f7063114118286f2e6542cff1291a Mon Sep 17 00:00:00 2001 From: Frank <91616163+softhack007@users.noreply.github.com> Date: Sun, 6 Oct 2024 19:59:59 +0200 Subject: [PATCH] fix for off-by-one error in Lissajous (float version) --- wled00/FX.cpp | 2 +- wled00/FX_2Dfcn.cpp | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/wled00/FX.cpp b/wled00/FX.cpp index 5b1f3515..a93c2843 100644 --- a/wled00/FX.cpp +++ b/wled00/FX.cpp @@ -5654,7 +5654,7 @@ uint16_t mode_2DLissajous(void) { // By: Andrew Tuline unsigned palIndex = (256*ylocn) + phase/2 + (i* SEGMENT.speed)/64; //SEGMENT.setPixelColorXY(xlocn, ylocn, SEGMENT.color_from_palette(palIndex, false, PALETTE_SOLID_WRAP, 0)); // draw pixel with anti-aliasing - color follows rotation // WLEDMM wu_pixel is 50% faster, and still lokks better - SEGMENT.wu_pixel(uint32_t(xlocn * (cols <<8)), uint32_t(ylocn * (rows <<8)), + SEGMENT.wu_pixel(uint32_t(xlocn * ((cols-1) <<8)), uint32_t(ylocn * ((rows-1) <<8)), CRGB(SEGMENT.color_from_palette(palIndex, false, PALETTE_SOLID_WRAP, 0))); } } else diff --git a/wled00/FX_2Dfcn.cpp b/wled00/FX_2Dfcn.cpp index 6ca95e13..34eefb58 100644 --- a/wled00/FX_2Dfcn.cpp +++ b/wled00/FX_2Dfcn.cpp @@ -466,8 +466,8 @@ void Segment::setPixelColorXY(float x, float y, uint32_t col, bool aa, bool fast } #else // replacement using wu_pixel - unsigned px = x * (virtualWidth() <<8); - unsigned py = y * (virtualHeight() <<8); + unsigned px = x * ((virtualWidth()-1) <<8); + unsigned py = y * ((virtualHeight()-1) <<8); wu_pixel(px, py, CRGB(col)); #endif }