GLM 0.9.5

- Main Page
- Related Pages
- Modules
- Namespaces
- Files

Functions
GLM_GTX_intersect
GTX Extensions (Experimental)

## Functions
template<typename genType >
bool | intersectLineSphere (genType const &point0, genType const &point1, genType const &sphereCenter, typename genType::value_type sphereRadius, genType &intersectionPosition1, genType &intersectionNormal1, genType &intersectionPosition2=genType(), genType &intersectionNormal2=genType())
template<typename genType >
bool | intersectLineTriangle (genType const &orig, genType const &dir, genType const &vert0, genType const &vert1, genType const &vert2, genType &position)
template<typename genType >
bool | intersectRayPlane (genType const &orig, genType const &dir, genType const &planeOrig, genType const &planeNormal, typename genType::value_type &intersectionDistance)
template<typename genType >
bool | intersectRaySphere (genType const &rayStarting, genType const &rayNormalizedDirection, genType const &sphereCenter, typename genType::value_type const sphereRadiusSquered, typename genType::value_type &intersectionDistance)
template<typename genType >
bool | intersectRaySphere (genType const &rayStarting, genType const &rayNormalizedDirection, genType const &sphereCenter, const typename genType::value_type sphereRadius, genType &intersectionPosition, genType &intersectionNormal)
template<typename genType >
bool | intersectRayTriangle (genType const &orig, genType const &dir, genType const &vert0, genType const &vert1, genType const &vert2, genType &baryPosition)

## Detailed Description

Add intersection functions.

<glm/gtx/intersect.hpp> need to be included to use these functionalities.

## Function Documentation

bool glm::intersectLineSphere | ( | genType const & | point0,
|  | genType const & | point1,
|  | genType const & | sphereCenter,
|  | typename genType::value_type | sphereRadius,
|  | genType & | intersectionPosition1,
|  | genType & | intersectionNormal1,
|  | genType & | intersectionPosition2 = `genType()`,
|  | genType & | intersectionNormal2 = `genType()`
| ) |  |

Compute the intersection of a line and a sphere.

From GLM_GTX_intersect extension

bool glm::intersectLineTriangle | ( | genType const & | orig,
|  | genType const & | dir,
|  | genType const & | vert0,
|  | genType const & | vert1,
|  | genType const & | vert2,
|  | genType & | position
| ) |  |

Compute the intersection of a line and a triangle.

From GLM_GTX_intersect extension.

bool glm::intersectRayPlane | ( | genType const & | orig,
|  | genType const & | dir,
|  | genType const & | planeOrig,
|  | genType const & | planeNormal,
|  | typename genType::value_type & | intersectionDistance
| ) |  |

Compute the intersection of a ray and a triangle.

Ray direction and plane normal must be unit length. From GLM_GTX_intersect extension.

bool glm::intersectRaySphere | ( | genType const & | rayStarting,
|  | genType const & | rayNormalizedDirection,
|  | genType const & | sphereCenter,
|  | typename genType::value_type const | sphereRadiusSquered,
|  | typename genType::value_type & | intersectionDistance
| ) |  |

Compute the intersection distance of a ray and a sphere.

The ray direction vector is unit length. From GLM_GTX_intersect extension.

bool glm::intersectRaySphere | ( | genType const & | rayStarting,
|  | genType const & | rayNormalizedDirection,
|  | genType const & | sphereCenter,
|  | const typename genType::value_type | sphereRadius,
|  | genType & | intersectionPosition,
|  | genType & | intersectionNormal
| ) |  |

Compute the intersection of a ray and a sphere.

From GLM_GTX_intersect extension.

bool glm::intersectRayTriangle | ( | genType const & | orig,
|  | genType const & | dir,
|  | genType const & | vert0,
|  | genType const & | vert1,
|  | genType const & | vert2,
|  | genType & | baryPosition
| ) |  |

Compute the intersection of a ray and a triangle.

From GLM_GTX_intersect extension.