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>>
This archive was generated by hypermail 2b29 : Tue May 22 2001 - 12:27:08 PDT