diff options
author | Jacek Antonelli | 2008-08-15 23:44:54 -0500 |
---|---|---|
committer | Jacek Antonelli | 2008-08-15 23:44:54 -0500 |
commit | b2afb8800bb033a04bb3ecdf0363068d56648ef1 (patch) | |
tree | 3568129b5bbddb47cd39d622b4137a8fbff4abaf /linden/indra/llmath/m4math.h | |
parent | Second Life viewer sources 1.14.0.1 (diff) | |
download | meta-impy-b2afb8800bb033a04bb3ecdf0363068d56648ef1.zip meta-impy-b2afb8800bb033a04bb3ecdf0363068d56648ef1.tar.gz meta-impy-b2afb8800bb033a04bb3ecdf0363068d56648ef1.tar.bz2 meta-impy-b2afb8800bb033a04bb3ecdf0363068d56648ef1.tar.xz |
Second Life viewer sources 1.15.0.2
Diffstat (limited to 'linden/indra/llmath/m4math.h')
-rw-r--r-- | linden/indra/llmath/m4math.h | 22 |
1 files changed, 1 insertions, 21 deletions
diff --git a/linden/indra/llmath/m4math.h b/linden/indra/llmath/m4math.h index 7de29ed..24f9f86 100644 --- a/linden/indra/llmath/m4math.h +++ b/linden/indra/llmath/m4math.h | |||
@@ -4,6 +4,7 @@ | |||
4 | * | 4 | * |
5 | * Copyright (c) 2000-2007, Linden Research, Inc. | 5 | * Copyright (c) 2000-2007, Linden Research, Inc. |
6 | * | 6 | * |
7 | * Second Life Viewer Source Code | ||
7 | * The source code in this file ("Source Code") is provided by Linden Lab | 8 | * The source code in this file ("Source Code") is provided by Linden Lab |
8 | * to you under the terms of the GNU General Public License, version 2.0 | 9 | * to you under the terms of the GNU General Public License, version 2.0 |
9 | * ("GPL"), unless you have obtained a separate licensing agreement | 10 | * ("GPL"), unless you have obtained a separate licensing agreement |
@@ -266,27 +267,6 @@ inline const LLMatrix4& LLMatrix4::identity() | |||
266 | return (*this); | 267 | return (*this); |
267 | } | 268 | } |
268 | 269 | ||
269 | inline LLVector3 operator*(const LLVector3 &a, const LLMatrix4 &b) | ||
270 | { | ||
271 | // Converts a to LLVector4 and applies full transformation | ||
272 | // Operates "to the left" on row-vector a | ||
273 | LLVector3 vec; | ||
274 | vec.mV[VX] = a.mV[VX] * b.mMatrix[VX][VX] + | ||
275 | a.mV[VY] * b.mMatrix[VY][VX] + | ||
276 | a.mV[VZ] * b.mMatrix[VZ][VX] + | ||
277 | b.mMatrix[VW][VX]; | ||
278 | |||
279 | vec.mV[VY] = a.mV[VX] * b.mMatrix[VX][VY] + | ||
280 | a.mV[VY] * b.mMatrix[VY][VY] + | ||
281 | a.mV[VZ] * b.mMatrix[VZ][VY] + | ||
282 | b.mMatrix[VW][VY]; | ||
283 | |||
284 | vec.mV[VZ] = a.mV[VX] * b.mMatrix[VX][VZ] + | ||
285 | a.mV[VY] * b.mMatrix[VY][VZ] + | ||
286 | a.mV[VZ] * b.mMatrix[VZ][VZ] + | ||
287 | b.mMatrix[VW][VZ]; | ||
288 | return vec; | ||
289 | } | ||
290 | 270 | ||
291 | /* | 271 | /* |
292 | inline LLMatrix4 operator*(const LLMatrix4 &a, const LLMatrix4 &b) | 272 | inline LLMatrix4 operator*(const LLMatrix4 &a, const LLMatrix4 &b) |