BOCCARA Michael (MICHAEL.BOCCARA++at++siege.aerospatiale.fr)
Mon, 6 Jan 1997 10:31:05 +0100
If you take a glance at the source code for pfiTDFXformer class, you will see
that in the pfiTDFXformer::update function it calls the pfiTrackball::update
function to calculate the matrix to be applied to the DCS, and then it
effectively applies it to the DCS
What I did is to derivate the pfiTDFXformer class to overload the update()
function, to recuperate the xPosMat member matrix,to invert it, and apply it
to the chan ViemMat, somewhat like this (i write it by memory, since i dont
have my source code on this babasse) :
void
pfi_My_TDFXformer::update()
(
pfiTDFXformer::update();
if(motionModel == PFITDF_TRACKBALL) (
xPosMat.invertOrthoN(xPosMat);
xMotionCoord.mat.pre(or post..?)Mult(xPosMat);
xMotionCoord.setMat(xMotionCoord.mat);
xPosMat.makeIdent();
xPosDCS->setMat(pfIdentMat);
xPosChan->setViewMat(xMotionCoord.mat);
// that's it
)
)
_______________________________________________________________________________
_
De: P=INTERNET; DDA.TYPE=RFC-822; DDA.VALUE=guest(a)holodeck.csd.sgi.com le
Mar 31 Déc 1996 23:32
Objet: Moving eyepoint vs. DCS translations
A: P=INTERNET; DDA.TYPE=RFC-822; DDA.VALUE=info-performer(a)sgi.com; BOCCARA
Michael
Fichiers: BDY12.TXT
RFC-822-Headers:
Organization: Silicon Graphics, Inc.
X-Mailer: Mozilla 3.0 (X11; I; IRIX 6.2 IP22)
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
===================================List Archives, FAQ, FTP: http://www.sgi.com/Technology/Performer/
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:54:16 PDT