Main Page | Class Hierarchy | Alphabetical List | Compound List | Compound Members

IRdMatrixfDisp Struct Reference

Inherits IDispatch.

List of all members.

Public Member Functions

HRESULT LoadIdentity (void)
HRESULT LockData ([out, retval] RtFloat **pMatrix)
HRESULT UnlockData (void)
HRESULT GetAt ([in] RtUlong i,[in] RtUlong j,[out, retval] RtFloat *pVal)
HRESULT SetAt ([in] RtUlong i,[in] RtUlong j,[in] RtFloat newVal)
HRESULT RotationAxis ([in] RtFloat x,[in] RtFloat y,[in] RtFloat z,[in] RtFloat angle)
HRESULT Mult ([in] IRdMatrixfDisp *pM)
HRESULT PreMult ([in] IRdMatrixfDisp *pM)
HRESULT GetAxisX ([out, retval] IRdVertex **ppVect)
HRESULT GetAxisY ([out, retval] IRdVertex **ppVect)
HRESULT GetAxisZ ([out, retval] IRdVertex **ppVect)
HRESULT GetTransX ([out, retval] RtFloat *pVal)
HRESULT SetTransX ([in] RtFloat newVal)
HRESULT GetTransY ([out, retval] RtFloat *pVal)
HRESULT SetTransY ([in] RtFloat newVal)
HRESULT GetTransZ ([out, retval] RtFloat *pVal)
HRESULT SetTransZ ([in] RtFloat newVal)
HRESULT GetRoll ([out, retval] RtFloat *pVal)
HRESULT SetRoll ([in] RtFloat newVal)
HRESULT GetPitch ([out, retval] RtFloat *pVal)
HRESULT SetPitch ([in] RtFloat newVal)
HRESULT GetYaw ([out, retval] RtFloat *pVal)
HRESULT SetYaw ([in] RtFloat newVal)
HRESULT GetScaleX ([out, retval] RtFloat *pVal)
HRESULT SetScaleX ([in] RtFloat newVal)
HRESULT GetScaleY ([out, retval] RtFloat *pVal)
HRESULT SetScaleY ([in] RtFloat newVal)
HRESULT GetScaleZ ([out, retval] RtFloat *pVal)
HRESULT SetScaleZ ([in] RtFloat newVal)
HRESULT GetShearX ([out, retval] RtFloat *pVal)
HRESULT SetShearX ([in] RtFloat newVal)
HRESULT GetShearY ([out, retval] RtFloat *pVal)
HRESULT SetShearY ([in] RtFloat newVal)
HRESULT GetShearZ ([out, retval] RtFloat *pVal)
HRESULT SetShearZ ([in] RtFloat newVal)
HRESULT AddScaleShear ([in] RtFloat sx,[in]RtFloat sy,[in] RtFloat sz,[in] RtFloat sxy,[in] RtFloat sxz,[in] RtFloat syz)
HRESULT Rotate ([in] IRdVertex *center,[in] IRdVertex *axes,[in] RtFloat angle)
HRESULT Decompose ([out, retval] IRdComponents **ppComponnets)
HRESULT Compose ([in] IRdComponents *pComponnets)
HRESULT Shift ([in] IRdVertex *pShift)


Detailed Description

The IRdMatrixfDisp object stores the transformation matrix of size 4x4 that encodes the rotation, scale and translation of an object in space This object is generated for example by object into ObjMatrix connector


Member Function Documentation

HRESULT IRdMatrixfDisp::LoadIdentity void   ) 
 

Initializes indentity matrix

HRESULT IRdMatrixfDisp::LockData [out, retval] RtFloat **  pMatrix  ) 
 

Locks matrix and returns access pointer to matrix data

Parameters:
pMatrix returned locked matrix

HRESULT IRdMatrixfDisp::UnlockData void   ) 
 

Unlocks matrix data

