Monday, October 22, 2007

WWJ Temporality

Finally I finish changes in WWJ (very few) to allow time animation.

The idea is to allow associate a period of validity to a renderable object. This period
can be represented with the Temporality class, which has an initial and a final Calendar to indicate the valid range where an object must be rendered.

View interface (and AbstractView) acts as camera and also can have associated a period of time,
for example: from October 1951 to October 1952.

When the "camera" has a temporality associated, we can step up or down into these period incrementally.
This step size is so called the "cursor". In the previous example we can define a cursor of
size "one month", "two days" or "20 minutes" to step up or down. The cursor can be moved within
the views temporality with the "go to" method.

Also, when the "camera" has a temporality associated it only renders objects that conforms with:
  1. If the object has an associated temporality, then it is only rendered if his temporality is inside the View's cursor.
  2. If the object hasn't a temporality, then it is always rendered.
Finally I have created a Timeline layer to show the current view temporality and cursor position.

Source code here.


Anonymous said...

The approach to animation seems interesting, but how do you implement motion for an object? e.g. if you have a satellite orbiting around the earth, how do you update position, by adding an object for each postition? this will result in many objects to obtain a realistic movement, won´t it?

Antonio Santiago said...

Hi, anonymous ;)

Temporality is achieved through an adapter class. You specify a Temporality and a Renderable (or Layer) object to control.
You are free to change the object properties (like position, size or whatever you whant) without affecting its temporality properties.

MuMu said...

I'm very interesting in the temporal animation.
I'm just wondering if you did some updates because this post was published in 2007.
Thank you.

Antonio Santiago said...

Hi, MuMu
and thanks for your comment.

The "Temporallity" feature hasn't any advance since that year (2007). I have no much time to continue creating and updating my addons :(
I think I need to find some job related to WWJ to have time to both work and creating thing for WWJ :)

MuMu said...

Thanks for your reply.
I need temporality function, I will try to use/update your work...

Anonymous said...

Hi, the link is dead. Could you upload it again? Thanks!

Anonymous said...


I just came across your blog, and found it very interesting. I wanted to know if your plugin supports interpolation of position? For example, if I have a point that I want to show in motion, I would define the position of that point over various time intervals, but to have a smooth transition, I might using a function, that calculates an intermediate position. So Is that supported in your plugin?