[Insight-users] Cycles in SpatialObject possible

Miller, James V (Research) millerjv at crd.ge.com
Thu Mar 17 09:55:17 EST 2005


That's fine. I just wanted to be clear as to whether the scene
structure was indeed a tree or a DAG.  Most scene descriptions
support DAGs by traversing from the root to the child to build
the object to world transformation, with the parent-child 
transformation stored on the link between the parent and child.
We talked about this once at one of the quarterly meetings but
I guess it never got into the SpatialObject design.

Storing the transformation on the "link" between the parent and
child allows you to have one child object that is "replicated"
by adding the child multiple times to the parent and associating
a different transformation with each link from the parent to the
child. This is how you would put 4 wheels on a car using only 
a single instance of a wheel. This is how scene descriptions
were done all the way back in the days of PHIGS. (Not sure how
many people remember the days of PHIGS.)

A tree is certainly an easier design. However, it is up to the 
user to ensure the scene structure is indeed a tree (correct?).

Jim





-----Original Message-----
From: Stephen R. Aylward [mailto:aylward at unc.edu]
Sent: Thursday, March 17, 2005 9:18 AM
To: Miller, James V (Research)
Cc: Julien Jomier; insight-users at itk.org; Dominique Belhachemi
Subject: Re: [Insight-users] Cycles in SpatialObject possible


Hi,

Julien will be able to give more info, but basically, a scene cannot be 
stored as a DAG.  SpatialObjects allow only one parent per object since 
each child object has a transform that positions it in its parent 
object's space...  If we allowed multiple parents, it would be 
problematic to define an object-to-world transform that is composed of 
all of the child-to-parent transforms from an object to the root.   We 
could support duplication as is done in some scene representations - 
creating "virtual" copies of an object, but I don't think the complexity 
they add is justified given the rare utility of them.

SpatialObjects specifically use the itkTree datastructure - contributed 
by MITK developers.

Stephen

Miller, James V (Research) wrote:
> Julien, 
> 
> Do the SpatialObjects support a directed acyclic graph?
> 
> Jim
> 
> -----Original Message-----
> From: Julien Jomier [mailto:jjomier at cs.unc.edu]
> Sent: Wednesday, March 16, 2005 5:38 PM
> To: Miller, James V (Research)
> Cc: Dominique Belhachemi; insight-users at itk.org
> Subject: Re: [Insight-users] Cycles in SpatialObject possible
> 
> 
> Yes you cannot have cycles with SpatialObjects. SpatialObject hierarchy 
> is a designed as a tree.
> 
> Julien
> 
> Miller, James V (Research) wrote:
> 
>>Stephen and Julien could probably answer this better, but I assume that 
>>SpatialObjects are "expected" to be either a directed acyclic graph or a 
>>tree.
>> 
>>Jim
>>
>>    -----Original Message-----
>>    *From:* insight-users-bounces at itk.org
>>    [mailto:insight-users-bounces at itk.org]*On Behalf Of *Dominique
>>    Belhachemi
>>    *Sent:* Wednesday, March 16, 2005 4:41 PM
>>    *To:* insight-users at itk.org
>>    *Subject:* [Insight-users] Cycles in SpatialObject possible
>>
>>    Hello,
>>     
>>    can i assume that each instance of itk::SpatialObject is cycle free
>>    in respect of the function itk::SpatialObject::GetChildren(....) ?
>>     
>>    Can i imagine a itk::SpatialObject rather than tree or as graph?
>>     
>>    I need to know this because i want to map an itk::SpatialObject to a
>>    list of SpatialObject-Pointers. For later calculations it is easier
>>    for me to work with a list.
>>     
>>     
>>    Dominique
>>     
>>     
>>     
>>     
>>     
>>     
>>
>>
>>------------------------------------------------------------------------
>>
>>_______________________________________________
>>Insight-users mailing list
>>Insight-users at itk.org
>>http://www.itk.org/mailman/listinfo/insight-users
> 
> 
> _______________________________________________
> Insight-users mailing list
> Insight-users at itk.org
> http://www.itk.org/mailman/listinfo/insight-users

-- 
===========================================================
Dr. Stephen R. Aylward
Associate Professor of Radiology
Adjunct Associate Professor of Computer Science and Surgery
http://caddlab.rad.unc.edu
aylward at unc.edu
(919) 966-9695


More information about the Insight-users mailing list