* Add manipulator
* Add manipulator group
* Add UI
* Address comments and rebase
* Renamed add_manipulator_group to insert
Co-authored-by: Rob Nadal <robnadal44@gmail.com>
* Added subpath project function
* Set appropriate project default in single manipulator group case
* Lint
* Return optional from subpath project + stylistic changes per review
Co-authored-by: Keavon Chambers <keavon@keavon.com>
* Setup tauri component for graphite editor
Integrate graphite into tauri app
Split interpreted-executor out of graph-craft
* Add gpu execution node
* General Cleanup
* add slider to subpath component + change evaluate to take an enum
Co-authored-by: Rob Nadal <RobNadal@users.noreply.github.com>
wip - add intersect to subpath, TODO fix bug
Co-authored-by: Rob Nadal <RobNadal@users.noreply.github.com>
add unit tests to subpath intersections
stress, testing
Co-authored-by: Hannah Li <hannahli2010@gmail.com>
* add parametric eval impl to subpath
* add line intersection to subpath
* Uncomment and #[ignore] disabled tests
* Reorder a few imports
* change subpath:eval slider to radio button
* fixed bug with solve_cubic, fixed unit tests, improved intersection accuracy
* fix failing test
Co-authored-by: Hannah Li <hannahli2010@gmail.com>
Co-authored-by: Keavon Chambers <keavon@keavon.com>
* Move the Subpath type to graphene-std
* Add the transform subpath node
* Delete selected nodes
* Inserting node list on right click
* Add several bitmap manipulator nodes
* Convert add node to use f64
* Add posterize node
* Rename names randomly
* Fix naming
* Exposure node
* Fix typo
* Adjust exposure node range
* Comment out vector nodes
* Adjust exposure range again
* Posterise as ints
* Rename input
* Use >= in the to hsl function
* Add enum to evaluate for differenciating compute type
* Add euclidean parameterization and update styling in the UI
Co-authored-by: Rob Nadal <robnadal44@gmail.com>
* Update usage of evaluate in graphite
* Add description
* Code review changes
* Update tests
* Improve ComputeType ergonomics
* Large code review/cleanup pass
Co-authored-by: Rob Nadal <robnadal44@gmail.com>
Co-authored-by: Keavon Chambers <keavon@keavon.com>
* Implement offset and reverse
Co-authored-by: Rob Nadal <robnadal44@gmail.com>
* Initial work on graduated outline
Co-authored-by: Rob Nadal <robnadal44@gmail.com>
* Handle linear case for graduated scale
* Added skewed outline, fixed graduated scale hourglass bug
* Removed test code
* Update comments
* Fix linting issue
* Improve comments
* Comment fixes
Co-authored-by: Hannah Li <hannahli2010@gmail.com>
Co-authored-by: Keavon Chambers <keavon@keavon.com>
* Add function to rotate around a point
* Update svg
* Improve rotation line-to-center styling
* Add second angle of lines
Co-authored-by: Keavon Chambers <keavon@keavon.com>
* Convert constructor to use svg
* Convert the through_points functions to svg
* Convert length, lut, derivative, and tangent from canvas to svg
* Fixed bug when t1 == t2 in split
* Converted split and trim to use svg representation, and swapped slider options default to use quadratic options
* Convert normal and curvature to use svg representation in bezier-rs-demos
* Convert the project function to use svg representation in bezier-rs-demos
* Convert the local_extrema, bbox, and inflections to use svgs
* Add text offset constants
* Fix typo
Co-authored-by: Robert Nadal <Robnadal44@gmail.com>
Co-authored-by: Keavon Chambers <keavon@keavon.com>
* Change Bezier to_svg to include handles and endpoints
* Move params into brackets of format macro, remove unused comment
* Use write macro instead of format
* Fix path for watched directory
* Refactor functions to remove ToSVGOptions
* Refactor bezier lib file into a separate folder
* Add better implementation comments
* Update import of Subpath from bezier-rs
* Add comment to describe compare.rs
* Remove printlns and adjust spacing