LLVector3 Class Reference

#include <v3math.h>

Collaboration diagram for LLVector3:

Collaboration graph
[legend]
List of all members.

Public Member Functions

 LLVector3 ()
 LLVector3 (const F32 x, const F32 y, const F32 z)
 LLVector3 (const F32 *vec)
 LLVector3 (const LLVector3d &vec)
 LLVector3 (const LLVector4 &vec)
 LLVector3 (const LLSD &sd)
LLSD getValue () const
void setValue (const LLSD &sd)
const LLVector3operator= (const LLSD &sd)
BOOL isFinite () const
BOOL clamp (F32 min, F32 max)
void quantize16 (F32 lowerxy, F32 upperxy, F32 lowerz, F32 upperz)
void quantize8 (F32 lowerxy, F32 upperxy, F32 lowerz, F32 upperz)
void snap (S32 sig_digits)
BOOL abs ()
void clearVec ()
void zeroVec ()
void setVec (F32 x, F32 y, F32 z)
void setVec (const LLVector3 &vec)
void setVec (const F32 *vec)
const LLVector3setVec (const LLVector4 &vec)
const LLVector3setVec (const LLVector3d &vec)
F32 magVec () const
F32 magVecSquared () const
F32 normVec ()
const LLVector3rotVec (F32 angle, const LLVector3 &vec)
const LLVector3rotVec (F32 angle, F32 x, F32 y, F32 z)
const LLVector3rotVec (const LLMatrix3 &mat)
const LLVector3rotVec (const LLQuaternion &q)
const LLVector3scaleVec (const LLVector3 &vec)
LLVector3 scaledVec (const LLVector3 &vec) const
BOOL isNull () const
BOOL isExactlyZero () const
F32 operator[] (int idx) const
F32operator[] (int idx)

Static Public Member Functions

static BOOL parseVector3 (const char *buf, LLVector3 *value)

Public Attributes

F32 mV [LENGTHOFVECTOR3]

Static Public Attributes

static const LLVector3 zero
static const LLVector3 x_axis
static const LLVector3 y_axis
static const LLVector3 z_axis
static const LLVector3 x_axis_neg
static const LLVector3 y_axis_neg
static const LLVector3 z_axis_neg
static const LLVector3 all_one

Friends

LLVector3 operator+ (const LLVector3 &a, const LLVector3 &b)
LLVector3 operator- (const LLVector3 &a, const LLVector3 &b)
F32 operator * (const LLVector3 &a, const LLVector3 &b)
LLVector3 operator% (const LLVector3 &a, const LLVector3 &b)
LLVector3 operator * (const LLVector3 &a, F32 k)
LLVector3 operator/ (const LLVector3 &a, F32 k)
LLVector3 operator * (F32 k, const LLVector3 &a)
bool operator== (const LLVector3 &a, const LLVector3 &b)
bool operator!= (const LLVector3 &a, const LLVector3 &b)
bool operator< (const LLVector3 &a, const LLVector3 &b)
const LLVector3operator+= (LLVector3 &a, const LLVector3 &b)
const LLVector3operator-= (LLVector3 &a, const LLVector3 &b)
const LLVector3operator%= (LLVector3 &a, const LLVector3 &b)
const LLVector3operator *= (LLVector3 &a, const LLVector3 &b)
const LLVector3operator *= (LLVector3 &a, F32 k)
const LLVector3operator/= (LLVector3 &a, F32 k)
const LLVector3operator *= (LLVector3 &a, const LLQuaternion &b)
LLVector3 operator- (const LLVector3 &a)
std::ostream & operator<< (std::ostream &s, const LLVector3 &a)

Detailed Description

Definition at line 48 of file v3math.h.


Constructor & Destructor Documentation

LLVector3::LLVector3 (  )  [inline]

Definition at line 150 of file v3math.h.

References mV.

Referenced by scaledVec().

LLVector3::LLVector3 ( const F32  x,
const F32  y,
const F32  z 
) [inline]

Definition at line 157 of file v3math.h.

References mV, VX, VY, and VZ.

LLVector3::LLVector3 ( const F32 vec  )  [inline, explicit]

Definition at line 164 of file v3math.h.

References mV, VX, VY, and VZ.

LLVector3::LLVector3 ( const LLVector3d vec  )  [explicit]

Definition at line 191 of file v3math.cpp.

References LLVector3d::mdV, mV, VX, VY, and VZ.

LLVector3::LLVector3 ( const LLVector4 vec  )  [explicit]

Definition at line 198 of file v3math.cpp.

References LLVector4::mV, mV, VX, VY, and VZ.

LLVector3::LLVector3 ( const LLSD sd  ) 

Definition at line 205 of file v3math.cpp.

References tut::sd(), and setValue().


Member Function Documentation

BOOL LLVector3::abs (  ) 

Definition at line 78 of file v3math.cpp.

References f, FALSE, mV, and TRUE.

Referenced by LLAgent::calcCameraMinDistance(), LLAgent::calcFocusOffset(), LLManipRotate::dragConstrained(), LLManipRotate::getObjectAxisClosestToMouse(), LLManipTranslate::handleHover(), LLManipScale::partToMaxScale(), LLManipScale::partToMinScale(), LLHUDIcon::renderIcon(), LLManipTranslate::renderSnapGuides(), LLManipRotate::renderSnapGuides(), LLDebugVarMessageBox::show(), and LLManipScale::updateSnapGuides().

BOOL LLVector3::clamp ( F32  min,
F32  max 
)

Definition at line 61 of file v3math.cpp.

References FALSE, mV, and TRUE.

Referenced by LLAgent::calcFocusOffset(), LLToolBrushLand::modifyLandInSelectionGlobal(), LLBVHLoader::serialize(), and LLFollowCamParams::setFocusOffset().

void LLVector3::clearVec (  )  [inline]

Definition at line 191 of file v3math.h.

References mV.

