mirror of
https://github.com/Halofreak1990/XFXFramework
synced 2024-12-26 13:49:34 +01:00
WARNING!!! This revision cannot compile correctly. It is updated to reflect the many changes within the XFX project.
48 lines
1.1 KiB
C++
48 lines
1.1 KiB
C++
/********************************************************
|
|
* Ray.h *
|
|
* *
|
|
* XFX Ray definition file *
|
|
* Copyright © XFX Team. All Rights Reserved *
|
|
********************************************************/
|
|
#ifndef _XFX_RAY_
|
|
#define _XFX_RAY_
|
|
|
|
#include <System/Types.h>
|
|
|
|
namespace XFX
|
|
{
|
|
struct BoundingBox;
|
|
struct BoundingSphere;
|
|
struct Plane;
|
|
struct Vector3;
|
|
|
|
/// <summary>
|
|
/// Defines a ray.
|
|
/// </summary>
|
|
class Ray
|
|
{
|
|
public:
|
|
Vector3 Direction;
|
|
Vector3 Position;
|
|
|
|
Ray(Vector3 direction, Vector3 position);
|
|
Ray(const Ray &obj);
|
|
Ray();
|
|
|
|
bool Equals(Ray obj);
|
|
int GetHashCode();
|
|
float Intersects(BoundingBox boundingbox);
|
|
void Intersects(BoundingBox boundingbox, out float result);
|
|
float Intersects(BoundingSphere sphere);
|
|
void Intersects(BoundingSphere sphere, out float result);
|
|
float Intersects(Plane plane);
|
|
void Intersects(Plane plane, out float result);
|
|
|
|
bool operator==(const Ray other);
|
|
bool operator!=(const Ray other);
|
|
Ray operator=(const Ray other);
|
|
};
|
|
}
|
|
|
|
#endif //_RAY_
|