Urho3D::Ray Class Reference
Urho3D::Ray Class Reference
Infinite straight line in three-dimensional space. More...
#include <Urho3D/Math/Ray.h>
Collaboration diagram for Urho3D::Ray:
Public Member Functions | |
| Ray () | |
| Construct a degenerate ray with zero origin and direction. | |
| Ray (const Vector3 &origin, const Vector3 &direction) | |
| Construct from origin and direction. The direction will be normalized. | |
| Ray (const Ray &ray) | |
| Copy-construct from another ray. | |
| Ray & | operator= (const Ray &rhs) |
| Assign from another ray. | |
| bool | operator== (const Ray &rhs) const |
| Check for equality with another ray. | |
| bool | operator!= (const Ray &rhs) const |
| Check for inequality with another ray. | |
| void | Define (const Vector3 &origin, const Vector3 &direction) |
| Define from origin and direction. The direction will be normalized. | |
| Vector3 | Project (const Vector3 &point) const |
| Project a point on the ray. | |
| float | Distance (const Vector3 &point) const |
| Return distance of a point from the ray. | |
| Vector3 | ClosestPoint (const Ray &ray) const |
| Return closest point to another ray. | |
| float | HitDistance (const Plane &plane) const |
| Return hit distance to a plane, or infinity if no hit. | |
| float | HitDistance (const BoundingBox &box) const |
| Return hit distance to a bounding box, or infinity if no hit. | |
| float | HitDistance (const Frustum &frustum, bool solidInside=true) const |
| Return hit distance to a frustum, or infinity if no hit. If solidInside parameter is true (default) rays originating from inside return zero distance, otherwise the distance to the closest plane. | |
| float | HitDistance (const Sphere &sphere) const |
| Return hit distance to a sphere, or infinity if no hit. | |
| float | HitDistance (const Vector3 &v0, const Vector3 &v1, const Vector3 &v2, Vector3 *outNormal=0, Vector3 *outBary=0) const |
| Return hit distance to a triangle, or infinity if no hit. Optionally return hit normal and hit barycentric coordinate at intersect point. | |
| float | HitDistance (const void *vertexData, unsigned vertexStride, unsigned vertexStart, unsigned vertexCount, Vector3 *outNormal=0, Vector2 *outUV=0, unsigned uvOffset=0) const |
| Return hit distance to non-indexed geometry data, or infinity if no hit. Optionally return hit normal and hit uv coordinates at intersect point. | |
| float | HitDistance (const void *vertexData, unsigned vertexStride, const void *indexData, unsigned indexSize, unsigned indexStart, unsigned indexCount, Vector3 *outNormal=0, Vector2 *outUV=0, unsigned uvOffset=0) const |
| Return hit distance to indexed geometry data, or infinity if no hit. Optionally return hit normal and hit uv coordinates at intersect point. | |
| bool | InsideGeometry (const void *vertexData, unsigned vertexSize, unsigned vertexStart, unsigned vertexCount) const |
| Return whether ray is inside non-indexed geometry. | |
| bool | InsideGeometry (const void *vertexData, unsigned vertexSize, const void *indexData, unsigned indexSize, unsigned indexStart, unsigned indexCount) const |
| Return whether ray is inside indexed geometry. | |
| Ray | Transformed (const Matrix3x4 &transform) const |
| Return transformed by a 3x4 matrix. This may result in a non-normalized direction. | |
Public Attributes | |
| Vector3 | origin_ |
| Ray origin. | |
| Vector3 | direction_ |
| Ray direction. | |
Detailed Description
Infinite straight line in three-dimensional space.
The documentation for this class was generated from the following files:
- Source/Urho3D/Math/Ray.h
- Source/Urho3D/Math/Ray.cpp