HRESULT IRdMatrixfDisp::GetAt [in] RtUlong  i,
[in] RtUlong  j,
[out, retval] RtFloat *  pVal
 

Returns the value of one matrix element

Parameters:
i row number
j column number
pVal returned value

HRESULT IRdMatrixfDisp::SetAt [in] RtUlong  i,
[in] RtUlong  j,
[in] RtFloat  newVal
 

Sets the value of one matrix element

Parameters:
i row number
j column number
newVal new value to set

HRESULT IRdMatrixfDisp::RotationAxis [in] RtFloat  x,
[in] RtFloat  y,
[in] RtFloat  z,
[in] RtFloat  angle
 

Rotates matrix around arbitrary axis and arbitrary angle

Parameters:
x x coordinate of rotation axis
y y coordinate of rotation axis
z z coordinate of rotation axis
angle rotation angle in radians

HRESULT IRdMatrixfDisp::Mult [in] IRdMatrixfDisp pM  ) 
 

Determines the product of given matrix and an arbitrary matrix. The result represents the current transformation followed by the transformation given by arbitrary matrix

Parameters:
pM matrix to multiply

HRESULT IRdMatrixfDisp::PreMult [in] IRdMatrixfDisp pM  ) 
 

Determines the product of an arbitrary matrix and given matrix

Parameters:
pM matrix to multiply

HRESULT IRdMatrixfDisp::GetAxisX [out, retval] IRdVertex **  ppVect  ) 
 

Returns the value of x axis for matrix

Parameters:
ppVect value of x axis

HRESULT IRdMatrixfDisp::GetAxisY [out, retval] IRdVertex **  ppVect  ) 
 

Returns the value of y axis for matrix

Parameters:
ppVect value of y axis

HRESULT IRdMatrixfDisp::GetAxisZ [out, retval] IRdVertex **  ppVect  ) 
 

Returns the value of z axis for matrix

Parameters:
ppVect value of z axis

HRESULT IRdMatrixfDisp::GetTransX [out, retval] RtFloat *  pVal  ) 
 

Returns the x coordinate of translation

Parameters:
pVal x coordinate of translation

HRESULT IRdMatrixfDisp::SetTransX [in] RtFloat  newVal  ) 
 

Sets the x coordinate of translation

Parameters:
pVal x coordinate of translation

HRESULT IRdMatrixfDisp::GetTransY [out, retval] RtFloat *  pVal  ) 
 

Returns the y coordinate of translation

Parameters:
pVal y coordinate of translation

HRESULT IRdMatrixfDisp::SetTransY [in] RtFloat  newVal  ) 
 

Sets the y coordinate of translation

Parameters:
pVal y coordinate of translation

HRESULT IRdMatrixfDisp::GetTransZ [out, retval] RtFloat *  pVal  ) 
 

Returns the z coordinate of translation

Parameters:
pVal z coordinate of translation

HRESULT IRdMatrixfDisp::SetTransZ [in] RtFloat  newVal  ) 
 

Sets the z coordinate of translation

Parameters:
pVal z coordinate of translation

HRESULT IRdMatrixfDisp::GetRoll [out, retval] RtFloat *  pVal  ) 
 

Returns the roll value

Parameters:
pVal roll

HRESULT IRdMatrixfDisp::SetRoll [in] RtFloat  newVal  ) 
 

Sets the roll value

Parameters:
pVal roll

HRESULT IRdMatrixfDisp::GetPitch [out, retval] RtFloat *  pVal  ) 
 

Returns the pitch value

Parameters:
pVal pitch

HRESULT IRdMatrixfDisp::SetPitch [in] RtFloat  newVal  ) 
 

Sets the pitch value

Parameters:
pVal pitch

HRESULT IRdMatrixfDisp::GetYaw [out, retval] RtFloat *  pVal  ) 
 

Returns the yaw value

Parameters:
pVal yaw

HRESULT IRdMatrixfDisp::SetYaw [in] RtFloat  newVal  ) 
 

