Enable support for VTREE
Expected Behavior
The ability to use VTREE from the WEB UI has been removed. This should be restored once VTREE has been fully tested, and ready for integration.
Tasks:
- enhance the core to accept an alternative modeling library, i.e. vtree
- enhance the web to support alternative serializations of geometry, i.e. vtree
Actual Behavior
Disabled
Steps to Reproduce the Problem
- Not possible
Specifications
- Version: V2
- Platform: all
- Environment: all
Generalized performance improvement like this is very hard to make and may require changes to internals.
Internal jscad engine should focus on own improvements, and maybe provide some internal changes to help with this, but such library for vtree optimization should be written separately, and user can include functions form it instead of jscad/modeling.
Then when implementing it as a wrapper we should see what can be changed in jscad internally to make this possible without sacrificing jscad functionality or stability.
I am also thinking about a different wrapper that only stores info about what needs to be created, a sort of CSG tree, that then can be
- evalueated with low precision for initial preview (fake booleans, low poly count)
- evaluated further in separate worker to give final peview (actual booleans done, little better precision)
- if desired have a third evaluation when exporting (if export is configured with higher precision than final preview)
This way the vtree does not need to compare vertices, but only the input parameters for each part of CSG tree, and reuse tohse that are untouched form previous evaluation.