mirror of
https://github.com/Halofreak1990/XFXFramework
synced 2024-12-26 13:49:34 +01:00
Added TypeInfo for all relevant types Added comments Updated DependencyProperty to work with System::Type Fixed casing on PropertyMetadata
51 lines
1.3 KiB
C++
51 lines
1.3 KiB
C++
/*****************************************************************************
|
|
* Ray.h *
|
|
* *
|
|
* XFX::Ray definition file *
|
|
* Copyright (c) XFX Team. All Rights Reserved *
|
|
*****************************************************************************/
|
|
#ifndef _XFX_RAY_
|
|
#define _XFX_RAY_
|
|
|
|
#include <System/Interfaces.h>
|
|
|
|
using namespace System;
|
|
|
|
namespace XFX
|
|
{
|
|
struct BoundingBox;
|
|
struct BoundingSphere;
|
|
struct Plane;
|
|
struct Vector3;
|
|
|
|
/**
|
|
* Defines a ray.
|
|
*/
|
|
struct Ray : IEquatable<Ray>, Object
|
|
{
|
|
Vector3 Direction;
|
|
Vector3 Position;
|
|
|
|
Ray(const Vector3 direction, const Vector3 position);
|
|
Ray(const Ray &obj);
|
|
Ray();
|
|
|
|
bool Equals(Object const * const obj) const;
|
|
bool Equals(const Ray other) const;
|
|
int GetHashCode() const;
|
|
static const Type& GetType();
|
|
float Intersects(BoundingBox boundingbox) const;
|
|
void Intersects(BoundingBox boundingbox, out float& result) const;
|
|
float Intersects(BoundingSphere sphere) const;
|
|
void Intersects(BoundingSphere sphere, out float& result) const;
|
|
float Intersects(Plane plane) const;
|
|
void Intersects(Plane plane, out float& result) const;
|
|
const String ToString() const;
|
|
|
|
bool operator==(const Ray& right) const;
|
|
bool operator!=(const Ray& right) const;
|
|
};
|
|
}
|
|
|
|
#endif //_XFX_RAY_
|