We provide flexible support for our users to define the movement of a draggable node along a plane, such as a grid pattern where it will snap to the lines and only move along them and/or a bounding rectangle along a plane that the node must stay in for planar movements. It’d be helpful for them as they’re setting it up to be able to see the bounds or grid displayed in the scene as a ‘debug’ mode. We don’t know any information ahead of time so we need to be able to do it dynamically based on the information they give us.
A feature proposal would be to expose a new API or methods on the scene to add objects or geometry and then set style properties on those so that we can do simple things like this threejs example to draw lines. I just need simple object support for Object3D derived objects, but I could see people want support for all the BufferGeometry derived classes.
scene.userObjects:
{
add(id: string, object: THREE.Object3D), // add a single Object3D derived object to the scene with an id so that it can be removed
remove(id: string), // remove from the scene by id
clear(), // remove all the user objects
render() // so that we can add/remove multiple objects and render only once
}