Sets the yaw value

Parameters:
pVal yaw

HRESULT IRdMatrixfDisp::GetScaleX [out, retval] RtFloat *  pVal  ) 
 

Returns the scale in x axis

Parameters:
pVal scale value

HRESULT IRdMatrixfDisp::SetScaleX [in] RtFloat  newVal  ) 
 

Sets the scale in x axis

Parameters:
pVal scale value

HRESULT IRdMatrixfDisp::GetScaleY [out, retval] RtFloat *  pVal  ) 
 

Returns the scale in y axis

Parameters:
pVal scale value

HRESULT IRdMatrixfDisp::SetScaleY [in] RtFloat  newVal  ) 
 

Sets the scale in y axis

Parameters:
pVal scale value

HRESULT IRdMatrixfDisp::GetScaleZ [out, retval] RtFloat *  pVal  ) 
 

Returns the scale in z axis

Parameters:
pVal scale value

HRESULT IRdMatrixfDisp::SetScaleZ [in] RtFloat  newVal  ) 
 

Sets the scale in z axis

Parameters:
pVal scale value

HRESULT IRdMatrixfDisp::GetShearX [out, retval] RtFloat *  pVal  ) 
 

Returns the shear in xy

Parameters:
pVal shear value

HRESULT IRdMatrixfDisp::SetShearX [in] RtFloat  newVal  ) 
 

Sets the shear in xy

Parameters:
pVal shear value

HRESULT IRdMatrixfDisp::GetShearY [out, retval] RtFloat *  pVal  ) 
 

Returns the shear in xz

Parameters:
pVal shear value

HRESULT IRdMatrixfDisp::SetShearY [in] RtFloat  newVal  ) 
 

Sets the shear in xz

Parameters:
pVal shear value

HRESULT IRdMatrixfDisp::GetShearZ [out, retval] RtFloat *  pVal  ) 
 

Returns the shear in yz

Parameters:
pVal shear value

HRESULT IRdMatrixfDisp::SetShearZ [in] RtFloat  newVal  ) 
 

Sets the shear in yz

Parameters:
pVal shear value

HRESULT IRdMatrixfDisp::AddScaleShear [in] RtFloat  sx,
[in] RtFloat  sy,
[in] RtFloat  sz,
[in] RtFloat  sxy,
[in] RtFloat  sxz,
[in] RtFloat  syz
 

Adds the scale and shear transformation to matrix

Parameters:
sx scale in x
sy scale in y
sz scale in z
sxy shear in xy
sxz shear in xz
syz shear in yz

HRESULT IRdMatrixfDisp::Rotate [in] IRdVertex center,
[in] IRdVertex axes,
[in] RtFloat  angle
 

Adds rotation to matrix around arbitrary axis and center

Parameters:
center center of rotation
axis axis of rotation
angle angle of ration
See also:
IRdVertex

HRESULT IRdMatrixfDisp::Decompose [out, retval] IRdComponents **  ppComponnets  ) 
 

Decomposes transframtion matrix to translation (x,y,z), rotation (roll, pitch, yaw) and scale (sx, sy, sz, sxy, syz, syz)

Parameters:
ppComponnets components of transformation matrix
See also:
IRdComponents

HRESULT IRdMatrixfDisp::Compose [in] IRdComponents pComponnets  ) 
 

Composes transformtion matrix from translation (x,y,z), rotation (roll, pitch, yaw) and scale (sx, sy, sz, sxy, syz, syz)

Parameters:
pComponnets components of transformation matrix
See also:
IRdComponents

HRESULT IRdMatrixfDisp::Shift [in] IRdVertex pShift  ) 
 

Adds shift to transfomation matrix according to arbitrary vector

Parameters:
pShift shift vector
See also:
IRdVertex


Generated on Tue Jan 31 21:03:04 2006 for trueSpace7 Data Objects by doxygen 1.3.2