Main Page | Report this Page
Computers Forum Index  »  Computer - Graphics (Algorithms)  »  Visualizing rotation data over time...
Page 1 of 1    

Visualizing rotation data over time...

Author Message
Dave...
Posted: Thu Oct 22, 2009 12:53 am
Guest
Hi all,

I am brainstorming ways of displaying to the user the orientation of
an object over time in as compact and meaningful way as possible. I
thought I would see what others have tried and used.

I was thinking of having a 2D graph where the x axis is time, but am
open to other ideas. For the graph, I can think of several ways:

Euler Angles - i.e., have three lines along the time graph, one for
each of the individual euler angle values. This is most compact, but
strange things happen toward the poles.

Quaternions - Not as compact, and don't freak out as much. However, I
would probably have to put special code in to handle dual values
(i.e., Q represents the same rotation as -Q)

Axis Angles - As compact as Quaternions, and also have the same
duality problem as quaternions, but also have the problem of angle x
representing the same orientation as x + 2 pi.

3x3 Rotation Matrix - Not compact in the least. The upside is that
there is no duality problem, no singularities, none of that special
case handling that other rotation representations have. Or am I
missing something?

Thanks.

Dave
 
Carsten...
Posted: Thu Oct 22, 2009 7:12 am
Guest
On 22 Okt., 02:53, Dave <thedaverud... at (no spam) gmail.com> wrote:
Quote:
Hi all,

I am brainstorming ways of displaying to the user the orientation of
an object over time in as compact and meaningful way as possible. I
thought I would see what others have tried and used.

If you'r going through the trouble of putting numbers into some visual
display, why not 'paint' the vector itself?
I don't know weather accessing pixels on a surface has become easier
lately, or weather I just have been hm .. slow .. But, it's
available.
An ordinary surface (D2) is not the complicated 3D you would like, but
when you've only got one item to draw, it's a pretty moderat problem
to make it look '3D' .. draw the 'head' and the 'rod' in the order
called for (pointing in or out), and let them be drawn in different
colors/tones.

Carsten
 
Carsten...
Posted: Thu Oct 22, 2009 7:24 am
Guest
On 22 Okt., 02:53, Dave <thedaverud... at (no spam) gmail.com> wrote:
Quote:
Hi all,

I am brainstorming ways of displaying to the user the orientation of
an object over time in as compact and meaningful way as possible. I
thought I would see what others have tried and used.

Or, if you stick to a graph-type of display .. calculate the projected
trace of the normalized orientation-vector onto the xy-plane.
Eventually two graphs in different colors indicating z positive or
negative. The output would be a curly line around (0,0)

Carsten
 
Carsten...
Posted: Thu Oct 22, 2009 8:58 am
Guest
Quote:
trace of the normalized orientation-vector onto the xy-plane.

'normalized orientation-vector' ... is not necessarily obvious.
Transform (0,1,0) for a series of angle-values and catch the
transformed x and y for your graph.

Carsten
 
Dave...
Posted: Thu Oct 22, 2009 4:48 pm
Guest
On Oct 22, 12:12 am, Carsten <cTroelsga... at (no spam) email.dk> wrote:
Quote:
On 22 Okt., 02:53, Dave <thedaverud... at (no spam) gmail.com> wrote:

Hi all,

I am brainstorming ways of displaying to the user the orientation of
an object over time in as compact and meaningful way as possible. I
thought I would see what others have tried and used.

If you'r going through the trouble of putting numbers into some visual
display, why not 'paint' the vector itself?

Well, the orientation is not as simple as polar coordinates or aximuth-
elevation or yaw-pitch or whatever you want to call it. I also have to
account for the third degree of rotational freedom (roll). So, I could
display the path of two vectors, e.g. (1, 0, 0) and (0, 1, 0) as
transformed by my rotation, but that's 6 lines to graph, and things
get a bit cluttered. It's not so bad if I am just showing the
orientation of one object, but if I am displaying several objects at
once, it gets messy.

Quote:
I don't know weather accessing pixels on a surface has become easier
lately, or weather I just have been hm .. slow .. But, it's
available.

Not sure how it helps me to, but it's reasonably easy to find out what
part of the surface occupies a particular pixel.

Quote:
An ordinary surface (D2) is not the complicated 3D you would like, but
when you've only got one item to draw, it's a pretty moderat problem
to make it look '3D' .. draw the 'head' and the 'rod' in the order
called for (pointing in or out), and let them be drawn in different
colors/tones.


I'm not sure what you mean here. Can you explain what you mean by head
and rod?

