LLViewerJoint Class Reference

#include <llviewerjoint.h>

Inheritance diagram for LLViewerJoint:

Inheritance graph
[legend]
Collaboration diagram for LLViewerJoint:

Collaboration graph
[legend]
List of all members.

Public Types

 SC_BONE = 1
 SC_JOINT = 2
 SC_AXES = 4
 PN_DEFAULT = -1
 PN_0 = 0
 PN_1 = 1
 PN_2 = 2
 PN_3 = 3
 PN_4 = 4
 PN_5 = 5
enum  Components { SC_BONE = 1, SC_JOINT = 2, SC_AXES = 4 }
enum  PickName {
  PN_DEFAULT = -1, PN_0 = 0, PN_1 = 1, PN_2 = 2,
  PN_3 = 3, PN_4 = 4, PN_5 = 5
}

Public Member Functions

 LLViewerJoint ()
 LLViewerJoint (const std::string &name, LLJoint *parent=NULL)
virtual ~LLViewerJoint ()
BOOL getValid ()
virtual void setValid (BOOL valid, BOOL recursive=FALSE)
virtual void renderSkeleton (BOOL recursive=TRUE)
virtual U32 render (F32 pixelArea, BOOL first_pass=TRUE)
virtual void drawBone ()
virtual BOOL isTransparent ()
virtual BOOL inheritScale ()
virtual U32 drawShape (F32 pixelArea, BOOL first_pass=TRUE)
virtual void drawNormals ()
void setSkeletonComponents (U32 comp, BOOL recursive=TRUE)
U32 getSkeletonComponents ()
F32 getLOD ()
void setLOD (F32 pixelArea)
void setPickName (PickName name)
PickName getPickName ()
virtual void updateFaceSizes (U32 &num_vertices, U32 &num_indices, F32 pixel_area)
virtual void updateFaceData (LLFace *face, F32 pixel_area, BOOL damp_wind=FALSE)
virtual BOOL updateLOD (F32 pixel_area, BOOL activate)
virtual void updateGeometry ()
virtual void dump ()
void setVisible (BOOL visible, BOOL recursive)
virtual void writeCAL3D (apr_file_t *fp)

Static Public Attributes

static BOOL sDisableLOD = FALSE

Protected Attributes

BOOL mValid
U32 mComponents
F32 mMinPixelArea
PickName mPickName
BOOL mVisible

Detailed Description

Definition at line 46 of file llviewerjoint.h.


Member Enumeration Documentation

enum LLViewerJoint::Components

Enumerator:
SC_BONE 
SC_JOINT 
SC_AXES 

Definition at line 88 of file llviewerjoint.h.

enum LLViewerJoint::PickName

Enumerator:
PN_DEFAULT 
PN_0 
PN_1 
PN_2 
PN_3 
PN_4 
PN_5 

Definition at line 114 of file llviewerjoint.h.


Constructor & Destructor Documentation

LLViewerJoint::LLViewerJoint (  ) 

Definition at line 59 of file llviewerjoint.cpp.

References DEFAULT_LOD, FALSE, mComponents, mMinPixelArea, mPickName, LLJoint::mUpdateXform, mValid, mVisible, PN_DEFAULT, SC_AXES, SC_BONE, SC_JOINT, and TRUE.

LLViewerJoint::LLViewerJoint ( const std::string &  name,
LLJoint parent = NULL 
)

Definition at line 74 of file llviewerjoint.cpp.

References DEFAULT_LOD, FALSE, mComponents, mMinPixelArea, mPickName, mValid, PN_DEFAULT, SC_AXES, SC_BONE, and SC_JOINT.

LLViewerJoint::~LLViewerJoint (  )  [virtual]

Definition at line 88 of file llviewerjoint.cpp.


Member Function Documentation

void LLViewerJoint::drawBone (  )  [virtual]

Reimplemented in LLViewerJointMesh, and LLViewerJointShape.

Definition at line 340 of file llviewerjoint.cpp.

