Re: Class Heirarchy teaser

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
2 messages Options
Reply | Threaded
Open this post in threaded view
|

Re: Class Heirarchy teaser

nick hemsley
On 2/10/06, David Faught <[hidden email]> wrote:
It would be an interesting experiment to use a 3D graph heirarchy
layout like this as an alternative to the scrolly Navigator stuff at
the bottom of the Croquet screen, don't you think?  I think that the
Navigator was a kind of cool experiment itself, but it's a bit slow to
be really useful.  Adding mouseover TBillboard text, kind of like
balloon help, to your viewer would be cool, but it might be faster for
a Navigator alternative to have small but visible clues, or signposts,
always there.  What do you think?


I have been thinking about using trees for navigating heirarchial information/behaviours for a while now. While I dont think a full 3d tree approach would be usable for UI elements (the navigation would be way too slow/impossible), perhaps something akin to the TTree (I think that is the object name off the top of my head) object would work. The TTree object shows a binary tree in a 2d plane, therefore all elements of that tree are accessible to our 2d constrained mouse input. The TTree would need to be changed to allow for n children, instead of the binary tree at the moment.

To illustrate, how about a storyboard:

You click in the bottom-left (perhaps top-left if you are a gnome zealot) of the screen, your top-level tree of menu-options pops up rotated 45 degrees (i.e. the middle branch is heading towards the top-right of the screen), originating in the bottom-left

Any radial(?) movement outwards from the bottom-left corner causes the tree to move towards the bottom left & vice versa. any angular movement (i.e. up or down) causes either 1: the whole tree to rotate around the global axis 2: the tree to rotate around the current branches local position. I think the 2nd approach might be the best, especially with large trees.

Moving close to the end (i.e. a circular target zone) of a currently unexpanded branch, causes it to expand. that branch is now the local branch.

End storyboard

the mouse would also snap on to the nearest branch, so that any mouse-click would result in an action, instead of sometimes being lost to empty space.

This would allow the same functionality as the normal menu systems of today, but with a more fluid mouse movement, as opposed to navigating sharp corners (which I overcome using the hotkeys anyway) like we do today.

Hmm.. perhaps a proof of concept would be more intelligible..:)

I also like the _idea_ of squeaks halo's (but not the feel). perhaps trees to navigate the different menu-options imbued in objects would be nice too. Your halo would be a circle of spheres/3d icons around an object, transformed so that the circle is facing front-on to the avaters position.

bring on hedgehog
Reply | Threaded
Open this post in threaded view
|

Re: Class Heirarchy teaser

nick hemsley

Adding mouseover TBillboard text, kind of like
balloon help, to your viewer would be cool, but it might be faster for
a Navigator alternative to have small but visible clues, or signposts,
always there.  What do you think?


In the final incarnation of the class 'viewer', i had a TBillboard under each node, which was always there, but having a popup would probably be better UI wise. speed-wise i dont think anyone would notice, but creating the billboard dynamically in response to an click/mouseover event would use less memory for large trees. Probably not an issue either way, more a question of usability.

By the way, it is on squeaksource at http://www.squeaksource.com/CodeVis.html