forked from Wicklets/wick-editor
-
Notifications
You must be signed in to change notification settings - Fork 3
Open
Labels
enhancementNew feature or requestNew feature or request
Description
Description
It'd sure be nice to be able to skew properly. My next task is to modify Wick to internally support skew transformations.
Affected files
- The root of all this is EditorCore.jsx. This is where the attributes are retrieved.
- Value fetching gets delegated to Selection.js, which references View.Selection.js.
- This does some calculations on the info in Paper.SelectionWidget.js, where the root of the selection tool lives.
- View.Frame.js updates the clips' transformations.
- View.Clip.js, which manages the paper.js objects, uses Clip.js for all rendering information.
- All clip transforms are represented by Transformation.js.
Steps
- Refactor updateTransformation to expose the scale+shear factors.
- Change all the transformation functions to update wickTransformData.
- Change _applyDrawableChanges to take values from wickTransformData.
- Add a property boxSkewX/Y to paper.Selection.js (used like boxRotation).
- Add skew properties in Transformation.js, Clip.js, paper.Selection.js, View.Selection.js, and Selection.js (as a string name and as a property).
- Change View.Clip.js to render skewing and set up group.data.wickTransformData.
- Change View.Frame.js to update clip transformations using wickTransformData.
Notes
Transformations should be in a scale-shear-rotate order.
Skew X/Y is dependent on width and height.
SelectionWidget changes the position, scaling, and rotation of the paper.js objects, which View.Frame depends on. Change View.Clip to store scale, rotation, and skew information in group.data, so that View.Frame can see the full transformation.
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
enhancementNew feature or requestNew feature or request