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

Add origin to the Transform node (and visualize it with an overlay) #1530

Closed
0HyperCube opened this issue Dec 20, 2023 · 1 comment
Closed

Comments

@0HyperCube
Copy link
Member

0HyperCube commented Dec 20, 2023

Design and implement the new pivot system containing a pivot stored in layer space (?) instead of normalised bounding box (so a pivot of (0.5, 0.5) would no longer be in the middle of the bounding box as it is currently). Note that this will break things such as rotating around the pivot, transformations applied by tools, etc. Careful thought should be applied as to how exactly the pivot should be stored.

"Pivot" concept is split into "reference point" and "pivot"

  • Reference point: after the graph has rendered, this is the point from which we measure X and Y location
  • Pivot: an Option<> which starts out as None, it must be set (either by a Set Pivot node or a widget next to anything, like Scale or Rotation, which requires it)

Also we likely don't use the nine-square widget for pivot to ensure people think of it only as the reference point concept

So the Transform node changes like so:

  • "Pivot" becomes "Reference Point"
  • Rotation and Scale get a "Pick Pivot" widget which lets you place a pivot in the artwork, it's required if the pivot is None
  • Also: add skew? And non-affine?

Goals: don't have shift caused by upstream changes, thus we can't use the bounding box as a pivot reference, instead we have to explicitly have the user set any desired pivots


As part of combining issue #534 into here, here's the description that was part of it:

  • Folders have transforms?
  • Showing skew in properties panel
  • Non-affine perspective transforms (dragging each corner of the bounding box to an arbitrary place, except concave)
  • Inconsistent behaviour between lines / polylines and other shapes (render_index in simple_shape)
  • Allowing outline width to be scaled / not as desired
  • How to display layer & folder(if applicable) transforms in properties panel (i.e. do we show layer transform or bounding box, and how is it transformed etc.)
  • Clear reference for contributes / artists
@0HyperCube 0HyperCube added Architecture Involves architecture or engineering work or discussion Time Sensitive Graphene Involves the node graph system/engine used by Graphite labels Dec 20, 2023
@github-project-automation github-project-automation bot moved this to Short-Term in Task Board Dec 25, 2023
@Keavon Keavon moved this from Short-Term to In-Progress Tasks in Task Board Feb 15, 2024
@Keavon Keavon changed the title Redo pivot system and redo transformations Transform system redesign Feb 15, 2024
@Keavon Keavon moved this from In-Progress Tasks to Short-Term in Task Board May 25, 2024
@Keavon Keavon added Feature and removed Time Sensitive Architecture Involves architecture or engineering work or discussion Graphene Involves the node graph system/engine used by Graphite labels Jun 2, 2024
@Keavon Keavon changed the title Transform system redesign Transform system improvements Jun 9, 2024
@Keavon Keavon changed the title Transform system improvements Add origin to the Transform node (and visualize it as an overlay) Aug 4, 2024
@Keavon Keavon changed the title Add origin to the Transform node (and visualize it as an overlay) Add origin to the Transform node (and visualize it with an overlay) Aug 4, 2024
@Keavon Keavon removed the Rust label Dec 30, 2024
@Keavon Keavon removed the Feature label Jan 19, 2025
@Keavon
Copy link
Member

Keavon commented Feb 13, 2025

Superseded by #2225.

@Keavon Keavon closed this as completed Feb 13, 2025
@github-project-automation github-project-automation bot moved this from Short-Term to Completed This Milestone in Task Board Feb 13, 2025
@Keavon Keavon removed this from Task Board Feb 13, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

3 participants