
Hi all,
Trying to create the most simple part of this animation extensions; the clone frame part.
I'm stuck because the xml python lib we're using (at least as of 0.45) doesn't implement the w3c DOM, instead it's patch hodge podge of none standard methods with buggy getElementById, no insertAfter method and buggy cloneNode when deep is switched on.
Error message: xml.dom.HierarchyRequestErr: Node manipulation results in invalid parent/child relationship.
The basic idea was to create a clone of the currently selected layer, add it after the current one and change a property in each child element to link it back to the original element in the original layer.
Then another script would come along and combine each of these layers into an animation; forcing elements that disappear or appear new to fade, elements that are linked to be combined into an animation for each frame and any other layers to be left alone (for background or foreground layers) this would support paths, object transformations and style/attribute changes over time.
Other extensions that could then be written after these first two:
Animation > Tween Frames - Creates a step between the current layer and the next layer for all linked elements Animation > Link Selected - Creates an animation link between the two selected elements
kees said if the first two can be implemented then he's see about writing in the UI handler which makes the current layer visible only (with the next and previous semi transparent at your option) with a slide bar to select the layer/frame.
I'll resume when I think I can begin sanely writing the code, otherwise I'll hand the svg off to perl and write the extensions using that (which wouldn't be ideal to be honest)
Best Regards, Martin Owens

Martin Owens wrote:
I'm stuck because the xml python lib we're using (at least as of 0.45) doesn't implement the w3c DOM, instead it's patch hodge podge of none standard methods with buggy getElementById, no insertAfter method and buggy cloneNode when deep is switched on.
In SVN we are using LXML instead of PyXML.
Aaron Spike
participants (2)
-
Aaron Spike
-
Martin Owens