This represents a line placed in 3D space and is used with spacial queries. More...
#include <ray.h>
Collaboration diagram for Mezzanine::Ray:Public Types | |
| typedef MathTools::GeometryRayTestResult | GeometryRayTestResult |
| This is a type used for the return of a ray intersection test. More... | |
| typedef std::pair< Boole, Vector3 > | PlaneRayTestResult |
| This is a type used for the ray intersection tests performed on Planes. More... | |
Public Member Functions | |
| Ray () | |
| Default constructor. More... | |
| Ray (const Ray &Other) | |
| Copy constructor. More... | |
| Ray (const Vector3 &Dir) | |
| Destination constructor. More... | |
| Ray (const Vector3 &From, const Vector3 &Dir) | |
| Descriptive constructor. More... | |
| Ray (const Ogre::Ray &InternalRay) | |
| Internal constructor. More... | |
| ~Ray () | |
| Class destructor. | |
| void | ExtractOgreRay (const Ogre::Ray &InternalRay) |
| Changes this Ray to match the Ogre Ray. More... | |
| const Vector3 & | GetNormal () const |
| Gets the normal of this Ray. More... | |
| Ogre::Ray | GetOgreRay () const |
| Gets an Ogre::Ray that contains this Rays information. More... | |
| const Vector3 & | GetOrigin () const |
| Gets the origin of this ray. More... | |
| Vector3 | GetPointAtDistance (const Real &Distance) |
| Gets a point on the ray at a distance. More... | |
| PlaneRayTestResult | Intersects (const Plane &ToCheck) const |
| Checks to see if this ray intersects a plane. More... | |
| GeometryRayTestResult | Intersects (const Sphere &ToCheck) const |
| Checks to see if this ray intersects a sphere. More... | |
| GeometryRayTestResult | Intersects (const AxisAlignedBox &ToCheck) const |
| Checks to see if this ray intersects an AABB. More... | |
| Boole | operator!= (const Ray &Other) const |
| Inequality operator. More... | |
| void | operator= (const Ray &Other) |
| Assignment operator. More... | |
| Boole | operator== (const Ray &Other) const |
| Equality operator. More... | |
| void | ProtoDeSerialize (const XML::Node &SelfRoot) |
| Take the data stored in an XML Node and overwrite this object with it. More... | |
| void | ProtoSerialize (XML::Node &ParentNode) const |
| Convert this class to an XML::Node ready for serialization. More... | |
| void | SetNormal (const Vector3 &FreshNormal) |
| Sets the normal of this Ray. More... | |
| void | SetOrigin (const Vector3 &FreshOrigin) |
| Sets the origin of this ray. More... | |
Static Public Member Functions | |
| static String | GetSerializableName () |
| Get the name of the the XML tag this class will leave behind as its instances are serialized. More... | |
Public Attributes | |
| Vector3 | Normal |
| The direction this ray is pointing. | |
| Vector3 | Origin |
| The origin point of the Vector. | |
This represents a line placed in 3D space and is used with spacial queries.
This is made of Two Vector3 instances. The Origin of a Ray can be thought of as its starting location. The Normal of the Ray will be another point defined as a Vector3 that is always 1 unit away, as mathematical precision allows. This normal is used to indicate direction and from the two points any other points on the Ray can be calculated.
| typedef MathTools::GeometryRayTestResult Mezzanine::Ray::GeometryRayTestResult |
| typedef std::pair<Boole,Vector3> Mezzanine::Ray::PlaneRayTestResult |
| Mezzanine::Ray::Ray | ( | ) |
| Mezzanine::Ray::Ray | ( | const Ray & | Other | ) |
| Mezzanine::Ray::Ray | ( | const Vector3 & | Dir | ) |
|
explicit |
| void Mezzanine::Ray::ExtractOgreRay | ( | const Ogre::Ray & | InternalRay | ) |
| const Vector3 & Mezzanine::Ray::GetNormal | ( | ) | const |
| Ogre::Ray Mezzanine::Ray::GetOgreRay | ( | ) | const |
| const Vector3 & Mezzanine::Ray::GetOrigin | ( | ) | const |
|
static |
| Ray::PlaneRayTestResult Mezzanine::Ray::Intersects | ( | const Plane & | ToCheck | ) | const |
| Ray::GeometryRayTestResult Mezzanine::Ray::Intersects | ( | const Sphere & | ToCheck | ) | const |
| Ray::GeometryRayTestResult Mezzanine::Ray::Intersects | ( | const AxisAlignedBox & | ToCheck | ) | const |
| void Mezzanine::Ray::operator= | ( | const Ray & | Other | ) |
| void Mezzanine::Ray::ProtoDeSerialize | ( | const XML::Node & | SelfRoot | ) |
| void Mezzanine::Ray::ProtoSerialize | ( | XML::Node & | ParentNode | ) | const |
| void Mezzanine::Ray::SetNormal | ( | const Vector3 & | FreshNormal | ) |
| void Mezzanine::Ray::SetOrigin | ( | const Vector3 & | FreshOrigin | ) |
1.8.9.1. Thanks to the
Open Icon Library
for help with some of the icons.