[ODE] XML ODE Data Interchange Format

William Denniss lists at omegadelta.net
Mon Mar 8 13:54:26 MST 2004


On Mon, 2004-03-08 at 04:17, Nate W wrote: 
> On Sun, 7 Mar 2004, William Denniss wrote:
> 
> > Good suggestions, I shall add a generic <transform> tag which can store
> > its data in various ways.  Perhaps an attribute can specify if the
> > transform is relative to its parent (ie. part of the hierarchy you
> > describe).  Also, if a transform tag is left out, it inherits the
> > transform of the object's parent.
> 
> How about explicitly indicating which object the transform is relative to?
> 
> I've added a couple of attributes in ALL CAPS for clarity:
> 
>  <body ID="123">
>  	<transform>
>  		<translation x="1" y="3" z="1" ORIGIN="123"/>
>  		<rotation x="0" y="0" z="0" />
>  		<scale x="1" y="1" z="1" />
>  	<transform>

Sounds good - how about this:  If the translation is relative then it is
relative to its parent unless specified otherwise in an origin
attribute.

> > Do you have any thoughts on joints - are there any improvements that can
> > be made there?  Due to the fact that XML directed acyclic graph, and the
> > fact joints can link several bodies, it isn't quite so straight forward.
> 
>   <joint id="456">
> 	<bodies a="123" b="234">
> 	...
>   </joint>

yes, that's how it works currently - I am guessing it's pretty much the
only way to do it.

> 	
> Rules for the "id" attribute values should be very simple: they must be
> numeric, and they must be unique within the file.  They need not be
> persisted across load/save operations - I suggest a "name" attribute for
> values that need to be persistent, e.g.
> 
>   <body id="1" name="left shin"> ... </body>
>   <body id="2" name="left foot"> ... </body>
> 
>   <joint id="3" name="left ankle">
>     <bodies a="1" b="2">
>     ....
>   </joint>

I considered the id attribute due to the wide spread use of id's in ODE,
but do we really need it?  I figured that it would be better anyway for
each tag to have a unique "name".  If the object's name was not set by
the user then the exporter would assign some unique number as the name. 
This is very much open for debate, I'd like to here other peoples
thoughts on this matter too.

Will.


-- 
William Denniss - will@ http://tanksoftware.com/



More information about the ODE mailing list