I’m working on a 3D mindmap tool to provide everyone a simple way to express what is in its mind, and share an universal representation of those data.
code : GitHub - scenaristeur/agent
working app : agent
3D mindmap on your Solid pod - Getting started in 4 mins - YouTube
data is stored as jsonld on a Solid Pod, or ipfs, gundb
an exemple with data stored on a Solid Pod : agent
Now i want to be able to connect those nodes to a spiral/helix according to nodes representing timestamps when the node have been created, and/or to other timestamps if the node represent an event.
My idea was to use an exponential spiral/helix with 0 represent “now” and exponential timestamps from now : 1 seconds, 1 minute, 1 hour, 1 day, 1 week, 1 month, 1 year… and so on.
“minus 1 hour” saying the event has happend 1 hour ago, “plus 1"hour” saying the event will happend in 1 hour.
And it would be great if the “timestamp node” could swipe, accord to the new time every 10s.
for now the exponential idea is not essential, we can stay with one node per hour or day for example.
i’ve tweak the code CSS3D periodic table at three.js examples to add a spiral
and now i can connect “Data nodes” to “Timestamp nodes”
but i’ve now an issue when I click on different vizualisations (table/sphere/helix…) provided by the example,
The links that pointed to a “timestamp node” does not update and stay in place altought the “timestamp node” is moved according to the TWEEN transformation.
the issue is more described here with screenshots and links to my code.
it seems that i have five sets of “timestamp nodes” and i’m a little bit lost with all of them as i only wanted to have one.
And it would be great if they were periodically updated, as the 0 node should normally walk through the spiral as each spended second.
I’ve just seen the notion of layer in threejs, but i think i will lost the translation effect if i add/remove “timestamp nodes” from a layer.
So my first question is how could I use TWEEN transformation using only one set of nodes, and update the links to them ?
second : what is the best way to update the walking 0 node ?