intersection traversal

New Message Reply Date view Thread view Subject view Author view

From: Nichols, Emily (Emily.Nichols++at++nrc.ca)
Date: 05/22/2001 12:25:05


Hi everyone:

    I'm including a small performer program that demonstrates a strange
behaviour
    in the intersection process. For each command line argument, one set of
    three nodes (I call it a "treeItem") is created. The treeItem contains
a pfSwitch, a pfDCS, and a
    pfGeode, where the pfDCS is a child of the pfSwitch, the pfGeode is a
child
    of the pfDCS, and the treeItems are connected together at the DCS level
    ie. the pfSwitch node for one treeItem is a child of the pfDCS of the
    previous treeItem. Each node in a set is given the name of the
    corresponding command line argument.
    
    As the scene is created, each node is given a pre and post traversal
    function that prints out its name, so that the user can 'see' the
    traversal as it happens. Traversal is triggered by calling
pfChannel::pick
    on the scene.
    
    Here's the weird part: The post traversal function for the pfDCS's in
the
    scene NEVER get called, and it seems that instead, the post traversal
    functions for the pfGeodes get called twice. Even if the pfGeode's are
not assigned traversal
    functions, their post traversal functions somehow get called, seemingly
instead of
    the post traversal for pfDCS. The common theme is that pfDCS's seem to
be 'special' and
    quite often a traversal function gets called on a node that did not have
    a traversal function assigned to it. We have never seen a post
traversal
    function be called for a pfDCS.

    If anyone can offer an explanation for this, or even some ideas, that
would be greatly appreciated!

    I came across this problem as a result of a problem I was having with
"picking" pfText nodes - if anyone else has had similar problems with
pfText, I'd appreciate hearing about that too.

Thanks so much,

Emily

 <<travtest.C>>




New Message Reply Date view Thread view Subject view Author view

This archive was generated by hypermail 2b29 : Tue May 22 2001 - 12:27:08 PDT

This message has been cleansed for anti-spam protection. Replace '++at++' in any mail addresses with the '@' symbol.