Plane.pkg 1.1 KB

12345678910111213141516171819202122232425262728293031323334
  1. $#include "Math/Plane.h"
  2. class Plane
  3. {
  4. Plane();
  5. Plane(const Plane& plane);
  6. Plane(const Vector3& v0, const Vector3& v1, const Vector3& v2);
  7. Plane(const Vector3& normal, const Vector3& point);
  8. Plane(const Vector4& plane);
  9. ~Plane();
  10. void Define(const Vector3& v0, const Vector3& v1, const Vector3& v2);
  11. void Define(const Vector3& normal, const Vector3& point);
  12. void Define(const Vector4& plane);
  13. void Transform(const Matrix3& transform);
  14. void Transform(const Matrix3x4& transform);
  15. void Transform(const Matrix4& transform);
  16. Vector3 Project(const Vector3& point) const;
  17. float Distance(const Vector3& point) const;
  18. Vector3 Reflect(const Vector3& direction) const;
  19. Matrix3x4 ReflectionMatrix() const;
  20. Plane Transformed(const Matrix3& transform) const;
  21. Plane Transformed(const Matrix3x4& transform) const;
  22. Plane Transformed(const Matrix4& transform) const;
  23. Vector4 ToVector4() const;
  24. Vector3 normal_ @ normal;
  25. Vector3 absNormal_ @ absNormal;
  26. float d_ @ d;
  27. static const Plane UP;
  28. };