Conversation
Adds a visual crosshair marker that shows the current RGB position on the color gradient canvas. The crosshair consists of: - Horizontal line showing lightness position - Vertical line showing hue position - Center circle marker The crosshair updates automatically when the RGB color changes and follows mouse interaction on the gradient canvas. Generated with [Devin](https://devin.ai) Co-Authored-By: Devin <158243242+devin-ai-integration[bot]@users.noreply.github.com>
Changes from upstream's linear blending to additive mixing for W, A, UV: - White: brightens all RGB channels equally (1.0, 1.0, 1.0) - Amber: adds R=1.0, G=0.49, B=0.0 (using upstream's 0xFFFF7E00) - UV: adds R=0.58, G=0.0, B=0.83 (using upstream's 0xFF9400D3) This creates additive mixing where emitters brighten while adding their tint, rather than fading to the pure emitter color. QML changes: - Add mixedColor property with additive mixing logic - Update WAUV sliders to update both local values and fixture output - Use mixedColor in selected color preview via MultiColorBox primary Generated with [Devin](https://devin.ai) Co-Authored-By: Devin <158243242+devin-ai-integration[bot]@users.noreply.github.com>
(moved to separate feature branch) This reverts commit 2d943b0ba13f27ba1b35227a00363e21f0f7976b.
Generated with [Devin](https://devin.ai) Co-Authored-By: Devin <158243242+devin-ai-integration[bot]@users.noreply.github.com>
Contributor
Author
|
Oops I forgot to mention, the crosshair commit lives in another branch now and got thus reverted here - I'll file a separate PR for that. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Description
Summary of Changes:
Use additive spectral mixing for W,A and UV in ColorToolFull resulting color box as well as in 2/3D preview
Look at the color box below the W,A and UV channel sliders in ColorToolFull tab. Current code blends from the RGB value obtained trom the gradient area towards the chosen slider's color, when raised.
This change implements spectral additive mixing and thus matches the real fixture's resulting color much better in the preview's RGB color space.
I've been working on this from time to time since my latest PR in this area, a few weeks ago, with help from Devin AI in Windsurf. It took a lot of trial and error to arrive at this state which I believe has it right now.
There are remaining issues with the scaling of the RGB gradient box in relation to what the mouse cursor grabs as color, I haven't found yet why that happens, from my tests it apparently has nothing to do with hidpi scaling as it remains offsetting at a KDE Plasma screen scaling of 1.00 and also QLC UI scaling at 1.00. I'll continue working on that, as time permits.
Checklist
{on a new line for functions and class definitions.Testing
Test Cases:
Test Results:
Additional Notes
Current behaviour (example with added Amber on top of a pure Cyan):


With additive blending, Also Amber example:
Thank you for your contribution to QLC+!