Referenced by LLBBox::addBBoxAgent(), LLKeyframeMotion::applyConstraint(), LLAgent::calcCameraPositionTargetGlobal(), LLAgent::changeCameraToThirdPerson(), LLRegionPosition::clear(), LLAgent::clearFocusObject(), LLManipScale::cornerToUnitVector(), LLVolumeFace::createCap(), LLVolumeFace::createSide(), LLAgent::endAnimationUpdateUI(), LLSelectMgr::getGrid(), LLManip::getManipNormal(), LLManipRotate::getObjectAxisClosestToMouse(), LLKeyframeMotion::PositionCurve::getValue(), LLKeyframeMotion::ScaleCurve::getValue(), LLToolGrab::handleObjectHit(), LLVOAvatar::idleUpdate(), LLXformMatrix::init(), LLXform::init(), LLVOGrass::LLVOGrass(), LLKeyframeStandMotion::onActivate(), LLPanelPlace::resetLocation(), LLAgent::setLookAt(), LLXform::setPosition(), LLImagePreviewSculpted::setPreviewTarget(), LLImagePreviewAvatar::setPreviewTarget(), LLAgent::setSitCamera(), LLSkinJoint::setupSkinJoint(), LLToolGrab::stopGrab(), LLAgent::validateFocusObject(), and LLViewerJoint::writeCAL3D().

LLSD LLVector3::getValue (  )  const

Definition at line 210 of file v3math.cpp.

References mV.

Referenced by LLControlGroup::declareVec3(), LLFloaterReporter::gatherReport(), LLControlGroup::loadFromFile(), LLControlGroup::loadFromFileLegacy(), LLFloaterSettingsDebug::onCommitSettings(), and LLControlGroup::setVector3().

BOOL LLVector3::isExactlyZero (  )  const [inline]

Definition at line 106 of file v3math.h.

References mV, VX, VY, and VZ.

Referenced by LLKeyframeMotion::applyConstraint(), LLParcel::exportStream(), get_text_color(), LLViewerObject::idleUpdate(), LLBVHLoader::loadTranslationTable(), LLKeyframeStandMotion::onUpdate(), LLEditingMotion::onUpdate(), LLSelectMgr::overrideObjectUpdates(), LLViewerObject::processUpdateMessage(), LLPanelLandOptions::refresh(), rotVec(), run_jumpif(), run_jumpnif(), LLViewerObject::updateDrawable(), and LLVOSky::updateSky().

BOOL LLVector3::isFinite (  )  const [inline]

Definition at line 183 of file v3math.h.

References llfinite, mV, VX, VY, and VZ.

Referenced by LLXform::addPosition(), LLSelectMgr::getGrid(), LLTemplateMessageReader::getQuat(), LLKeyframeMotion::PositionCurve::getValue(), LLCoordFrame::isFinite(), LLCoordFrame::LLCoordFrame(), LLViewerPartGroup::LLViewerPartGroup(), LLCoordFrame::pitch(), LLViewerPartSim::put(), LLCoordFrame::roll(), LLCoordFrame::setOrigin(), LLXform::setPosition(), LLAgent::setPositionAgent(), LLXform::setScale(), LLCoordFrame::translate(), and LLCoordFrame::yaw().

BOOL LLVector3::isNull (  )  const [inline]

Definition at line 413 of file v3math.h.

References F_APPROXIMATELY_ZERO, FALSE, mV, TRUE, VX, VY, and VZ.

Referenced by linesegment_box(), and LLAgent::resetAxes().

F32 LLVector3::magVec (  )  const [inline]

Definition at line 250 of file v3math.h.

References fsqrtf, and mV.

Referenced by LLBVHLoader::applyTranslations(), LLAgent::autoPilot(), LLTranspMap::calcAirTranspDir(), LLAgent::calcCameraFOVZoomFactor(), LLAgent::calcCameraPositionTargetGlobal(), LLSpatialPartition::calcDistance(), LLTranspMap::calcHeight(), LLPipeline::calcPixelArea(), LLGlobalEconomy::calculateLightRent(), LLAgent::cameraOrbitIn(), LLManipRotate::dragConstrained(), LLVelocityBar::draw(), LLVOVolume::generateSilhouette(), LLViewerObject::getBinRadius(), LLVOVolume::getLightDistance(), LLWorld::getMinAllowedZ(), LLToolsLookAtSelection::handleEvent(), LLAgent::handleScrollWheel(), LLCamera::heightInPixels(), hud_render_text(), LLVOTree::idleUpdate(), LLVOAvatar::idleUpdate(), LLAgent::init(), LLVOSky::initSunDirection(), LLPolyMorphData::loadBinary(), LLNameValue::magnitude(), LLAudioEngine::mapWindVecToGain(), LLFlyAdjustMotion::onUpdate(), LLWalkAdjustMotion::onUpdate(), LLFloaterAnimPreview::postBuild(), LLViewerCamera::projectPosAgentToScreen(), LLViewerCamera::projectPosAgentToScreenEdge(), ray_cylinder(), LLSelectNode::renderOneSilhouette(), LLDrawPoolTree::renderTree(), LLVolume::sculpt(), send_agent_update(), LLPanelObject::sendRotation(), LLVOTree::setPixelAreaAndAngle(), LLVOGrass::setPixelAreaAndAngle(), LLVOSky::setSunDirection(), LLJointSolverRP3::setupJoints(), LLVOSky::setWind(), LLJointSolverRP3::solve(), LLManipScale::stretchFace(), LLDebugText::update(), LLViewerPartSourceScript::update(), LLFollowCam::update(), LLFollowCam::updateBehindnessConstraint(), LLSurfacePatch::updateCameraDistanceRegion(), LLVOAvatar::updateCharacter(), LLSpatialGroup::updateDistance(), LLDrawable::updateDistance(), LLVOVolume::updateRadius(), LLVOSky::updateReflectionGeometry(), LLManipScale::updateSnapGuides(), LLVOTextBubble::updateTextures(), LLSurfacePatch::updateVerticalStats(), LLCamera::visibleDistance(), and LLCamera::visibleHorizDistance().

F32 LLVector3::magVecSquared (  )  const [inline]

Definition at line 255 of file v3math.h.

References mV.

Referenced by LLViewerObject::applyAngularVelocity(), LLAgent::buildLocationString(), calc_light_dist(), LLVolumeFace::createCap(), LLManipRotate::dragConstrained(), dtClip(), LLProfile::genNormals(), LLVolume::getTriangleIndices(), LLManipRotate::handleMouseDownOnPart(), LLViewerObject::idleUpdate(), LLDrawable::moveUpdatePipeline(), LLNameValue::nonzero(), process_agent_movement_complete(), LLViewerObject::processUpdateMessage(), LLAgent::propagate(), LLViewerPartSim::put(), ray_sphere(), LLStatusBar::refresh(), LLViewerObject::setScale(), LLViewerObjectList::shiftObjects(), LLJointSolverRP3::solve(), LLQuaternion::unpackFromVector3(), LLViewerPartSourceScript::update(), LLVOPartGroup::updateGeometry(), and LLDrawable::updateLightSet().

