* 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>
* Added subpath offset
* Enhanced offset to produce smooth curves
* Lots of outline bugfixes
* Fixed failing unit tests
* Added subpath outline
* Refactor bezier offset and outline to return Subpaths
* Fix outline bug due to smooth joining and removed reduce optimization that causes jumping approximations
* Bugfix when subpath angle is acute but doesn't intersect
* Stylistic changes per review
* Stylistic changes per review and updated doc comments
---------
Co-authored-by: Hannah Li <hannahli2010@gmail.com>
Co-authored-by: Keavon Chambers <keavon@keavon.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>
* 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>
* Added Subpath constructor, iterator and length
* Asserted that subpaths of len < 2 cannot be closed. Added len() and comments
* Added subpath to_svg(), made structs public, made quadratic use either in_handle or out_handle
* add bezier handles
* Added basic interactivity and index traits
* Added SubPath interactivity
* Added svg styling
* Broke subpath impl across multiple files. More sylistic changes per review
* Fixed format error
* Added closed subpath to documentation page
* Modified subpath to_svg to use functional style
* Stylistic changes per review
* Fixed build errors
* More sylistic changes per review
* Moved svg commands to constants
* Moved formatting for svg arguments to ToSVGOptions
* Renamed files in git
* Even more stylistic changes per review
* Implement backend of extrema in bezier-rs
* Added extrema frontend
* Added extrema interface
* Wrapped extrema in filter function to remove points not on the curve
* Saved intermediate results while computing extrema
* Fixed extrema bug when a in cubic formula is 0
* Removed extra prints
* Fixed quadratic extrema regression
* Moved helper functions to utils file
* Fixed bug in solve linear
* Stylistic changes per review
* Sentence comments
Co-authored-by: Linda Zheng <thelindazheng@gmail.com>
Co-authored-by: Keavon Chambers <keavon@keavon.com>