123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384 |
- #pragma once
- #include <Mathematics/Vector.h>
- namespace WwiseGTE
- {
- template <int N, typename Real>
- class Triangle
- {
- public:
-
-
- Triangle()
- :
- v{ Vector<N, Real>::Zero(), Vector<N, Real>::Unit(0), Vector<N, Real>::Unit(1) }
- {
- }
- Triangle(Vector<N, Real> const& v0, Vector<N, Real> const& v1, Vector<N, Real> const& v2)
- :
- v{ v0, v1, v2 }
- {
- }
- Triangle(std::array<Vector<N, Real>, 3> const& inV)
- :
- v(inV)
- {
- }
-
- std::array<Vector<N, Real>, 3> v;
- public:
-
- bool operator==(Triangle const& triangle) const
- {
- return v == triangle.v;
- }
- bool operator!=(Triangle const& triangle) const
- {
- return v != triangle.v;
- }
- bool operator< (Triangle const& triangle) const
- {
- return v < triangle.v;
- }
- bool operator<=(Triangle const& triangle) const
- {
- return v <= triangle.v;
- }
- bool operator> (Triangle const& triangle) const
- {
- return v > triangle.v;
- }
- bool operator>=(Triangle const& triangle) const
- {
- return v >= triangle.v;
- }
- };
-
- template <typename Real>
- using Triangle2 = Triangle<2, Real>;
- template <typename Real>
- using Triangle3 = Triangle<3, Real>;
- }
|