F32 LLVector3::normVec (  )  [inline]

Definition at line 226 of file v3math.h.

References FP_MAG_THRESHOLD, fsqrtf, and mV.

Referenced by angle_between(), LLPolyMorphTarget::apply(), LLKeyframeMotion::applyConstraint(), are_parallel(), LLAgent::autoPilot(), LLAgent::calcCameraPositionTargetGlobal(), LLSpatialPartition::calcDistance(), LLAgent::calcFocusOffset(), LLVOSky::calcInScatter(), LLVOVolume::calcLightAtPoint(), LLSurfacePatch::calcNormal(), LLCamera::calculateWorldFrustumPlanes(), LLAgent::cameraOrbitOver(), LLAgent::changeCameraToCustomizeAvatar(), LLAgent::changeCameraToThirdPerson(), LLViewerJointAttachment::clampObjectPosition(), LLJoint::clampRotation(), confirm_replace_attachment(), LLVolumeFace::createCap(), LLVolumeFace::createUnCutCubeCap(), LLVolumeImplFlexible::doFlexibleUpdate(), LLManipRotate::dragConstrained(), LLManipScale::dragCorner(), LLManipRotate::dragUnconstrained(), LLViewerJoint::drawBone(), dtReflection(), LLManipRotate::findNearestPointOnRing(), LLVolume::generateSilhouetteVertices(), LLProfile::genNormals(), LLVOPartGroup::getGeometry(), LLVOGrass::getGeometry(), LLVOClouds::getGeometry(), LLFace::getGeometryVolume(), LLManip::getManipNormal(), LLVOAvatar::getOffObject(), LLManip::getSubdivisionLevel(), LLWorldForceSun::handleEvent(), LLToolsLookAtSelection::handleEvent(), LLManipTranslate::handleHover(), LLManipRotate::handleMouseDownOnPart(), LLToolSelect::handleObjectSelection(), LLManipTranslate::highlightManipulators(), LLManipRotate::highlightManipulators(), LLVOTree::idleUpdate(), LLVOAvatar::idleUpdate(), LLVOSky::initSkyTextureDirs(), LLVOStars::initStars(), LLVOSky::initSunDirection(), LLManipRotate::intersectRayWithSphere(), linesegment_box(), linesegment_circle(), linesegment_cylinder(), linesegment_prism(), linesegment_pyramid(), linesegment_quadrangle(), linesegment_sphere(), linesegment_tetrahedron(), linesegment_triangle(), LLPolyMorphData::loadBinary(), LLBVHLoader::loadTranslationTable(), LLCoordFrame::lookAt(), LLAgent::lookAtObject(), LLCubeMap::map(), LLAudioEngine::mapWindVecToPan(), LLAudioEngine::mapWindVecToPitch(), LLViewerWindow::mouseDirectionGlobal(), LLManipRotate::mouseToRay(), move_vec(), LLManip::nearestPointOnLineFromMouse(), LLKeyframeFallMotion::onActivate(), LLTargetingMotion::onUpdate(), LLWalkAdjustMotion::onUpdate(), LLKeyframeStandMotion::onUpdate(), LLEyeMotion::onUpdate(), LLHeadRotMotion::onUpdate(), LLEditingMotion::onUpdate(), LLMatrix3::orthogonalize(), LLCoordFrame::orthonormalize(), LLCubeMap::paintIn(), process_agent_movement_complete(), projected_vec(), LLSky::propagateHeavenlyBodies(), ray_cylinder(), ray_quadrangle(), ray_triangle(), LLHUDConnector::render(), LLManipScale::renderAxisHandle(), LLManipScale::renderGuidelinesPart(), LLHUDIcon::renderIcon(), LLManipTranslate::renderSnapGuides(), LLManipScale::renderSnapGuides(), LLManipRotate::renderSnapGuides(), LLManipTranslate::renderTranslationHandles(), LLAgent::resetCamera(), LLSurface::resolveNormalGlobal(), LLViewerCamera::rotateToLeftEye(), LLViewerCamera::rotateToRightEye(), LLViewerCamera::roundToPixel(), LLJointSolverRP3::setBAxis(), LLAgent::setFocusOnAvatar(), LLSprite::setNormal(), LLJointSolverRP3::setPoleVector(), LLQuaternion::setQuat(), LLVOSky::setSunDirection(), LLAgent::setupSitCamera(), LLPlane::setVec(), LLDrawPoolWater::shade(), LLQuaternion::shortestArc(), LLAgent::slamLookAt(), LLJointSolverRP3::solve(), LLAgent::startAutoPilotGlobal(), LLViewerPartSourceScript::update(), LLFollowCam::updateBehindnessConstraint(), LLVOAvatar::updateCharacter(), LLSprite::updateFace(), LLVOSky::updateFog(), LLViewerCamera::updateFrustumPlanes(), LLVOSky::updateGeometry(), LLVOGround::updateGeometry(), LLVOSky::updateHeavenlyBodyGeometry(), LLVOSky::updateReflectionGeometry(), LLVolumeImplFlexible::updateRelativeXform(), LLVOSky::updateSky(), LLManipScale::updateSnapGuides(), LLVOStars::updateStarColors(), LLVOSky::updateSunHaloGeometry(), LLHUDText::updateVisibility(), and LLManipRotate::updateVisiblity().

const LLVector3 & LLVector3::operator= ( const LLSD sd  ) 

Definition at line 226 of file v3math.cpp.

References tut::sd(), and setValue().

F32& LLVector3::operator[] ( int  idx  )  [inline]

Definition at line 109 of file v3math.h.

References mV.

F32 LLVector3::operator[] ( int  idx  )  const [inline]

Definition at line 108 of file v3math.h.

References mV.

BOOL LLVector3::parseVector3 ( const char *  buf,
LLVector3 value 
) [static]

Definition at line 247 of file v3math.cpp.

References count, FALSE, NULL, S32, setVec(), TRUE, and v.

Referenced by LLXmlTreeNode::getFastAttributeVector3().

void LLVector3::quantize16 ( F32  lowerxy,
F32  upperxy,
F32  lowerz,
F32  upperz 
)

