opentecture / mindmapping

Mindmapping with Three.js
https://opentecture.github.io/mindmapping
MIT License
15 stars 2 forks source link

Demo: Multiple Movable Objects #24

Closed theo-armour closed 6 years ago

theo-armour commented 6 years ago

Story

@opentecture/the-brains

Multiple Movable Objects

image

Can we have multiple random movable objects using the Three.js TransformControls? And, if so, is the complexity of the workflow at a low enough level to be usable?

This example indicates a positive response

Notes

This is another sandbox experiment. Perhaps you could say it's parallel to previous efforts as opposed to a successor.

The code is MUCH simpler with straight lines instead of polylines. For now we should proably sticck to straight lines and add the polylines in once things start to settle down

@afomi

Am I correct in thinking that you prefer the arrow-driven movement - as used here - over the free form movement of objects in MindMap 3D R5.2?

afomi commented 6 years ago

@theo-armour

Being able to move each node in 3d space makes sense.

A good implemetation UX-wise will be key. I think we can consider adding this feature in as simply as possible - free transform tools on the selection of a node. More interactions will be added as we go.

I'm not sure I follow you on the arrow driven movement issue. I did have thoughts about the UI control difficulty of moving 3d items in space and thought about limiting movement to a 2d plane - that would have to be toggled in 3 ways (x, y, z). Those details can live in another Issue.

Is the code for polylines in? Or just straight lines? If we have the complex code, we should consider keeping the style of line as an option. Otherwise, simple straight lines are good enough for now.

afomi commented 6 years ago

I've incorporated basic line drawing into the /build, in its Demo Mode

The niceties in the implementation, like HideCancelTransform are note in this build and can be addressed as separate Issues.

Here's the basic lines drawing, and the X, Y, Z coordinates.

I was also able to connect what I originally hoping for: discrete X, Y, Z editing - which is how TransformControls works out of the box 😄

boxes

theo-armour commented 6 years ago

@afomi

Looks really good. More comments tomorrow.