Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[FEATURE REQUEST] Improvements to pixel editor #604

Open
theloveofcode opened this issue Nov 11, 2022 · 3 comments
Open

[FEATURE REQUEST] Improvements to pixel editor #604

theloveofcode opened this issue Nov 11, 2022 · 3 comments
Assignees
Labels
enhancement New feature or request

Comments

@theloveofcode
Copy link

First off, I LOVE UVtools and I recommend it a lot. However, I have some ideas that would make the Pixel Editor easier to use and more possibly more performant.

  1. Remember my brush choices. Right now, when I close the application, my brush choices are lost.
  2. (Perhaps this could be configurable) Don't paint green additions over white pixels, and don't paint red subtractions over black pixels, when antialiasing isn't in use.
  3. Collapse operations. If I paint over the same area green, red, green, red, green, red, you'll see that the operation count grows dramatically. This can be collapse to only list/compute the final value of a given pixel. (Maybe only applicable when antialiasing isn't in use.)
  4. Introduce the option to draw lines - Most of the time, I'm just trying to draw skinny lines to connect islands, or to drill out tubes for suction cups, etc. Especially when drawing on many layers at once, the performance is pretty bad and my "lines" end up janky. If I could just click to set the starting vertex, click to select the ending vertex, and have the line created for me, it would be a better experience.

I love this application! I pretty much never have failed prints now. Thank you!

@theloveofcode theloveofcode added the enhancement New feature or request label Nov 11, 2022
@github-actions
Copy link

This is your first time submitting an issue with UVtools 🥳Please review your issue and ensure that the submit template was followed, the information is complete, and not related to any other open issue. It will be reviewed shortly. Debugging is very important and make the program better. Thanks for contributing and making the software better! 🙌

@sn4k3
Copy link
Owner

sn4k3 commented Nov 11, 2022

  1. I can implement a save the previous used values and restore on reopen
  2. Possible but there's a reason for current implementation, discard pixels or checking pixels is a slow task, the paint would hang up with a big delay. So it's cheaper to just redraw the shape without any check and pre+pos/processing. This check is only optimal for single pixel.
  3. Before i prevent same operation on same pixel but that raise the problem where you can't add pixels, them remove some and if by mistake you fix by add pixels. That way you are not restricted to 1 or 2 passes per pixel (centers).
  4. Already there, check line brush. However not as start and end vertex. Maybe a improvement for latter. Drawing is still very raw on UVtools.
    image

sn4k3 added a commit that referenced this issue Feb 10, 2024
- **UI:**
  - **Pixel editor:**
    - (Add) Shortcut: Ctrl/⌘+E to de/activate pixel editor
    - (Add) Profiles (#604, #831)
    - (Improvement) Use DataGrid row header to show the operation count instead of process and store indexes for the objects
    - (Fix) Drawings and Text controls are not stretched to fill the available space to the right
  - (Improvement) macOS: Shortcuts Ctrl+0, Ctrl+R, Ctrl+F changed to use command key(⌘) instead of control key
- (Improvement) Dynamic layer height, Lithophane, PCB exposure and Phased exposure: Use better performant `HasNonZero` instead of `CountNonZero` to check if there are any pixels to process
- (Improvement) Update demo file with the newest version of the format and use SL1S printer instead
- (Change) Extract file contents shortcut: From Ctrl+E to Ctrl+Shift+E
- (Fix) Files with different resolution information from empty layers were generating wrong image creation for such layers (#833)
- (Fix) Possible throw an exception about invalid roi when using Roi and/or masks under some tools
- (Fix) Skeletonize memory leak
- (Fix) System.NullReferenceException when accessing reallocated layers (#835)
- (Fix) Unable to save profiles for "Light bleed compensation", "Phased exposure"
- (Fix) PrusaSlicer printer "UVtools Prusa SL1S SPEED": Fix the display width and height, they were flipped
- (Upgrade) AvaloniaUI from 11.0.7 to 11.0.9
@sn4k3
Copy link
Owner

sn4k3 commented Feb 10, 2024

Profiles are now implemented

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

2 participants