Definition at line 90 of file v3math.cpp.

References F32_to_U16(), mV, U16_to_F32(), VX, VY, VZ, x, y, and z.

Referenced by LLViewerObject::processUpdateMessage(), LLKeyframeMotion::serialize(), and LLBVHLoader::serialize().

void LLVector3::quantize8 ( F32  lowerxy,
F32  upperxy,
F32  lowerz,
F32  upperz 
)

Definition at line 105 of file v3math.cpp.

References F32_to_U8(), mV, U8_to_F32(), VX, VY, and VZ.

Referenced by LLViewerObject::processUpdateMessage().

const LLVector3 & LLVector3::rotVec ( const LLQuaternion q  ) 

Definition at line 134 of file v3math.cpp.

const LLVector3 & LLVector3::rotVec ( const LLMatrix3 mat  ) 

Definition at line 128 of file v3math.cpp.

const LLVector3 & LLVector3::rotVec ( F32  angle,
F32  x,
F32  y,
F32  z 
)

Definition at line 149 of file v3math.cpp.

References isExactlyZero().

const LLVector3 & LLVector3::rotVec ( F32  angle,
const LLVector3 vec 
)

Definition at line 140 of file v3math.cpp.

References isExactlyZero().

Referenced by LLAgent::calcCameraMinDistance(), LLAgent::calcFocusOffset(), LLCamera::calculateWorldFrustumPlanes(), LLManip::getManipAxis(), LLManip::getManipNormal(), LLViewerJointCollisionVolume::getVolumePos(), LLNetMap::globalPosToView(), LLManipTranslate::handleHover(), LLEditingMotion::onUpdate(), LLCoordFrame::rotate(), LLViewerJointAttachment::setupDrawable(), LLVOAvatar::sitOnObject(), LLViewerPartSourceScript::update(), and LLManipScale::updateSnapGuides().

LLVector3 LLVector3::scaledVec ( const LLVector3 vec  )  const

Definition at line 168 of file v3math.cpp.

References LLVector3(), and scaleVec().

Referenced by LLCamera::AABBInFrustum().

const LLVector3 & LLVector3::scaleVec ( const LLVector3 vec  ) 

Definition at line 159 of file v3math.cpp.

References mV, VX, VY, and VZ.

Referenced by LLVOVolume::agentPositionToVolume(), LLVOVolume::generateSilhouette(), LLViewerJointCollisionVolume::getVolumePos(), LLManipTranslate::handleHover(), LLVOAvatar::idleUpdate(), scaledVec(), LLXformMatrix::update(), LLManipScale::updateSnapGuides(), LLVOVolume::volumePositionToAgent(), LLViewerJointMesh::writeCAL3D(), LLViewerJoint::writeCAL3D(), and LLKeyframeMotion::writeCAL3D().

void LLVector3::setValue ( const LLSD sd  ) 

Definition at line 219 of file v3math.cpp.

References mV, and tut::sd().

Referenced by LLVector3(), and operator=().

const LLVector3 & LLVector3::setVec ( const LLVector3d vec  ) 

Definition at line 175 of file v3math.cpp.

References LLVector3d::mdV, and mV.

const LLVector3 & LLVector3::setVec ( const LLVector4 vec  ) 

Definition at line 183 of file v3math.cpp.

References LLVector4::mV, and mV.

void LLVector3::setVec ( const F32 vec  )  [inline]

Definition at line 219 of file v3math.h.

References mV.

void LLVector3::setVec ( const LLVector3 vec  )  [inline]

Definition at line 212 of file v3math.h.

References mV.

void LLVector3::setVec ( F32  x,
F32  y,
F32  z 
) [inline]

Definition at line 205 of file v3math.h.

References mV, VX, VY, and VZ.

Referenced by add_object(), LLBBox::addBBoxAgent(), audio_update_listener(), LLAgent::autoPilot(), LLSpatialGroup::boundObjects(), LLAgent::calcCameraFOVZoomFactor(), LLAgent::calcCameraPositionTargetGlobal(), LLAgent::calcFocusOffset(), LLHUDEffectPointAt::calcTargetPosition(), LLHUDEffectLookAt::calcTargetPosition(), LLManipScale::cornerToUnitVector(), LLSurface::create(), LLManipRotate::dragConstrained(), LLManipScale::dragCorner(), LLManipScale::dragFace(), LLVolume::generate(), LLPath::genNGon(), LLProfile::genNGon(), LLFace::getGeometryVolume(), LLVOAvatar::getGround(), LLAgent::getPosAgentFromGlobal(), LLViewerRegion::getPosRegionFromGlobal(), LLWorldMapView::globalPosToView(), LLNetMap::globalPosToView(), handle_sit_or_stand(), LLWorldForceSun::handleEvent(), LLManipTranslate::handleHover(), LLToolSelect::handleObjectSelection(), hud_render_text(), idle(), LLXform::init(), LLParcel::init(), LLListener::init(), init_audio(), LLCoordFrame::LLCoordFrame(), LLJointSolverRP3::LLJointSolverRP3(), LLMatrix3::LLMatrix3(), LLPolySkeletalDistortion::LLPolySkeletalDistortion(), LLPrimitive::LLPrimitive(), LLTriangleLineSegmentIntersect(), LLBVHLoader::loadTranslationTable(), LLAudioEngine::mapWindVecToPan(), LLAudioEngine::mapWindVecToPitch(), LLV4Matrix4::multiply(), LLV4Matrix3::multiply(), LLTargetingMotion::onUpdate(), LLWalkAdjustMotion::onUpdate(), LLEyeMotion::onUpdate(), parseVector3(), LLPath::PathPt::PathPt(), LLSpatialPartition::pickDrawable(), LLViewerObject::processUpdateMessage(), LLViewerCamera::projectScreenToPosAgent(), ray_cylinder(), ray_sphere(), LLVolumeImplFlexible::remapSections(), LLNetMap::renderScaledPointGlobal(), LLManipTranslate::renderSnapGuides(), LLManipRotate::renderSnapGuides(), LLManipTranslate::renderTranslationHandles(), LLCoordFrame::reset(), LLCoordFrame::resetAxes(), LLVOAvatar::resolveHeightGlobal(), LLSurface::resolveNormalGlobal(), LLWorld::resolveStepHeightGlobal(), LLSelectMgr::sendListToRegions(), LLBVHLoader::serialize(), LLPrimitive::setAcceleration(), LLPrimitive::setAngularVelocity(), LLVolumeImplFlexible::setAttributesOfAllSections(), LLCoordFrame::setAxes(), LLCoordFrame::setOrigin(), LLSurfacePatch::setOriginGlobal(), LLFloaterReporter::setPosBox(), LLXform::setPosition(), LLAgent::setRegion(), LLXform::setScale(), LLPipeline::setupHWLights(), LLPrimitive::setVelocity(), LLQuaternion::shortestArc(), LLDebugVarMessageBox::slider_changed(), LLToolGrab::startGrab(), LLManipScale::stretchFace(), LLFlexibleObjectData::unpack(), LLFollowCam::update(), LLVOCloth::update(), LLAudioChannelFMOD::update3DPosition(), LLFollowCam::updateBehindnessConstraint(), LLSprite::updateFace(), LLAgent::updateFocusOffset(), LLViewerCamera::updateFrustumPlanes(), LLVOTree::updateGeometry(), LLManipScale::updateSnapGuides(), LLVOTree::updateSpatialExtents(), LLVOAvatar::updateSpatialExtents(), LLViewerObject::updateSpatialExtents(), LLAudioEngine_FMOD::updateWind(), and LLFloaterReporter::~LLFloaterReporter().

