Scott Angster (angster++at++mme.wsu.edu)
Thu, 23 May 1996 16:12:00 -0700
lisa++at++cs.unm.edu wrote:
>
> Hello, Performers.
>
> Can any of you tell me how to get back the position, in world
> coordinates, of a point on a node well down in a scene graph?
> More generally, I want to know how to do intersection testing for
> a pfSegSet whose pfSegs are "attached" to a dynamically moving
> node.
>
> Are pfSegs used for intersection testing never part of the scene graph?
> Do the pfSegs have to be described in world coordinates?
> Is there a method for any pfNode to return its base position
> in world coordinates? I can't find one.
> Can this info only be gleaned from Performer during a traversal?
>
> Background: I am developing a simulator for large numbers
> of autonomous agents moving within and interacting with a physical
> environment. The agents are tiny robots, or "robugs", which we will
> eventually really build. For this version of the simulator, physical
> aspects of the simulation will be implemented in Performer. I am
> currently trying to implement my first sensor, a whisker, using
> Performer's line segment intersection capability. I have a database
> of simulator-specific objects, which contains xyz and hpr vectors
> showing the geometric offset between PhysicalObjects and other
> Physical Objects (or the world) to which they're attached and
> the geometric offset between SimulatedSensors and the PhysicalObjects
> to which they're attached, and a corresponding scene graph.
>
> My problem concerns updating the position and direction of the line
> segments against which intersections are tested in order to keep them
> effectively attached to a geode in the scene graph. A complication is that
> the line segments aren't part of the scene graph and the geode's position
> changes dynamically, so that my application needs to keep updating the
> line segment's position in world coordinates so that it APPEARS to be
> attached to the geode. This is further complicated by the geode being
> several layers down in a geometric hierarchy. For example, the line
> segment could be simulating a proximity sensor that is at the toolpoint
> of a multiple-link manipulator that is attached to a vehicle.
> The vehicle moves. The links of the manipulator rotate or translate
> relative to each other. They form a kinematic chain.
>
> I am currently trying to reconstruct this info by going
> forward down a kinematic chain using the xyz and hpr vectors
> stored in my simulator's database. This seems really klunky.
>
> Is there sample code, other than the collision avoidance in perfly and
> /usr/share/Performer/src/pguide/libpf/C++/intersect.C, that shows
> intersection testing? These examples do not seem to address my problem,
> since they assume a line segment in a fixed orientation whose position
> is independent of the movement of geometric objects in the scene graph.
>
> How have other people implemented similar things (hint, Scott McMillan)?
>
> By the way, I am developing in C++ under Performer 2.0.
>
> Thank you.
>
> Lisa Desjarlais
> lmdesja++at++isrc.sandia.gov
> =======================================================================>
List Archives, FAQ, FTP: http://www.sgi.com/Technology/Performer.html
> Submissions: info-performer++at++sgi.com
> Admin. requests: info-performer-request++at++sgi.com
=======================================================================
List Archives, FAQ, FTP: http://www.sgi.com/Technology/Performer.html
Submissions: info-performer++at++sgi.com
Admin. requests: info-performer-request++at++sgi.com
This archive was generated by hypermail 2.0b2 on Mon Aug 10 1998 - 17:52:55 PDT