diff options
author | Erik Kundiman <erik@megapahit.org> | 2024-05-16 13:52:40 +0800 |
---|---|---|
committer | Erik Kundiman <erik@megapahit.org> | 2024-05-16 13:52:40 +0800 |
commit | 6d51e91895a7f2435c46a876410ccc6c63fe8c82 (patch) | |
tree | f2b48ebd99cb414227bf365f47665b8d4baa752b /indra/llmath/v3dmath.cpp | |
parent | d1b5917bb9c92e4e47eba19b43781e4d1328b1ca (diff) | |
parent | 094dcc07f8c1d90ae723dbe60eddacb90a09eae8 (diff) |
Merge tag '7.1.7-release'
source for viewer 7.1.7.8974243247
Diffstat (limited to 'indra/llmath/v3dmath.cpp')
-rw-r--r-- | indra/llmath/v3dmath.cpp | 124 |
1 files changed, 62 insertions, 62 deletions
diff --git a/indra/llmath/v3dmath.cpp b/indra/llmath/v3dmath.cpp index a50cb3c6ca..6ecd1a00ac 100644 --- a/indra/llmath/v3dmath.cpp +++ b/indra/llmath/v3dmath.cpp @@ -1,32 +1,32 @@ -/** +/** * @file v3dmath.cpp * @brief LLVector3d class implementation. * * $LicenseInfo:firstyear=2000&license=viewerlgpl$ * Second Life Viewer Source Code * Copyright (C) 2010, Linden Research, Inc. - * + * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; * version 2.1 of the License only. - * + * * This library is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * Lesser General Public License for more details. - * + * * You should have received a copy of the GNU Lesser General Public * License along with this library; if not, write to the Free Software * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA - * + * * Linden Research, Inc., 945 Battery Street, San Francisco, CA 94111 USA * $/LicenseInfo$ */ #include "linden_common.h" -//#include <sstream> // gcc 2.95.2 doesn't support sstream +//#include <sstream> // gcc 2.95.2 doesn't support sstream #include "v3dmath.h" @@ -39,8 +39,8 @@ // LLVector3d // WARNING: Don't use these for global const definitions! -// For example: -// const LLQuaternion(0.5f * F_PI, LLVector3d::zero); +// For example: +// const LLQuaternion(0.5f * F_PI, LLVector3d::zero); // at the top of a *.cpp file might not give you what you think. const LLVector3d LLVector3d::zero(0,0,0); const LLVector3d LLVector3d::x_axis(1, 0, 0); @@ -55,93 +55,93 @@ const LLVector3d LLVector3d::z_axis_neg(0, 0, -1); // Returns TRUE if data changed. BOOL LLVector3d::clamp(F64 min, F64 max) { - BOOL ret = FALSE; + BOOL ret = FALSE; - if (mdV[0] < min) { mdV[0] = min; ret = TRUE; } - if (mdV[1] < min) { mdV[1] = min; ret = TRUE; } - if (mdV[2] < min) { mdV[2] = min; ret = TRUE; } + if (mdV[0] < min) { mdV[0] = min; ret = TRUE; } + if (mdV[1] < min) { mdV[1] = min; ret = TRUE; } + if (mdV[2] < min) { mdV[2] = min; ret = TRUE; } - if (mdV[0] > max) { mdV[0] = max; ret = TRUE; } - if (mdV[1] > max) { mdV[1] = max; ret = TRUE; } - if (mdV[2] > max) { mdV[2] = max; ret = TRUE; } + if (mdV[0] > max) { mdV[0] = max; ret = TRUE; } + if (mdV[1] > max) { mdV[1] = max; ret = TRUE; } + if (mdV[2] > max) { mdV[2] = max; ret = TRUE; } - return ret; + return ret; } // Sets all values to absolute value of their original values // Returns TRUE if data changed BOOL LLVector3d::abs() { - BOOL ret = FALSE; + BOOL ret = FALSE; - if (mdV[0] < 0.0) { mdV[0] = -mdV[0]; ret = TRUE; } - if (mdV[1] < 0.0) { mdV[1] = -mdV[1]; ret = TRUE; } - if (mdV[2] < 0.0) { mdV[2] = -mdV[2]; ret = TRUE; } + if (mdV[0] < 0.0) { mdV[0] = -mdV[0]; ret = TRUE; } + if (mdV[1] < 0.0) { mdV[1] = -mdV[1]; ret = TRUE; } + if (mdV[2] < 0.0) { mdV[2] = -mdV[2]; ret = TRUE; } - return ret; + return ret; } -std::ostream& operator<<(std::ostream& s, const LLVector3d &a) +std::ostream& operator<<(std::ostream& s, const LLVector3d &a) { - s << "{ " << a.mdV[VX] << ", " << a.mdV[VY] << ", " << a.mdV[VZ] << " }"; - return s; + s << "{ " << a.mdV[VX] << ", " << a.mdV[VY] << ", " << a.mdV[VZ] << " }"; + return s; } -const LLVector3d& LLVector3d::operator=(const LLVector4 &a) +const LLVector3d& LLVector3d::operator=(const LLVector4 &a) { - mdV[0] = a.mV[0]; - mdV[1] = a.mV[1]; - mdV[2] = a.mV[2]; - return *this; + mdV[0] = a.mV[0]; + mdV[1] = a.mV[1]; + mdV[2] = a.mV[2]; + return *this; } -const LLVector3d& LLVector3d::rotVec(const LLMatrix3 &mat) +const LLVector3d& LLVector3d::rotVec(const LLMatrix3 &mat) { - *this = *this * mat; - return *this; + *this = *this * mat; + return *this; } -const LLVector3d& LLVector3d::rotVec(const LLQuaternion &q) +const LLVector3d& LLVector3d::rotVec(const LLQuaternion &q) { - *this = *this * q; - return *this; + *this = *this * q; + return *this; } -const LLVector3d& LLVector3d::rotVec(F64 angle, const LLVector3d &vec) +const LLVector3d& LLVector3d::rotVec(F64 angle, const LLVector3d &vec) { - if ( !vec.isExactlyZero() && angle ) - { - *this = *this * LLMatrix3((F32)angle, vec); - } - return *this; + if ( !vec.isExactlyZero() && angle ) + { + *this = *this * LLMatrix3((F32)angle, vec); + } + return *this; } -const LLVector3d& LLVector3d::rotVec(F64 angle, F64 x, F64 y, F64 z) +const LLVector3d& LLVector3d::rotVec(F64 angle, F64 x, F64 y, F64 z) { - LLVector3d vec(x, y, z); - if ( !vec.isExactlyZero() && angle ) - { - *this = *this * LLMatrix3((F32)angle, vec); - } - return *this; + LLVector3d vec(x, y, z); + if ( !vec.isExactlyZero() && angle ) + { + *this = *this * LLMatrix3((F32)angle, vec); + } + return *this; } BOOL LLVector3d::parseVector3d(const std::string& buf, LLVector3d* value) { - if( buf.empty() || value == NULL) - { - return FALSE; - } - - LLVector3d v; - S32 count = sscanf( buf.c_str(), "%lf %lf %lf", v.mdV + 0, v.mdV + 1, v.mdV + 2 ); - if( 3 == count ) - { - value->setVec( v ); - return TRUE; - } - - return FALSE; + if( buf.empty() || value == NULL) + { + return FALSE; + } + + LLVector3d v; + S32 count = sscanf( buf.c_str(), "%lf %lf %lf", v.mdV + 0, v.mdV + 1, v.mdV + 2 ); + if( 3 == count ) + { + value->setVec( v ); + return TRUE; + } + + return FALSE; } |