void LLVector3::snap ( S32  sig_digits  ) 

Definition at line 113 of file v3math.cpp.

References mV, snap_to_sig_figs(), VX, VY, and VZ.

void LLVector3::zeroVec (  )  [inline]

Definition at line 198 of file v3math.h.

References mV.

Referenced by LLListener::init(), LLPolyMorphData::LLPolyMorphData(), and LLPolyMorphData::loadBinary().


Friends And Related Function Documentation

LLVector3 operator * ( F32  k,
const LLVector3 a 
) [friend]

Definition at line 293 of file v3math.h.

LLVector3 operator * ( const LLVector3 a,
F32  k 
) [friend]

Definition at line 288 of file v3math.h.

F32 operator * ( const LLVector3 a,
const LLVector3 b 
) [friend]

Definition at line 272 of file v3math.h.

const LLVector3& operator *= ( LLVector3 a,
const LLQuaternion b 
) [friend]

Definition at line 232 of file v3math.cpp.

const LLVector3& operator *= ( LLVector3 a,
F32  k 
) [friend]

Definition at line 344 of file v3math.h.

const LLVector3& operator *= ( LLVector3 a,
const LLVector3 b 
) [friend]

Definition at line 352 of file v3math.h.

bool operator!= ( const LLVector3 a,
const LLVector3 b 
) [friend]

Definition at line 305 of file v3math.h.

LLVector3 operator% ( const LLVector3 a,
const LLVector3 b 
) [friend]

Definition at line 277 of file v3math.h.

const LLVector3& operator%= ( LLVector3 a,
const LLVector3 b 
) [friend]

Definition at line 337 of file v3math.h.

LLVector3 operator+ ( const LLVector3 a,
const LLVector3 b 
) [friend]

Definition at line 260 of file v3math.h.

const LLVector3& operator+= ( LLVector3 a,
const LLVector3 b 
) [friend]

Definition at line 321 of file v3math.h.

LLVector3 operator- ( const LLVector3 a  )  [friend]

Definition at line 369 of file v3math.h.

LLVector3 operator- ( const LLVector3 a,
const LLVector3 b 
) [friend]

Definition at line 266 of file v3math.h.

const LLVector3& operator-= ( LLVector3 a,
const LLVector3 b 
) [friend]

Definition at line 329 of file v3math.h.

LLVector3 operator/ ( const LLVector3 a,
F32  k 
) [friend]

Definition at line 282 of file v3math.h.

const LLVector3& operator/= ( LLVector3 a,
F32  k 
) [friend]

Definition at line 360 of file v3math.h.

bool operator< ( const LLVector3 a,
const LLVector3 b 
) [friend]

Definition at line 312 of file v3math.h.

std::ostream& operator<< ( std::ostream &  s,
const LLVector3 a 
) [friend]

Definition at line 121 of file v3math.cpp.

bool operator== ( const LLVector3 a,
const LLVector3 b 
) [friend]

Definition at line 298 of file v3math.h.


Member Data Documentation

const LLVector3 LLVector3::all_one [static]

Definition at line 60 of file v3math.h.

F32 LLVector3::mV[LENGTHOFVECTOR3]

Definition at line 51 of file v3math.h.