> Carsten
 
Dave...
Posted: Thu Oct 22, 2009 4:55 pm
Guest
On Oct 22, 12:24 am, Carsten <cTroelsga... at (no spam) email.dk> wrote:
Quote:
On 22 Okt., 02:53, Dave <thedaverud... at (no spam) gmail.com> wrote:

Hi all,

I am brainstorming ways of displaying to the user the orientation of
an object over time in as compact and meaningful way as possible. I
thought I would see what others have tried and used.

Or, if you stick to a graph-type of display .. calculate the projected
trace of the normalized orientation-vector onto the xy-plane.
Eventually two graphs in different colors indicating z positive or
negative. The output would be a curly line around (0,0)

Carsten

Again, there is no one orientation vector since we have to account for
all three rotational DOFs, unless you are thinking of euler angles as
a 3D vector. In either case, I don't know what you mean by "projected
trace". With whatever we do, we could allow the user to hide channels
and look at them one at a time (for example, if we display axis/angle
data, we could allow the user to see just the angle part or just the x
component of the axis, etc). That's one type of "projection" we could
do, but if you have other ideas, I'm all ears.
 
Dave...
Posted: Thu Oct 22, 2009 4:56 pm
Guest
On Oct 22, 1:58 am, Carsten <cTroelsga... at (no spam) email.dk> wrote:
Quote:
trace of the normalized orientation-vector onto the xy-plane.

'normalized orientation-vector' ...  is not necessarily obvious.
Transform (0,1,0) for a series of angle-values and catch the
transformed x and y for your graph.

Carsten

Again, this won't display the roll of things.
 
Carsten...
Posted: Thu Oct 22, 2009 10:07 pm
Guest
On 22 Okt., 18:56, Dave <thedaverud... at (no spam) gmail.com> wrote:
Quote:
On Oct 22, 1:58 am, Carsten <cTroelsga... at (no spam) email.dk> wrote:

trace of the normalized orientation-vector onto the xy-plane.

'normalized orientation-vector' ...  is not necessarily obvious.
Transform (0,1,0) for a series of angle-values and catch the
transformed x and y for your graph.

Carsten

Again, this won't display the roll of things.

You'r right. My suggestion of showing just the up-vector by
transforming (0,1,0) misses something.

I'm using a cross of the three axis in my 3d-editor, with a colored
dot in the positive end. .. I still haven't learned which color points
where, so I'm either stupid or never really needed to know.
I can see that Daniel Pitts beat me to suggest that using the full
tools of the 3d-trade would convey the easiest digestible information.
I was envisioning you standing at the chalk-board teaching your
pupils.

Carsten
 
Daniel Pitts...
Posted: Fri Oct 23, 2009 12:51 am
Guest
Dave wrote:
Quote:
Hi all,

I am brainstorming ways of displaying to the user the orientation of
an object over time in as compact and meaningful way as possible. I
thought I would see what others have tried and used.

I was thinking of having a 2D graph where the x axis is time, but am
open to other ideas. For the graph, I can think of several ways:

Euler Angles - i.e., have three lines along the time graph, one for
each of the individual euler angle values. This is most compact, but
strange things happen toward the poles.

Quaternions - Not as compact, and don't freak out as much. However, I
would probably have to put special code in to handle dual values
(i.e., Q represents the same rotation as -Q)

Axis Angles - As compact as Quaternions, and also have the same
duality problem as quaternions, but also have the problem of angle x
representing the same orientation as x + 2 pi.

3x3 Rotation Matrix - Not compact in the least. The upside is that
there is no duality problem, no singularities, none of that special
case handling that other rotation representations have. Or am I
missing something?

Thanks.

Dave

You could display a coin that has been rotated the same way as your
other actual object. Any non-symmetric object would do.
--
Daniel Pitts' Tech Blog: <http://virtualinfinity.net/wordpress/>
 
Hans-Bernhard Bröker...
Posted: Fri Oct 23, 2009 2:33 am
Guest
Dave wrote:

Quote:
I am brainstorming ways of displaying to the user the orientation of
an object over time in as compact and meaningful way as possible.

You could do it the way animators and 3D editors all over the world do
it, as a tripod: display the three rotated unit axis vectors as arrows
in simple parallel perspective, each in a different colour, and
optionally with the letters 'x', 'y' and 'z' affixed to the ends. It
might help to draw the vectors dashed if they point towards the viewer,
and solid if they point away.

You can put several of these next to each other on a time axis.
 
 
Page 1 of 1    
All times are GMT
The time now is Wed Dec 02, 2009 3:26 am