#include <llviewercamera.h>
Definition at line 53 of file llviewercamera.h.
LLViewerCamera::LLViewerCamera | ( | ) |
Definition at line 88 of file llviewercamera.cpp.
References calcProjection(), DEFAULT_FIELD_OF_VIEW, LLCamera::getFar(), mCameraFOVDefault, mPixelMeterRatio, mScreenPixelArea, mZoomFactor, and mZoomSubregion.
void LLViewerCamera::updateCameraLocation | ( | const LLVector3 & | center, | |
const LLVector3 & | up_direction, | |||
const LLVector3 & | point_of_interest | |||
) |
Definition at line 98 of file llviewercamera.cpp.
References LLStat::addValue(), gAgent, LLQuaternion::getAngleAxis(), LLCoordFrame::getAtAxis(), LLSingleton< LLViewerJoystick >::getInstance(), LLSingleton< LLToolMgr >::getInstance(), LLCoordFrame::getOrigin(), LLAgent::getPositionAgent(), LLAgent::getRegion(), LLViewerRegion::getWaterHeight(), llmax(), llmin(), mAngularVelocityStat, LLCamera::mAspect, mCameraFOVDefault, mLastPointOfInterest, mPixelMeterRatio, mScreenPixelArea, LLVector3::mV, mVelocityStat, LLCamera::mViewHeightInPixels, NULL, S32, LLCoordFrame::setOriginAndLookAt(), LLQuaternion::shortestArc(), and tanf.
Referenced by LLAgent::updateCamera().
void LLViewerCamera::updateFrustumPlanes | ( | LLCamera & | camera, | |
BOOL | ortho = FALSE , |
|||
BOOL | zflip = FALSE | |||
) | [static] |
Definition at line 194 of file llviewercamera.cpp.
References LLCamera::calcAgentFrustumPlanes(), LLCamera::getFar(), LLCoordFrame::getOrigin(), gGLModelView, gGLProjection, gGLViewport, i, LLVector3::normVec(), and LLVector3::setVec().
Referenced by LLPipeline::generateReflectionMap(), LLPipeline::generateWaterReflection(), LLViewerWindow::hitObjectOrLandGlobalAsync(), render_hud_attachments(), and setPerspective().
void LLViewerCamera::setPerspective | ( | BOOL | for_selection, | |
S32 | x, | |||
S32 | y_from_bot, | |||
S32 | width, | |||
S32 | height, | |||
BOOL | limit_select_distance, | |||
F32 | z_near = 0 , |
|||
F32 | z_far = 0 | |||
) |
Definition at line 263 of file llviewercamera.cpp.
References calcProjection(), LLCamera::calculateFrustumPlanesFromWindow(), FALSE, gAgent, LLCamera::getAspect(), LLControlGroup::getBOOL(), LLControlGroup::getF32(), LLCamera::getFar(), LLCamera::getNear(), LLCoordFrame::getOpenGLTransform(), LLCamera::getView(), LLViewerWindow::getWindowHeight(), LLViewerWindow::getWindowWidth(), gGLModelView, gGLProjection, gGLViewport, gGLZFar, gGLZNear, gl_perspective(), gl_pick_matrix(), gSavedSettings, gViewerWindow, i, llceil(), MAX_FAR_CLIP, LLAgent::mDrawDistance, mZoomFactor, mZoomSubregion, OGL_TO_CFR_ROTATION, RAD_TO_DEG, LLCoordFrame::translate(), TRUE, and updateFrustumPlanes().
Referenced by LLViewerWindow::analyzeHit(), LLToolSelectRect::handleRectangleSelection(), LLViewerWindow::hitObjectOrLandGlobalAsync(), LLVisualParamHint::render(), LLImagePreviewSculpted::render(), LLImagePreviewAvatar::render(), LLPreviewAnimation::render(), and LLViewerWindow::setup3DRender().
const LLMatrix4 & LLViewerCamera::getProjection | ( | ) | const |
Definition at line 155 of file llviewercamera.cpp.
References calcProjection(), LLCamera::getFar(), and mProjectionMatrix.
Referenced by LLAgent::calcFocusOffset(), LLManipTranslate::highlightManipulators(), and LLManipScale::highlightManipulators().
const LLMatrix4 & LLViewerCamera::getModelview | ( | ) | const |
Definition at line 162 of file llviewercamera.cpp.
References LLCoordFrame::getMatrixToLocal(), mModelviewMatrix, and OGL_TO_CFR_ROTATION.
Referenced by LLManipTranslate::highlightManipulators(), LLManipScale::highlightManipulators(), LLDrawPoolWater::render(), and LLPipeline::setupAvatarLights().
void LLViewerCamera::projectScreenToPosAgent | ( | const S32 | screen_x, | |
const S32 | screen_y, | |||
LLVector3 * | pos_agent | |||
) | const |
Definition at line 395 of file llviewercamera.cpp.
References gGLModelView, gGLProjection, gGLViewport, and LLVector3::setVec().
Referenced by LLManipRotate::mouseToRay(), and roundToPixel().
BOOL LLViewerCamera::projectPosAgentToScreen | ( | const LLVector3 & | pos_agent, | |
LLCoordGL & | out_point, | |||
const BOOL | clamp = TRUE | |||
) | const |
Definition at line 411 of file llviewercamera.cpp.
References FALSE, LLCoordFrame::getAtAxis(), LLViewerWindow::getDisplayScale(), LLCoordFrame::getOrigin(), LLViewerWindow::getWindowRect(), gGLModelView, gGLProjection, gGLViewport, gViewerWindow, lltrunc(), LLVector3::magVec(), LLRectBase< Type >::mBottom, LLRectBase< Type >::mLeft, LLRectBase< Type >::mRight, LLRectBase< Type >::mTop, LLVector2::mV, LLVector3::mV, LLCoord::mX, LLCoord::mY, S32, TRUE, VX, VY, and VZ.
Referenced by LLToolGrab::handleHoverActive(), LLToolCamera::handleMouseUp(), LLHUDText::renderText(), roundToPixel(), and LLManipRotate::updateVisiblity().
BOOL LLViewerCamera::projectPosAgentToScreenEdge | ( | const LLVector3 & | pos_agent, | |
LLCoordGL & | out_point | |||
) | const |
Definition at line 515 of file llviewercamera.cpp.
References FALSE, LLCoordFrame::getAtAxis(), LLViewerWindow::getDisplayScale(), LLRectBase< Type >::getHeight(), LLCoordFrame::getOrigin(), LLViewerWindow::getVirtualWindowRect(), LLRectBase< Type >::getWidth(), gGLModelView, gGLProjection, gGLViewport, gViewerWindow, lltrunc(), LLVector3::magVec(), LLRectBase< Type >::mBottom, LLRectBase< Type >::mLeft, LLRectBase< Type >::mRight, LLRectBase< Type >::mTop, LLVector2::mV, LLVector3::mV, LLCoord::mX, LLCoord::mY, S32, TRUE, VX, VY, and VZ.
LLStat* LLViewerCamera::getVelocityStat | ( | ) | [inline] |
Definition at line 77 of file llviewercamera.h.
References mVelocityStat.
Referenced by earlyFail(), LLHUDText::updateAll(), and LLHoverView::updateHover().
LLStat* LLViewerCamera::getAngularVelocityStat | ( | ) | [inline] |
Definition at line 78 of file llviewercamera.h.
References mAngularVelocityStat.
Referenced by LLHoverView::updateHover().
void LLViewerCamera::getPixelVectors | ( | const LLVector3 & | pos_agent, | |
LLVector3 & | up, | |||
LLVector3 & | right | |||
) |
Definition at line 651 of file llviewercamera.cpp.
References LLCoordFrame::getAtAxis(), LLViewerWindow::getDisplayScale(), LLCoordFrame::getLeftAxis(), LLCoordFrame::getOrigin(), LLWindow::getPixelAspectRatio(), LLCoordFrame::getUpAxis(), LLCamera::getView(), LLCamera::getViewHeightInPixels(), LLViewerWindow::getWindow(), gViewerWindow, LLVector2::mV, VX, and VY.
Referenced by hud_render_text(), LLVOAvatar::idleUpdate(), LLHUDIcon::renderIcon(), LLHUDText::renderText(), LLHUDText::updateScreenPos(), and LLHUDText::updateVisibility().
Definition at line 667 of file llviewercamera.cpp.
References FALSE, LLCoordFrame::getOrigin(), LLCoord::mX, LLCoord::mY, LLVector3::normVec(), projectPosAgentToScreen(), and projectScreenToPosAgent().
void LLViewerCamera::setDefaultFOV | ( | F32 | fov | ) | [inline] |
Definition at line 83 of file llviewercamera.h.
References mCameraFOVDefault.
Referenced by LLViewZoomDefault::handleEvent(), and update_fov().
F32 LLViewerCamera::getDefaultFOV | ( | ) | [inline] |
Definition at line 84 of file llviewercamera.h.
References mCameraFOVDefault.
Referenced by LLFloaterAnimPreview::postBuild(), LLSelectNode::renderOneSilhouette(), and update_fov().
BOOL LLViewerCamera::cameraUnderWater | ( | ) | const |
Definition at line 694 of file llviewercamera.cpp.
References gAgent, LLCoordFrame::getOrigin(), LLAgent::getRegion(), LLViewerRegion::getWaterHeight(), LLVector3::mV, and VZ.
Referenced by display(), and LLPipeline::generateWaterReflection().
const LLVector3& LLViewerCamera::getPointOfInterest | ( | ) | [inline] |
Definition at line 88 of file llviewercamera.h.
References mLastPointOfInterest.
Referenced by LLSelectNode::renderOneSilhouette().
BOOL LLViewerCamera::areVertsVisible | ( | LLViewerObject * | volumep, | |
BOOL | all_verts | |||
) |
Definition at line 699 of file llviewercamera.cpp.
References FALSE, LLVolume::getNumVolumeFaces(), LLVOVolume::getRelativeXform(), LLViewerObject::getRenderPosition(), LLViewerObject::getRenderRotation(), LLPrimitive::getVolume(), LLVolume::getVolumeFace(), i, LLDrawable::isActive(), LLViewerObject::mDrawable, LLVolumeFace::mVertices, LLCamera::pointInFrustum(), S32, and LLVOVolume::updateRelativeXform().
Referenced by LLToolSelectRect::handleRectangleSelection().
F32 LLViewerCamera::getPixelMeterRatio | ( | ) | const [inline] |
Definition at line 90 of file llviewercamera.h.
References mPixelMeterRatio.
Referenced by LLManipTranslate::renderSnapGuides(), LLViewerObject::setPixelAreaAndAngle(), LLViewerPartSourceScript::update(), LLVOPartGroup::updateGeometry(), and LLManipScale::updateSnapGuides().
S32 LLViewerCamera::getScreenPixelArea | ( | ) | const [inline] |
Definition at line 91 of file llviewercamera.h.
References mScreenPixelArea.
Referenced by LLVolumeImplFlexible::doIdleUpdate(), LLSpatialPartition::renderDebug(), LLViewerObject::setPixelAreaAndAngle(), and LLVOVolume::updateTextures().
Definition at line 93 of file llviewercamera.h.
References mZoomFactor, and mZoomSubregion.
Referenced by display(), and LLViewerWindow::rawSnapshot().
F32 LLViewerCamera::getZoomFactor | ( | ) | [inline] |
Definition at line 94 of file llviewercamera.h.
References mZoomFactor.
Referenced by LLViewerWindow::draw(), render_ui_2d(), and setup_hud_matrices().
S16 LLViewerCamera::getZoomSubRegion | ( | ) | [inline] |
Definition at line 95 of file llviewercamera.h.
References mZoomSubregion.
Referenced by LLViewerWindow::draw(), render_ui_2d(), and setup_hud_matrices().
void LLViewerCamera::calcProjection | ( | const F32 | far_distance | ) | const [protected] |
Definition at line 170 of file llviewercamera.cpp.
References LLCamera::getAspect(), LLCamera::getNear(), LLCamera::getView(), LLMatrix4::mMatrix, mProjectionMatrix, and LLMatrix4::setZero().
Referenced by getProjection(), LLViewerCamera(), and setPerspective().
LLStat LLViewerCamera::mVelocityStat [protected] |
Definition at line 100 of file llviewercamera.h.
Referenced by getVelocityStat(), and updateCameraLocation().
LLStat LLViewerCamera::mAngularVelocityStat [protected] |
Definition at line 101 of file llviewercamera.h.
Referenced by getAngularVelocityStat(), and updateCameraLocation().
LLMatrix4 LLViewerCamera::mProjectionMatrix [mutable, protected] |
Definition at line 102 of file llviewercamera.h.
Referenced by calcProjection(), and getProjection().
LLMatrix4 LLViewerCamera::mModelviewMatrix [mutable, protected] |
F32 LLViewerCamera::mCameraFOVDefault [protected] |
Definition at line 104 of file llviewercamera.h.
Referenced by getDefaultFOV(), LLViewerCamera(), setDefaultFOV(), and updateCameraLocation().
LLVector3 LLViewerCamera::mLastPointOfInterest [protected] |
Definition at line 105 of file llviewercamera.h.
Referenced by getPointOfInterest(), and updateCameraLocation().
F32 LLViewerCamera::mPixelMeterRatio [protected] |
Definition at line 106 of file llviewercamera.h.
Referenced by getPixelMeterRatio(), LLViewerCamera(), and updateCameraLocation().
S32 LLViewerCamera::mScreenPixelArea [protected] |
Definition at line 107 of file llviewercamera.h.
Referenced by getScreenPixelArea(), LLViewerCamera(), and updateCameraLocation().
F32 LLViewerCamera::mZoomFactor [protected] |
Definition at line 108 of file llviewercamera.h.
Referenced by getZoomFactor(), LLViewerCamera(), setPerspective(), and setZoomParameters().
S16 LLViewerCamera::mZoomSubregion [protected] |
Definition at line 109 of file llviewercamera.h.
Referenced by getZoomSubRegion(), LLViewerCamera(), setPerspective(), and setZoomParameters().