Ray.pkg 876 B

123456789101112131415161718192021222324252627282930
  1. $#include "Math/Ray.h"
  2. class Ray
  3. {
  4. Ray();
  5. Ray(const Vector3& origin, const Vector3& direction);
  6. Ray(const Ray& ray);
  7. ~Ray();
  8. bool operator ==(const Ray& rhs) const;
  9. void Define(const Vector3& origin, const Vector3& direction);
  10. Vector3 Project(const Vector3& point) const;
  11. float Distance(const Vector3& point) const;
  12. Vector3 ClosestPoint(const Ray& ray) const;
  13. float HitDistance(const Plane& plane) const;
  14. float HitDistance(const BoundingBox& box) const;
  15. float HitDistance(const Frustum& frustum, bool solidInside = true) const;
  16. float HitDistance(const Sphere& sphere) const;
  17. float HitDistance(const Vector3& v0, const Vector3& v1, const Vector3& v2) const;
  18. Ray Transformed(const Matrix3x4& transform) const;
  19. Vector3 origin_ @ origin;
  20. Vector3 direction_ @ direction;
  21. };