Skip to content
Permalink
Browse files

TITANIC: Finished CStarControlSub6 class

  • Loading branch information
dreammaster committed Mar 18, 2017
1 parent 1b7a847 commit 9b77dc9420befe2f51141c1df381876cb1d7fc59
@@ -263,7 +263,7 @@ void CStarControlSub13::reset() {
_sub2._vector._x = _position._x;
_sub2._vector._y = _position._y;
_sub2._vector._z = _position._z;
_sub2.fn3(_sub1);
_sub2.fn4(&_sub1);

double widthV = (double)_width * 0.5;
double heightV = (double)_height * 0.5;
@@ -159,8 +159,67 @@ CStarControlSub6 *CStarControlSub6::setup(CStarControlSub6 *dest, const CStarCon
return dest;
}

void CStarControlSub6::fn1(CStarControlSub6 *sub6) {
// TODO
void CStarControlSub6::fn4(CStarControlSub6 *sub6) {
double v2, v3, v6, v7, v8, v9, v10, v11;
double v12, v13, v14, v15, v16, v17, v18;

v16 = _row3._z * _row2._y;
v2 = _row1._x * v16;
v3 = 0.0;
v18 = v2;
if (v2 < 0.0) {
v3 = v18;
v2 = 0.0;
}
v6 = _row3._x * _row1._y * _row2._z;
if (v6 < 0.0)
v3 = v3 + v6;
else
v2 = v2 + v6;
v7 = _row3._y * _row1._z * _row2._x;
if (v7 < 0.0)
v3 = v3 + v7;
else
v2 = v2 + v7;
if (-(_row3._x * _row1._z * _row2._y) < 0.0)
v3 = v3 - _row3._x * _row1._z * _row2._y;
else
v2 = v2 - _row3._x * _row1._z * _row2._y;
if (-(_row1._y * _row2._x * _row3._z) < 0.0)
v3 = v3 - _row1._y * _row2._x * _row3._z;
else
v2 = v2 - _row1._y * _row2._x * _row3._z;
v17 = _row2._z * _row3._y;
if (-(_row1._x * v17) < 0.0)
v3 = v3 - _row1._x * v17;
else
v2 = v2 - _row1._x * v17;
v18 = v3 + v2;
assert(!(v18 == 0.0 || fabs(v18 / (v2 - v3)) < 1.0e-10));

v8 = 1.0 / v18;
v18 = v8;
sub6->_row1._x = (v16 - v17) * v8;
sub6->_row2._x = -(_row2._x * _row3._z - _row3._x * _row2._z) * v8;
sub6->_row3._x = (_row3._y * _row2._x - _row3._x * _row2._y) * v8;
sub6->_row1._y = -(_row1._y * _row3._z - _row3._y * _row1._z) * v8;
sub6->_row2._y = (_row1._x * _row3._z - _row3._x * _row1._z) * v8;
sub6->_row3._y = -(_row1._x * _row3._y - _row3._x * _row1._y) * v8;
sub6->_row1._z = (_row1._y * _row2._z - _row1._z * _row2._y) * v8;
sub6->_row2._z = -(_row1._x * _row2._z - _row1._z * _row2._x) * v8;
v9 = sub6->_row1._x;
v10 = sub6->_row2._y;
v11 = sub6->_row3._y;
v12 = sub6->_row1._z;
v13 = sub6->_row2._z;
sub6->_row3._z = (_row1._x * _row2._y - _row1._y * _row2._x) * v18;
v14 = v9;
v15 = sub6->_row3._z;
sub6->_vector._x = -(v14 * _vector._x
+ _vector._y * sub6->_row2._x
+ _vector._z * sub6->_row3._x);
sub6->_vector._y = -(_vector._x * sub6->_row1._y + v10 * _vector._y + v11 * _vector._z);
sub6->_vector._z = -(v12 * _vector._x + v13 * _vector._y + v15 * _vector._z);
}

} // End of namespace Titanic
@@ -62,7 +62,7 @@ class CStarControlSub6 : public FMatrix {
*/
void copyFrom(const FMatrix &src);

void fn1(CStarControlSub6 *sub6);
void fn4(CStarControlSub6 *sub6);
};

} // End of namespace Titanic

0 comments on commit 9b77dc9

Please sign in to comment.
You can’t perform that action at this time.