aboutsummaryrefslogtreecommitdiff
path: root/engines/titanic/star_control/dvector.cpp
diff options
context:
space:
mode:
authorDavid Fioramonti2017-09-01 21:41:13 -0700
committerDavid Fioramonti2017-09-02 06:41:07 -0700
commitd55406b6426d82c49afb00973f8b7da377bb0849 (patch)
tree6548de9dbfa6a28c36f6f932d5cc8fb4356614ff /engines/titanic/star_control/dvector.cpp
parent1160b88d0670b63cd65bce5742222f4012cc340a (diff)
downloadscummvm-rg350-d55406b6426d82c49afb00973f8b7da377bb0849.tar.gz
scummvm-rg350-d55406b6426d82c49afb00973f8b7da377bb0849.tar.bz2
scummvm-rg350-d55406b6426d82c49afb00973f8b7da377bb0849.zip
TITANIC: Remove DVector and DAffine files from build and folder
Diffstat (limited to 'engines/titanic/star_control/dvector.cpp')
-rw-r--r--engines/titanic/star_control/dvector.cpp113
1 files changed, 0 insertions, 113 deletions
diff --git a/engines/titanic/star_control/dvector.cpp b/engines/titanic/star_control/dvector.cpp
deleted file mode 100644
index 73ffd5be54..0000000000
--- a/engines/titanic/star_control/dvector.cpp
+++ /dev/null
@@ -1,113 +0,0 @@
-/* ScummVM - Graphic Adventure Engine
- *
- * ScummVM is the legal property of its developers, whose names
- * are too numerous to list here. Please refer to the COPYRIGHT
- * file distributed with this source distribution.
- *
- * This program is free software; you can redistribute it and/or
- * modify it under the terms of the GNU General Public License
- * as published by the Free Software Foundation; either version 2
- * of the License, or (at your option) any later version.
- *
- * This program 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 General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
- *
- */
-
-#include "titanic/star_control/dvector.h"
-#include "titanic/star_control/daffine.h"
-
-namespace Titanic {
-
-bool DVector::normalize(double & hyp) {
- hyp = sqrt(_x * _x + _y * _y + _z * _z);
- if (hyp==0) {
- return false;
- }
-
- _x *= 1.0 / hyp;
- _y *= 1.0 / hyp;
- _z *= 1.0 / hyp;
- return true;
-}
-
-double DVector::getDistance(const DVector &src) {
- return sqrt((src._x - _x) * (src._x - _x) + (src._y - _y) * (src._y - _y) + (src._z - _z) * (src._z - _z));
-}
-
-DVector DVector::dAffMatrixProdVec(const DAffine &m) {
- DVector dest;
- dest._x = m._col1._x * _x
- + m._col2._x * _y + m._col3._x * _z
- + m._col4._x;
-
- dest._y = m._col1._y * _x
- + m._col2._y * _y + m._col3._y * _z
- + m._col4._y;
-
- dest._z = m._col1._z * _x
- + m._col2._z * _y + m._col3._z * _z
- + m._col4._z;
-
- return dest;
-}
-
-void DVector::rotVectAxisY(double angleDeg) {
- double sinVal = sin(angleDeg * Deg2Rad);
- double cosVal = cos(angleDeg * Deg2Rad);
- double x = cosVal * _x - sinVal * _z;
- double z = cosVal * _z + sinVal * _x;
-
- _x = x;
- _z = z;
-}
-
-DVector DVector::getAnglesAsVect() const {
- DVector vector = *this;
- DVector dest;
-
- if (!vector.normalize(dest._x)) {
- // Makes this vector have magnitude=1, put the scale amount in dest._x,
- // but if it is unsuccessful, crash
- assert(dest._x);
- }
-
- dest._y = acos(vector._y); // radian distance/angle that this vector's y component is from the +y axis,
- // result is restricted to [0,pi]
- dest._z = atan2(vector._x,vector._z); // result is restricted to [-pi,pi]
-
- return dest;
-}
-
-DAffine DVector::getFrameTransform(const DVector &v) {
- DAffine matrix1, matrix2, matrix3, matrix4;
-
- DVector vector1 = getAnglesAsVect();
- matrix1.setRotationMatrix(X_AXIS, vector1._y * Rad2Deg);
- matrix2.setRotationMatrix(Y_AXIS, vector1._z * Rad2Deg);
- matrix3 = matrix1.compose(matrix2);
- matrix4 = matrix3.inverseTransform();
-
- vector1 = v.getAnglesAsVect();
- matrix1.setRotationMatrix(X_AXIS, vector1._y * Rad2Deg);
- matrix2.setRotationMatrix(Y_AXIS, vector1._z * Rad2Deg);
- matrix3 = matrix1.compose(matrix2);
-
- return matrix4.compose(matrix3);
-}
-
-DAffine DVector::formRotXY() const {
- DVector v1 = getAnglesAsVect();
- DAffine m1, m2;
- m1.setRotationMatrix(X_AXIS, v1._y * Rad2Deg);
- m2.setRotationMatrix(Y_AXIS, v1._z * Rad2Deg);
- return m1.compose(m2);
-}
-
-} // End of namespace Titanic