Referenced by abs(), LLBBoxLocal::addPoint(), LLBBox::addPointLocal(), LLTemplateMessageBuilder::addQuat(), LLFloaterScriptDebug::addScriptLine(), LLTemplateMessageBuilder::addVector3(), LLSelectMgr::adjustTexturesByScale(), LLVOVolume::agentPositionToVolume(), audio_update_wind(), LLAgent::autoPilot(), LLSpatialGroup::boundObjects(), LLAgent::buildLocationString(), bytestream2vector(), calc_binormal_from_triangle(), LLVOSky::calcBrightnessScaleAndColors(), LLAgent::calcCameraMinDistance(), LLAgent::calcCameraPositionTargetGlobal(), LLSpatialPartition::calcDistance(), LLAgent::calcFocusOffset(), LLVOSky::calcInScatter(), LLVOSky::calcSkyColorInDir(), LLVOSky::calculateColors(), LLViewerParcelMgr::callbackDivideLand(), LLViewerParcelMgr::callbackJoinLand(), LLViewerCamera::cameraUnderWater(), LLAgent::changeCameraToCustomizeAvatar(), LLAgent::changeCameraToThirdPerson(), LLWorldMapView::checkItemHit(), clamp(), clearVec(), clip_side_to_horizon(), LLWorld::clipToVisibleRegions(), LLVOAvatar::computeBodySize(), LLLandmark::constructFromString(), LLBBox::containsPointLocal(), LLSurface::containsPosition(), LLVOSky::cosHorizon(), LLVolumeFace::createCap(), LLKeyframeMotion::deserialize(), LLStartUp::dispatchURL(), LLVolumeImplFlexible::doFlexibleUpdate(), LLVolumeImplFlexible::doIdleUpdate(), LLManipRotate::dragConstrained(), LLManipScale::dragFace(), LLWorldMapView::draw(), LLNetMap::draw(), LLHorizontalCompass::draw(), LLCompass::draw(), LLDebugVarMessageBox::draw(), draw_line_cube(), LLWorldMapView::drawFrustum(), LLWorldMapView::drawImage(), LLWorldMapView::drawImageStack(), LLWorldMapView::drawTracking(), LLNetMap::drawTracking(), dtReflection(), earlyFail(), LLSurfacePatch::eval(), LLBBoxLocal::expand(), LLBBox::expand(), LLParcel::exportStream(), LLParcel::extendAABB(), LLVOVolume::genBBoxes(), LLVolume::generate(), LLVLComposition::generateHeights(), LLPipeline::generateReflectionMap(), LLVOSky::generateScatterMap(), LLVOVolume::generateSilhouette(), LLSurface::generateWaterTexture(), LLProfile::genNGon(), LLProfile::genNormals(), LLFace::genVolumeBBoxes(), LLVolumeImplFlexible::getAnchorPosition(), LLQuaternion::getAngleAxis(), LLXMLNode::getAttributeVector3(), LLWind::getAverage(), LLVOVolume::getBinRadius(), LLVOPartGroup::getBinRadius(), LLParcel::getCenterpoint(), LLFloaterChat::getChatPosition(), LLWind::getCloudVelocity(), LLManipRotate::getConstraintAxis(), LLCloudLayer::getDensityRegion(), LLVOGrass::getGeometry(), LLFace::getGeometryVolume(), LLSimInfo::getGlobalPos(), LLLandmark::getGlobalPos(), LLAgent::getHomePosGlobal(), LLDrawable::getIntensity(), LLViewerObject::getMidScale(), LLManipTranslate::getMinGridScale(), LLManip::getMousePointOnPlaneGlobal(), LLManipRotate::getObjectAxisClosestToMouse(), LLVOAvatar::getOffObject(), LLCoordFrame::getOpenGLRotation(), LLCoordFrame::getOpenGLTransform(), LLCoordFrame::getOpenGLTranslation(), LLSurfacePatch::getPointAgent(), LLTemplateMessageReader::getQuat(), LLPanelDirFindAll::getSearchURLSuffix(), LLPanelVolume::getState(), LLPanelObject::getState(), LLPanelFace::getState(), LLSurfacePatch::getTexCoords(), LLVolume::getTriangleIndices(), getValue(), LLWind::getVelocity(), LLAgent::getVelocityZ(), gl_segmented_rect_3d_tex(), LLWorldMapView::globalPosToView(), LLNetMap::globalPosToView(), handle_claim_public_land(), LLToolGun::handleHover(), LLManipTranslate::handleHover(), LLToolBrushLand::handleMouseDown(), LLToolSelect::handleObjectSelection(), LLManipTranslate::highlightIntersection(), LLManipTranslate::highlightManipulators(), LLManipScale::highlightManipulators(), hud_render_text(), LLVOAvatar::idleUpdate(), LLParcel::importStream(), LLViewerParcelMgr::inAgentParcel(), LLCloudGroup::inGroup(), LLMatrix4::initAll(), LLVOStars::initStars(), isExactlyZero(), isFinite(), isNull(), LLViewerParcelOverlay::isOwned(), LLViewerParcelOverlay::isOwnedGroup(), LLViewerParcelOverlay::isOwnedOther(), LLViewerParcelOverlay::isOwnedSelf(), LLViewerParcelOverlay::isSoundLocal(), LLVOSky::isSunUp(), lat2xyz(), lat2xyz_rad(), ll_sd_from_vector3(), ll_vector3_from_sd(), LLLineSegmentAABB(), LLRayAABB(), LLSphereAABB(), LLVector3(), LLVector3d::LLVector3d(), LLVector4::LLVector4(), LLVOSky::LLVOSky(), LLPolyMorphData::loadBinary(), LLControlGroup::loadFromFile(), LLPolyMeshSharedData::loadMesh(), LLBVHLoader::loadTranslationTable(), lsa_fprint_heap(), lsa_print_heap(), magVec(), magVecSquared(), LLCubeMap::map(), LLToolBrushLand::modifyLandInSelectionGlobal(), LLViewerWindow::mouseDirectionCamera(), LLViewerWindow::mousePointOnLandGlobal(), move_vec(), LLManip::nearestPointOnLineFromMouse(), normVec(), LLKeyframeFallMotion::onActivate(), LLFloaterSettingsDebug::onCommitSettings(), LLFlyAdjustMotion::onUpdate(), LLWalkAdjustMotion::onUpdate(), operator[](), LLListener_FMOD::orient(), LLViewerParcelOverlay::ownership(), LLPartSysData::pack(), LLSelectMgr::packMultipleUpdate(), LLDataPackerAsciiFile::packVector3(), LLDataPackerAsciiBuffer::packVector3(), LLDataPackerBinaryBuffer::packVector3(), LLImagePreviewSculpted::pan(), LLImagePreviewAvatar::pan(), LLPreviewAnimation::pan(), LLManipScale::partToMaxScale(), LLManipScale::partToMinScale(), planarProjection(), LLViewerRegion::pointInRegionGlobal(), LLViewerPartGroup::posInGroup(), LLPipeline::postSort(), LLScriptLibData::print(), print_pushargv(), LLScriptLibData::print_separator(), LLNameValue::printData(), LLScriptLSOParse::printGlobals(), process_agent_movement_complete(), process_script_teleport_request(), process_set_follow_cam_properties(), process_sound_trigger(), LLViewerParcelMgr::processParcelProperties(), LLViewerObject::processUpdateMessage(), LLCubeMap::project(), LLViewerCamera::projectPosAgentToScreen(), LLViewerCamera::projectPosAgentToScreenEdge(), LLAgent::propagate(), quantize16(), quantize8(), ray_box(), ray_cylinder(), ray_prism(), ray_pyramid(), ray_tetrahedron(), LLCoordFrame::readOrientation(), LLSpatialGroup::rebound(), LLStatusBar::refresh(), LLPanelLandOptions::refresh(), LLURLDispatcherImpl::regionHandleCallback(), LLVolumeImplFlexible::remapSections(), LLVoiceVisualizer::render(), LLManipScale::render(), LLManipRotate::render(), LLHUDEffectBeam::render(), LLHUDConnector::render(), LLImagePreviewSculpted::render(), LLDrawPoolStars::render(), LLDrawPoolSky::render(), LLDrawPoolGlow::render(), LLDrawPoolGround::render(), LLVOCloth::render(), LLManipTranslate::renderArrow(), LLDrawPoolAvatar::renderAvatars(), LLManipScale::renderAxisHandle(), LLTracker::renderBeacon(), LLViewerParcelMgr::renderCollisionSegments(), LLManipScale::renderCorners(), LLManipScale::renderEdges(), LLManipScale::renderFaces(), LLManip::renderGuidelines(), LLHUDIcon::renderIcon(), LLViewerObjectList::renderObjectBeacons(), LLViewerObjectList::renderObjectsForMap(), LLViewerParcelMgr::renderOneSegment(), LLSelectNode::renderOneSilhouette(), LLToolBrushLand::renderOverlay(), LLNetMap::renderPoint(), renderPoints(), LLViewerParcelOverlay::renderPropertyLines(), LLViewerParcelMgr::renderRect(), LLFace::renderSelectedUV(), LLSelectMgr::renderSilhouettes(), LLDrawPoolTerrain::renderSimple(), LLVOAvatar::renderSkinned(), LLManipTranslate::renderSnapGuides(), LLManipScale::renderSnapGuides(), LLManipRotate::renderSnapGuides(), LLSurface::renderSurfaceBounds(), LLHUDText::renderText(), LLManipTranslate::renderTranslationHandles(), LLDrawPoolTree::renderTree(), LLWind::renderVectors(), LLFacePool::renderVisibility(), LLManip::renderXYZ(), LLViewerParcelMgr::requestHoverParcelProperties(), LLAgent::resetCamera(), LLSurface::resolveHeightRegion(), LLSurface::resolvePatchRegion(), rotate_vector(), LLCoordFrame::rotateToAbsolute(), LLCoordFrame::rotateToLocal(), run_cast(), run_print(), run_pushargv(), LLSelectNode::saveTextureScaleRatios(), scaleVec(), LLVolume::sculpt(), sculpt_rgb_to_vector(), LLSelectMgr::selectionTexScaleAutofit(), LLViewerParcelMgr::selectLand(), LLPanelObject::sendPosition(), LLVoiceClient::sendPositionalUpdate(), LLKeyframeMotion::serialize(), LLBVHLoader::serialize(), LLVolumeImplFlexible::setAttributesOfAllSections(), LLCoordFrame::setAxes(), LLPartData::setEndColor(), LLAgent::setFocusOnAvatar(), LLMatrix4::setFwdCol(), LLMatrix4::setFwdRow(), LLMatrix4::setLeftCol(), LLMatrix4::setLeftRow(), LLCoordFrame::setOrigin(), LLSurfacePatch::setOriginGlobal(), LLCoordFrame::setOriginX(), LLCoordFrame::setOriginY(), LLCoordFrame::setOriginZ(), LLPartSysData::setPartAccel(), LLViewerObject::setPixelAreaAndAngle(), LLFloaterReporter::setPosBox(), LLListener_FMOD::setPosition(), LLXform::setPositionX(), LLXform::setPositionY(), LLXform::setPositionZ(), LLQuaternion::setQuat(), LLMatrix3::setRows(), LLPartData::setStartColor(), LLAgent::setStartPosition(), LLVOSky::setSunDirection(), LLMatrix4::setTranslation(), setup_clip_plane(), setup_hud_matrices(), LLPipeline::setupAvatarLights(), LLVOAvatar::setupBone(), LLMatrix4::setUpCol(), LLPipeline::setupHWLights(), LLViewerParcelMgr::setupParcelBuy(), LLMatrix4::setUpRow(), LLAgent::setupSitCamera(), setValue(), LLVector4::setVec(), setVec(), LLVector3d::setVec(), LLListener_FMOD::setVelocity(), LLPrimitive::setVelocityX(), LLPrimitive::setVelocityY(), LLPrimitive::setVelocityZ(), LLJoint::setWorldPosition(), LLDrawPoolWater::shade(), LLQuaternion::shortestArc(), LLDebugVarMessageBox::show(), LLAgent::slamLookAt(), snap(), sort_manip_by_end_z(), sort_manip_by_z(), LLAgent::startAutoPilotGlobal(), LLManipScale::stretchFace(), LLAgent::teleportViaLocation(), LLFloaterWorldMap::trackURL(), LLCoordFrame::transformToAbsolute(), LLCoordFrame::transformToLocal(), LLMatrix4::translate(), LLV4Matrix4::translate(), LLCoordFrame::translate(), LLListener_FMOD::translate(), LLManipScale::unitVectorToLocalBBoxExtent(), LLPartSysData::unpack(), LLQuaternion::unpackFromVector3(), LLDataPackerAsciiFile::unpackVector3(), LLDataPackerAsciiBuffer::unpackVector3(), LLDataPackerBinaryBuffer::unpackVector3(), LLDebugText::update(), LLViewerPartSourceScript::update(), LLFollowCam::update(), LLAudioChannelFMOD::update3DPosition(), update_min_max(), LLFollowCam::updateBehindnessConstraint(), LLAgent::updateCamera(), LLVOAvatar::updateCharacter(), LLSurfacePatch::updateCompositionStats(), LLDrawable::updateDistance(), LLVOSky::updateFog(), LLVOWater::updateGeometry(), LLVOTree::updateGeometry(), LLVOSky::updateGeometry(), LLVOPartGroup::updateGeometry(), LLVOGround::updateGeometry(), LLVOAvatar::updateHeadOffset(), LLVOSky::updateHeavenlyBodyGeometry(), LLVOGrass::updateLOD(), LLXformMatrix::updateMatrix(), LLViewerPartSourceChat::updatePart(), LLViewerPartSourceSpiral::updatePart(), LLViewerPartGroup::updateParticles(), LLViewerParcelOverlay::updatePropertyLines(), LLVOSky::updateReflectionGeometry(), LLVOVolume::updateRelativeXform(), LLVolumeImplFlexible::updateRelativeXform(), LLVOAvatar::updateShadowFaces(), LLManipScale::updateSnapGuides(), LLVOTree::updateSpatialExtents(), LLSpatialBridge::updateSpatialExtents(), LLViewerObject::updateText(), LLSurfacePatch::updateVerticalStats(), LLHUDText::updateVisibility(), LLAudioEngine_FMOD::updateWind(), LLSpatialGroup::validate(), vec3to4(), vector2bytestream(), LLWorldMapView::viewPosToGlobal(), LLNetMap::viewPosToGlobal(), LLVOVolume::writeCAL3D(), LLViewerJoint::writeCAL3D(), LLKeyframeMotion::writeCAL3D(), LLCoordFrame::writeOrientation(), and zeroVec().

