-
-
Notifications
You must be signed in to change notification settings - Fork 455
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 Boolean Operations as WASM Modules to Two.js #596
Comments
With Boolean Operations implemented it would be possible to resolve issue #585 |
This issue would be the first explorations of larger scale WASM use described in issue #552 |
This grant seems like a good opportunity to get some resources to achieve this feature: https://developer.chrome.com/blog/advanced-web-apps-fund/ |
Hello. Just found your library. Regarding boolean operations, you should look at lib2geom: https://gitlab.com/inkscape/lib2geom/ I think is one of the few libraries that support bezier curves. Most libraries convert them in tiny line segments then apply the boolean operations. Hope this helps you. From their description:
|
This is epic, thanks for sharing. I should explore Two.js simply being the rendering output for all this functionality. Would trim down and speed up quite a few operations. |
@jonobr1 That's the idea. This library just does the geometry processing, leaving the user to do the rendering part. If you're only interested in boolean operations: https://gitlab.com/inkscape/lib2geom/-/blob/7a0d8698d6eb4f33a93c4f7fa895771d34170d54/src/2geom/intersection-graph.cpp
|
Is your feature request related to a problem? Please describe.
Boolean operations are a common, but computationally expensive and mathematically complicated operations in vector drawing suites.
Describe the solution you'd like
For the types of projects Two.js aspires to help make possible, it's important to have these features:
Essentially these (taken from Adobe Illustrator):
Additional context
Paper.js has great examples of these running in JavaScript: http://paperjs.org/examples/boolean-operations/ • It would be prudent to port these to Rust as a separate library and compile them to WASM into Two.js as extras.
The text was updated successfully, but these errors were encountered: