Wrong transformation for static coordinate systems in Performer 1.2

New Message Reply Date view Thread view Subject view Author view

michael++at++ifr.luftfahrt.uni-stuttgart.de
Fri, 10 Dec 93 13:25:41 +0100


We recently installed the beta version of Performer 1.2 on
our Indigo R4000 running 4.0.5F. When I tried to get an
application running that I had developed with Performer 1.0
I experienced a severe problem. When I place an object into
the scene with an SCS the object appears at an entirely wrong
location. I found out that this only happens if the rotational
part of the transformation is almost zero and the translation
is not. If I specify an additional rotation of something
like 0.01 deg the translational transformation will be ok.

Is this a bug ? If yes is it already known ? I have provided
a small code fragment that shows what I am doing.

--- code fragment starts here -----------------

void
init_stat_grid_3d(int index,
                  Position* Pos, Rotation* Rot,
                  int nx, int ny, int nz,
                  float dx, float dy, float dz,
                  float line_width,
                  float red, float green, float blue,
                  int *status)
BEGIN
   pfGeode *geode;

   pfMatrix matrix;
   pfCoord coord;

   *status = OK;

   pfSetVec3(coord.xyz, Pos->x, Pos->y, Pos->z);
   pfSetVec3(coord.hpr, Rot->h, Rot->p, Rot->r);

   pfMakeCoordMat(matrix, &coord);

   StatObjTrans[index].earth_offset = pfNewSCS(matrix);

   /* load the database */
   geode = grid_3d(nx,ny,nz,dx,dy,dz,line_width,red,green,blue);
         
   IF (geode != NULL) THEN
      pfAddChild(StatObjTrans[index].earth_offset, geode);
   ELSE
      *status = INITIALIZATION_ERROR;
   ENDIF

   IF (*status EQ OK) THEN
      pfAddChild(Scene, StatObjTrans[index].earth_offset);
   ENDIF

   return;

END

|----------------------------------------------------------------------|
|Dipl.-Ing. Michael Paus |
|University of Stuttgart, Inst. of Flight Mechanics and Flight Control |
|Forststrasse 86, 70176 Stuttgart, Germany |
|----------------------------------------------------------------------|
|Phone: (+49) 711-121-1434 FAX: (+49) 711-634856 |
|Email: Michael.Paus++at++ifr.luftfahrt.uni-stuttgart.de (NeXT-Mail welcome)|
|----------------------------------------------------------------------|


New Message Reply Date view Thread view Subject view Author view

This archive was generated by hypermail 2.0b2 on Mon Aug 10 1998 - 17:50:07 PDT

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