References f, LLJoint::getPosition(), glBegin, glEnd, glMultMatrixf, glPopMatrix, LLMatrix4::mMatrix, LLJoint::mParent, LLVector3::normVec(), NULL, LLMatrix4::setFwdRow(), LLMatrix4::setLeftRow(), and LLMatrix4::setUpRow().

Referenced by renderSkeleton().

virtual void LLViewerJoint::drawNormals (  )  [inline, virtual]

Definition at line 86 of file llviewerjoint.h.

U32 LLViewerJoint::drawShape ( F32  pixelArea,
BOOL  first_pass = TRUE 
) [virtual]

Reimplemented in LLViewerJointAttachment, LLViewerJointMesh, and LLViewerJointShape.

Definition at line 404 of file llviewerjoint.cpp.

Referenced by render().

void LLViewerJoint::dump (  )  [virtual]

Reimplemented in LLViewerJointMesh.

Definition at line 507 of file llviewerjoint.cpp.

References LLJoint::mChildren.

F32 LLViewerJoint::getLOD (  )  [inline]

Definition at line 108 of file llviewerjoint.h.

References mMinPixelArea.

PickName LLViewerJoint::getPickName (  )  [inline]

Definition at line 125 of file llviewerjoint.h.

References mPickName.

U32 LLViewerJoint::getSkeletonComponents (  )  [inline]

Definition at line 99 of file llviewerjoint.h.

References mComponents.

BOOL LLViewerJoint::getValid (  )  [inline]

Definition at line 55 of file llviewerjoint.h.

References mValid.

virtual BOOL LLViewerJoint::inheritScale (  )  [inline, virtual]

Reimplemented in LLViewerJointCollisionVolume.

Definition at line 81 of file llviewerjoint.h.

References FALSE.

BOOL LLViewerJoint::isTransparent (  )  [virtual]

Reimplemented in LLViewerJointAttachment, LLViewerJointMesh, and LLViewerJointShape.

Definition at line 396 of file llviewerjoint.cpp.

References FALSE.

Referenced by render().

U32 LLViewerJoint::render ( F32  pixelArea,
BOOL  first_pass = TRUE 
) [virtual]

Definition at line 242 of file llviewerjoint.cpp.

References DEFAULT_LOD, drawShape(), FALSE, glGetBooleanv, gRenderForSelect, isTransparent(), mask, LLJoint::mChildren, MIN_PIXEL_AREA_3PASS_HAIR, mValid, and sDisableLOD.

Referenced by LLVOAvatar::renderRigid(), LLVOAvatar::renderSkinned(), and LLVOAvatar::renderTransparent().

void LLViewerJoint::renderSkeleton ( BOOL  recursive = TRUE  )  [virtual]

Definition at line 121 of file llviewerjoint.cpp.

References drawBone(), f, LLJoint::getWorldMatrix(), glBegin, glEnd, glMultMatrixf, glPopMatrix, LLJoint::mChildren, mComponents, SC_AXES, SC_BONE, and SC_JOINT.

void LLViewerJoint::setLOD ( F32  pixelArea  )  [inline]

Definition at line 109 of file llviewerjoint.h.

References mMinPixelArea.

Referenced by LLViewerJointAttachment::calcLOD(), and LLVOAvatar::loadMeshNodes().

void LLViewerJoint::setPickName ( PickName  name  )  [inline]

Definition at line 124 of file llviewerjoint.h.

References mPickName.

Referenced by LLVOAvatar::LLVOAvatar().

void LLViewerJoint::setSkeletonComponents ( U32  comp,
BOOL  recursive = TRUE 
)

Definition at line 412 of file llviewerjoint.cpp.

References LLJoint::mChildren, and mComponents.

void LLViewerJoint::setValid ( BOOL  valid,
BOOL  recursive = FALSE 
) [virtual]

Definition at line 96 of file llviewerjoint.cpp.

References LLJoint::mChildren, mValid, and TRUE.

Referenced by LLVOAvatar::releaseMeshData(), LLViewerJointMesh::updateLOD(), and LLViewerJointAttachment::updateLOD().