const LLVector3 LLVector3::x_axis [static]

Definition at line 54 of file v3math.h.

Referenced by LLParcel::clearParcel(), LLManipRotate::dragConstrained(), LLManipScale::dragFace(), LLManip::getManipAxis(), LLManip::getManipNormal(), LLManipRotate::getObjectAxisClosestToMouse(), LLVOAvatar::getOffObject(), LLToolSelect::handleObjectSelection(), LLManipRotate::highlightManipulators(), LLVOSky::initSunDirection(), LLBVHLoader::optimize(), LLManipTranslate::renderSnapGuides(), LLManipRotate::renderSnapGuides(), LLManipTranslate::renderTranslationHandles(), LLVOSky::setSunDirection(), LLAgent::startAutoPilotGlobal(), LLVOAvatar::updateCharacter(), LLAgent::updateLookAt(), and LLManipScale::updateSnapGuides().

const LLVector3 LLVector3::x_axis_neg [static]

Definition at line 57 of file v3math.h.

Referenced by LLManipRotate::getObjectAxisClosestToMouse().

const LLVector3 LLVector3::y_axis [static]

Definition at line 55 of file v3math.h.

Referenced by add_object(), LLManipRotate::dragConstrained(), LLManipScale::dragFace(), LLManip::getManipAxis(), LLManip::getManipNormal(), LLManipRotate::getObjectAxisClosestToMouse(), LLManipRotate::highlightManipulators(), LLBVHLoader::optimize(), LLImagePreviewSculpted::render(), LLImagePreviewAvatar::render(), LLPreviewAnimation::render(), LLManipTranslate::renderSnapGuides(), LLManipRotate::renderSnapGuides(), LLHUDText::renderText(), LLMorphView::updateCamera(), LLVOAvatar::updateCharacter(), and LLManipScale::updateSnapGuides().

