When panning the timeline, your mouse drag moves the div for the band by 
updating its left and/or top position. Timeline does not adjust the position of 
every element within a band - that is handled by the browser's DOM rendering. 

When zooming, duration events will change size, and all events will be drawn 
closer (or further apart). Therefore the layout needs to be recalculated to 
avoid overlapping events. It is possible that the change in zoom level will 
need to draw events that were not previously created on the band, or remove 
events that are no longer visible. With ether-lines, the change in zoom level 
may affect the desired unit interval between ether-lines, causing new ones to 
be drawn or old ones to be thrown away. It was much simpler to just destroy the 
existing elements and re-create the layout.

It is possible to write a new zoom method to be smarter about moving existing 
elements, destroying unneeded ones and creating new elements as necessary, but 
it will be a lot of work.

--Mike

On Sep 29, 2011, at 7:49 AM, cederlof wrote:

> Hi!
> 
> Regarding zoom-performance. I have about 40 bands synced together with
> both zooming and panning. When panning all elements are moved by
> changing their emlt.left (or .top) position. However on zooming, from
> what I can tell, all elements are recreated for each zoom step. A much
> better solution would be moving them, without needing the DOM to be
> cleared and to add each separate element again.
> 
> Does anyone have a solution for this?
> 
> Tip: To get better performance on panning, hide all ether-lines when
> dragging, and show them again on stop-dragging. As they are so many
> for each band, it sucks performance-wise.
> 
> Thanks for your time.
> 
> Cederlof

-- 
You received this message because you are subscribed to the Google Groups 
"SIMILE Widgets" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/simile-widgets?hl=en.

Reply via email to