file
Intersection.hNamespace Magnum::
Namespaces
- namespace Magnum
- Root namespace.
- namespace Magnum::Math
- Math library.
- namespace Magnum::Math::Intersection
- Functions for calculating intersections.
Functions
-
template<class T>auto pointCircle(const Vector2<T>& point, const Vector2<T>& circleCenter, T circleRadius) -> bool new in Git master
- Intersection of a point and a circle in 2D.
-
template<class T>auto pointSphere(const Vector3<T>& point, const Vector3<T>& sphereCenter, T sphereRadius) -> bool new in Git master
- Intersection of a point and a sphere in 3D.
-
template<class T>auto lineSegmentLineSegment(const Vector2<T>& p, const Vector2<T>& r, const Vector2<T>& q, const Vector2<T>& s) -> Containers::Pair<T, T>
- Intersection of two line segments in 2D.
-
template<class T>auto lineSegmentLine(const Vector2<T>& p, const Vector2<T>& r, const Vector2<T>& q, const Vector2<T>& s) -> T
- Intersection of line segment and line in 2D.
-
template<class T>auto planeLine(const Vector4<T>& plane, const Vector3<T>& p, const Vector3<T>& r) -> T
- Intersection of a plane and line.
-
template<class T>auto pointFrustum(const Vector3<T>& point, const Frustum<T>& frustum) -> bool
- Intersection of a point and a frustum.
-
template<class T>auto rangeFrustum(const Range3D<T>& range, const Frustum<T>& frustum) -> bool
- Intersection of a range and a frustum.
-
template<class T>auto rayRange(const Vector3<T>& rayOrigin, const Vector3<T>& inverseRayDirection, const Range3D<T>& range) -> bool new in Git master
- Intersection of a ray with a range.
-
template<class T>auto aabbFrustum(const Vector3<T>& aabbCenter, const Vector3<T>& aabbExtents, const Frustum<T>& frustum) -> bool
- Intersection of an axis-aligned box and a frustum.
-
template<class T>auto sphereFrustum(const Vector3<T>& sphereCenter, T sphereRadius, const Frustum<T>& frustum) -> bool
- Intersection of a sphere and a frustum.
-
template<class T>auto pointCone(const Vector3<T>& point, const Vector3<T>& coneOrigin, const Vector3<T>& coneNormal, Rad<T> coneAngle) -> bool
- Intersection of a point and a cone.
-
template<class T>auto pointCone(const Vector3<T>& point, const Vector3<T>& coneOrigin, const Vector3<T>& coneNormal, T tanAngleSqPlusOne) -> bool
- Intersection of a point and a cone using precomputed values.
-
template<class T>auto pointDoubleCone(const Vector3<T>& point, const Vector3<T>& coneOrigin, const Vector3<T>& coneNormal, Rad<T> coneAngle) -> bool
- Intersection of a point and a double cone.
-
template<class T>auto pointDoubleCone(const Vector3<T>& point, const Vector3<T>& coneOrigin, const Vector3<T>& coneNormal, T tanAngleSqPlusOne) -> bool
- Intersection of a point and a double cone using precomputed values.
-
template<class T>auto sphereConeView(const Vector3<T>& sphereCenter, T sphereRadius, const Matrix4<T>& coneView, Rad<T> coneAngle) -> bool
- Intersection of a sphere and a cone view.
-
template<class T>auto sphereConeView(const Vector3<T>& sphereCenter, T sphereRadius, const Matrix4<T>& coneView, T sinAngle, T tanAngle) -> bool
- Intersection of a sphere and a cone view.
-
template<class T>auto sphereCone(const Vector3<T>& sphereCenter, T sphereRadius, const Vector3<T>& coneOrigin, const Vector3<T>& coneNormal, Rad<T> coneAngle) -> bool
- Intersection of a sphere and a cone.
-
template<class T>auto sphereCone(const Vector3<T>& sphereCenter, T sphereRadius, const Vector3<T>& coneOrigin, const Vector3<T>& coneNormal, T sinAngle, T tanAngleSqPlusOne) -> bool
- Intersection of a sphere and a cone using precomputed values.
-
template<class T>auto aabbCone(const Vector3<T>& aabbCenter, const Vector3<T>& aabbExtents, const Vector3<T>& coneOrigin, const Vector3<T>& coneNormal, Rad<T> coneAngle) -> bool
- Intersection of an axis aligned bounding box and a cone.
-
template<class T>auto aabbCone(const Vector3<T>& aabbCenter, const Vector3<T>& aabbExtents, const Vector3<T>& coneOrigin, const Vector3<T>& coneNormal, T tanAngleSqPlusOne) -> bool
- Intersection of an axis aligned bounding box and a cone using precomputed values.
-
template<class T>auto rangeCone(const Range3D<T>& range, const Vector3<T>& coneOrigin, const Vector3<T>& coneNormal, const Rad<T> coneAngle) -> bool
- Intersection of a range and a cone.
-
template<class T>auto rangeCone(const Range3D<T>& range, const Vector3<T>& coneOrigin, const Vector3<T>& coneNormal, const T tanAngleSqPlusOne) -> bool
- Intersection of a range and a cone using precomputed values.