const LLVector3 LLVector3::y_axis_neg [static]

Definition at line 58 of file v3math.h.

Referenced by LLManipRotate::getObjectAxisClosestToMouse().

const LLVector3 LLVector3::z_axis [static]

Definition at line 56 of file v3math.h.

Referenced by LLAgent::changeCameraToFollow(), LLVolumeImplFlexible::doFlexibleUpdate(), LLManipRotate::dragConstrained(), LLManipScale::dragFace(), LLProfile::genNormals(), LLVolumeImplFlexible::getAnchorPosition(), LLManip::getManipAxis(), LLManip::getManipNormal(), LLSky::getMoonDirection(), LLManipRotate::getObjectAxisClosestToMouse(), LLAgent::getReferenceUpVector(), LLSky::getSunDirection(), LLManipTranslate::handleMouseDownOnPart(), LLManipRotate::highlightManipulators(), LLAgent::LLAgent(), LLFollowCam::LLFollowCam(), LLAgent::lookAtObject(), LLImagePreviewSculpted::render(), LLImagePreviewAvatar::render(), LLPreviewAnimation::render(), LLDrawPoolWater::render(), LLDrawPoolWater::renderShaderSimple(), LLManipTranslate::renderSnapGuides(), LLManipRotate::renderSnapGuides(), LLHUDText::renderText(), LLWorld::resolveLandNormalGlobal(), LLSurface::resolveNormalGlobal(), LLBVHLoader::serialize(), LLVolumeImplFlexible::setAttributesOfAllSections(), LLPipeline::setupAvatarLights(), LLDrawPoolWater::shade(), LLFollowCam::update(), LLMorphView::updateCamera(), LLAgent::updateCamera(), LLVOAvatar::updateCharacter(), LLVOSky::updateGeometry(), LLVOSky::updateHeavenlyBodyGeometry(), LLVOSky::updateReflectionGeometry(), and LLManipScale::updateSnapGuides().

const LLVector3 LLVector3::z_axis_neg [static]

Definition at line 59 of file v3math.h.

Referenced by LLManipRotate::getObjectAxisClosestToMouse().

const LLVector3 LLVector3::zero [static]

Definition at line 53 of file v3math.h.

Referenced by LLVOAvatar::buildSkeleton(), LLAgent::calcCameraPositionTargetGlobal(), LLAgent::changeCameraToFollow(), LLAgent::changeCameraToThirdPerson(), LLParcel::clearParcel(), LLHoverView::draw(), LLPolyMorphTarget::getAvgDistortion(), LLPolyMorphTarget::getFirstDistortion(), LLAudioEngine::getListenerPos(), LLPolyMorphTarget::getNextDistortion(), LLControlGroup::getVector3(), LLAgent::getVelocity(), LLPolyMorphTarget::getVertexDistortion(), LLVOAvatar::getVolumePos(), LLCharacter::getVolumePos(), gl_segmented_rect_3d_tex(), handle_dump_attachments(), LLObjectTouch::handleEvent(), LLManipTranslate::handleHover(), LLAgent::heardChat(), LLManipTranslate::highlightManipulators(), LLManipScale::highlightManipulators(), init_audio(), LLManipRotate::intersectRayWithSphere(), LLFollowCam::LLFollowCam(), LLImagePreviewAvatar::LLImagePreviewAvatar(), LLPreviewAnimation::LLPreviewAnimation(), LLFlyAdjustMotion::onActivate(), LLWalkAdjustMotion::onActivate(), LLPelvisFixMotion::onUpdate(), LLWalkAdjustMotion::onUpdate(), LLFloaterGodTools::processRegionInfo(), LLVOTree::processUpdateMessage(), LLVOGrass::processUpdateMessage(), LLViewerObject::processUpdateMessage(), LLVolumeImplFlexible::remapSections(), LLHUDText::renderText(), LLSelectMgr::repeatDuplicate(), run_cast(), LLSelectMgr::selectObjectAndFamily(), LLSelectMgr::selectObjectOnly(), LLSky::setOverrideSun(), LLVOAvatar::sitOnObject(), LLAgent::startTyping(), LLAgent::updateCamera(), LLVOAvatar::updateCharacter(), and LLVOVolume::writeCAL3D().


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