* Intial work
* Improve miter and add round join
* Get arcs to go opposite direction
* Add cap and other refactors
* Rename joint to join, fix some bugs
* Fix single point issue
* Clean up
* Fix iframe sizes and update UI
* Address comments and handle single point outline
* Rename variables, fix branches in outline
* Address comments
Migrated the import shortcut used in Svelte from @ to @graphite for better future package compatibility
Co-authored-by: Andre Roelofs <andreroelofsai@gmail.com>
Co-authored-by: Keavon Chambers <keavon@keavon.com>
* Made wasm imports async in demos
* remove hidden characters to pass linting
* Swapped import to use async / await
---------
Co-authored-by: Thomas Cheng <contact.chengthomas@gmail.com>
* Create helper for converting d to t values
* Add euclidean option for tangent and normal
* Modified bezier functions signatures to accept ComputeType
* Stylistic changes per review
* Added ComputeType documentation
* Renamed ComputeType to TValue
* Fixed comments
* Fixed failing unit tests
* Code review
* Fix comments in code review
* Renamed compute_type_to_parametric to t_value_to_parametric
---------
Co-authored-by: Linda Zheng <thelindazheng@gmail.com>
Co-authored-by: Keavon Chambers <keavon@keavon.com>
* Converted bezier example to vanilla js component
* Indent with tabs
* Add sliders
* Converted bezier example pane to vanilla js
* Implement the radio buttons + fixes
* Converted SubpathExample to vanilla js
* Converted SubpathExamplePane to vanilla js
* Removed vue components
* Remove App.vue
* Remove vue and other dependencies
* Minor fix in main.ts
* Added insert to subpath features
* Entry point tweaks
* Rename "example" to "demo"
* Kebab-case file names (except classes)
Co-authored-by: Hannah Li <hannahli2010@gmail.com>
Co-authored-by: Keavon Chambers <keavon@keavon.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>
* 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>
* 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>
* 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>