Namespaces | Functions

D:/SoftwareEntwicklung/C++/HLC/Tools/SoftPixelEngine/repository/sources/Base/spMathCollisionLibrary.hpp File Reference

#include "Base/spStandard.hpp"
#include "Base/spMath.hpp"
#include "Base/spDimensionPolygon.hpp"

Go to the source code of this file.

Namespaces

namespace  sp
 

!!


namespace  sp::scene
 

Add 3D object management functions and scene rendering can be found in this namespace.


namespace  sp::math
 

This namespace contains all mathematical basic functions such as sine, cosine, distance calculations etc.


namespace  sp::math::CollisionLibrary
 

Here you will find each function for collision detection, distance computation and intersection tests.


Functions

SP_EXPORT dim::vector3df sp::math::CollisionLibrary::getClosestPoint (const dim::triangle3df &Triangle, const dim::vector3df &Point)
SP_EXPORT bool sp::math::CollisionLibrary::getClosestPointStraight (const dim::triangle3df &Triangle, const dim::vector3df &Point, dim::vector3df &PointOnTriangle)
SP_EXPORT dim::vector3df sp::math::CollisionLibrary::getClosestPoint (const dim::aabbox3df &Box, const dim::vector3df &Point)
SP_EXPORT dim::vector3df sp::math::CollisionLibrary::getClosestPoint (const dim::aabbox3df &Box, const dim::vector3df &Point, dim::vector3df &Normal)
SP_EXPORT dim::vector3df sp::math::CollisionLibrary::getClosestPoint (const dim::obbox3df &Box, const dim::vector3df &Point)
SP_EXPORT dim::line3df sp::math::CollisionLibrary::getClosestLine (const dim::triangle3df &Triangle, const dim::line3df &Line)
SP_EXPORT bool sp::math::CollisionLibrary::getClosestLineStraight (const dim::triangle3df &Triangle, const dim::line3df &Line, dim::line3df &LineToTriangle)
SP_EXPORT dim::line3df sp::math::CollisionLibrary::getClosestLine (const dim::quadrangle3df &Quadrangle, const dim::line3df &Line)
SP_EXPORT dim::line3df sp::math::CollisionLibrary::getClosestLine (const dim::aabbox3df &Box, const dim::line3df &Line)
SP_EXPORT f32 sp::math::CollisionLibrary::getPointBoxDistanceSq (const dim::obbox3df &Box, const dim::vector3df &Point)
 Computes the squared distance between the given box and point.
f32 sp::math::CollisionLibrary::getPointBoxDistance (const dim::obbox3df &Box, const dim::vector3df &Point)
 Computes the distance between the given box and point.
SP_EXPORT f32 sp::math::CollisionLibrary::getLineBoxDistanceSq (const dim::aabbox3df &Box, const dim::line3df &Line)
f32 sp::math::CollisionLibrary::getLineBoxDistance (const dim::aabbox3df &Box, const dim::line3df &Line)
 Computes the distance between the given box and line.
SP_EXPORT f32 sp::math::CollisionLibrary::getLineLineDistanceSq (const dim::line3df &LineA, const dim::line3df &LineB, dim::vector3df &PointP, dim::vector3df &PointQ)
f32 sp::math::CollisionLibrary::getLineLineDistance (const dim::line3df &LineA, const dim::line3df &LineB, dim::vector3df &PointP, dim::vector3df &PointQ)
 Returns the square root of the result of the getLineLineDistanceSq function.
SP_EXPORT bool sp::math::CollisionLibrary::getLineLineIntersection (const dim::line3df &LineA, const dim::line3df &LineB, dim::vector3df &Intersection)
SP_EXPORT dim::point2df sp::math::CollisionLibrary::get2DLineLineIntersectionStraight (const dim::point2df &A, const dim::point2df &B, const dim::point2df &C, const dim::point2df &D)
SP_EXPORT bool sp::math::CollisionLibrary::checkLineTriangleIntersection (const dim::triangle3df &Triangle, const dim::line3df &Line, dim::vector3df &Intersection)
SP_EXPORT bool sp::math::CollisionLibrary::checkLineSphereIntersection (const dim::line3df &Line, const dim::vector3df &SpherePosition, const f32 SphereRadius, dim::vector3df &Intersection, bool MakeRayTest)
SP_EXPORT bool sp::math::CollisionLibrary::checkLineBoxIntersection (const dim::line3df &Line, const dim::aabbox3df &Box, dim::vector3df &Intersection, bool MakeRayTest)
SP_EXPORT bool sp::math::CollisionLibrary::checkTriangleTriangleIntersection (const dim::triangle3df &TriangleA, const dim::triangle3df &TriangleB, dim::line3df &Intersection)
SP_EXPORT bool sp::math::CollisionLibrary::checkLineBoxOverlap (const dim::line3df &Line, const dim::aabbox3df &Box)
 Returns true if an intersection between "Line" and "Box" has been detected.
SP_EXPORT bool sp::math::CollisionLibrary::checkPlaneBoxOverlap (const dim::plane3df &Plane, const dim::aabbox3df &Box)
 Returns true if an intersection between "Plane" and "Box" has been detected.
SP_EXPORT bool sp::math::CollisionLibrary::checkTriangleBoxOverlap (const dim::triangle3df &Triangle, const dim::aabbox3df &Box)
 Returns true if an intersection between "Triangle" and "Box" has been detected.
SP_EXPORT bool sp::math::CollisionLibrary::checkOBBoxOBBoxOverlap (const dim::obbox3df &BoxA, const dim::obbox3df &BoxB)
bool sp::math::CollisionLibrary::checkPyramidPyramidOverlap (const dim::vector3df &OriginA, const scene::ViewFrustum &FrustumA, const dim::vector3df &OriginB, const scene::ViewFrustum &FrustumB)
template<typename T , typename C >
bool sp::math::CollisionLibrary::getLinePlaneIntersection (const dim::plane3d< T > &Plane, const C &LineStart, const C &LineEnd, C &Intersection)
template<typename T , typename C >
bool sp::math::CollisionLibrary::clipPolygon (const dim::polygon< C > &Poly, const dim::plane3d< T > &Plane, dim::polygon< C > &FrontPoly, dim::polygon< C > &BackPoly)
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines