a2de::Matrix3x3 Matrix3x3::operator*(const Matrix3x3& rhs) { a2de::Vector3D r1(this->GetRowOne()); a2de::Vector3D r2(this->GetRowTwo()); a2de::Vector3D r3(this->GetRowThree()); a2de::Vector3D c1(rhs.GetColumnOne()); a2de::Vector3D c2(rhs.GetColumnTwo()); a2de::Vector3D c3(rhs.GetColumnThree()); return Matrix3x3(a2de::Vector3D::DotProduct(r1, c1), a2de::Vector3D::DotProduct(r1, c2), a2de::Vector3D::DotProduct(r1, c3), a2de::Vector3D::DotProduct(r2, c1), a2de::Vector3D::DotProduct(r2, c2), a2de::Vector3D::DotProduct(r2, c3), a2de::Vector3D::DotProduct(r3, c1), a2de::Vector3D::DotProduct(r3, c2), a2de::Vector3D::DotProduct(r3, c3)); }