void LLViewerJoint::setVisible ( BOOL  visible,
BOOL  recursive 
)

Definition at line 517 of file llviewerjoint.cpp.

References LLJoint::mChildren, and mVisible.

Referenced by LLImagePreviewAvatar::setPreviewTarget().

void LLViewerJoint::updateFaceData ( LLFace face,
F32  pixel_area,
BOOL  damp_wind = FALSE 
) [virtual]

Reimplemented in LLViewerJointMesh.

Definition at line 445 of file llviewerjoint.cpp.

References face, and LLJoint::mChildren.

Referenced by LLVOAvatar::updateMeshData().

void LLViewerJoint::updateFaceSizes ( U32 num_vertices,
U32 num_indices,
F32  pixel_area 
) [virtual]

Reimplemented in LLViewerJointMesh.

Definition at line 426 of file llviewerjoint.cpp.

References LLJoint::mChildren.

Referenced by LLVOAvatar::updateMeshData().

void LLViewerJoint::updateGeometry (  )  [virtual]

Reimplemented in LLViewerJointMesh.

Definition at line 464 of file llviewerjoint.cpp.

References LLJoint::mChildren.

Referenced by LLVOAvatar::updateLOD().

BOOL LLViewerJoint::updateLOD ( F32  pixel_area,
BOOL  activate 
) [virtual]

Reimplemented in LLViewerJointAttachment, and LLViewerJointMesh.

Definition at line 475 of file llviewerjoint.cpp.

References DEFAULT_LOD, FALSE, LLJoint::mChildren, sDisableLOD, and TRUE.

Referenced by LLVOAvatar::updateJointLODs().

void LLViewerJoint::writeCAL3D ( apr_file_t *  fp  )  [virtual]

Definition at line 532 of file llviewerjoint.cpp.

References LLVector3::clearVec(), LLXform::getPosition(), LLJoint::getScale(), LLJoint::mChildren, LLJoint::mJointNum, LLJoint::mName, LLJoint::mParent, LLQuaternion::mQ, LLVector3::mV, LLJoint::mXform, S32, LLVector3::scaleVec(), VW, VX, VY, and VZ.

Referenced by LLVOAvatar::writeCAL3D().


Member Data Documentation

U32 LLViewerJoint::mComponents [protected]

Definition at line 141 of file llviewerjoint.h.

Referenced by getSkeletonComponents(), LLViewerJoint(), renderSkeleton(), and setSkeletonComponents().

F32 LLViewerJoint::mMinPixelArea [protected]

Definition at line 142 of file llviewerjoint.h.

Referenced by getLOD(), LLViewerJoint(), and setLOD().

PickName LLViewerJoint::mPickName [protected]

Definition at line 143 of file llviewerjoint.h.

Referenced by getPickName(), LLViewerJoint(), and setPickName().

BOOL LLViewerJoint::mValid [protected]

Definition at line 140 of file llviewerjoint.h.

Referenced by LLViewerJointMesh::drawShape(), LLViewerJointMesh::dump(), getValid(), LLViewerJoint(), LLViewerJointAttachment::LLViewerJointAttachment(), LLViewerJointMesh::LLViewerJointMesh(), render(), setValid(), LLViewerJointMesh::updateFaceData(), LLViewerJointMesh::updateFaceSizes(), LLViewerJointMesh::updateGeometry(), LLViewerJointMesh::updateLOD(), and LLViewerJointAttachment::updateLOD().

BOOL LLViewerJoint::mVisible [protected]

Definition at line 144 of file llviewerjoint.h.

Referenced by LLViewerJointMesh::drawShape(), LLViewerJoint(), and setVisible().

BOOL LLViewerJoint::sDisableLOD = FALSE [static]

Definition at line 137 of file llviewerjoint.h.

Referenced by init_debug_avatar_menu(), render(), and updateLOD().


The documentation for this class was generated from the following files:
Generated on Thu Jul 1 06:11:57 2010 for Second Life Viewer by  doxygen 1.4.7