Unigine::Geometry Class
Header: | #include <UnigineGeometry.h> |
Geometry Class
Members
void getClosestPointOnLine(const Math::dvec3 & point, const Math::dvec3 & p0, const Math::dvec3 & p1, Math::dvec3 & ret)
Arguments
- const Math::dvec3 & point
- const Math::dvec3 & p0
- const Math::dvec3 & p1
- Math::dvec3 & ret
void getClosestPointOnLine(const Math::vec3 & point, const Math::vec3 & p0, const Math::vec3 & p1, Math::vec3 & ret)
Arguments
- const Math::vec3 & point
- const Math::vec3 & p0
- const Math::vec3 & p1
- Math::vec3 & ret
int getClosestPointOnTriangle(const Math::dvec3 & point, const Math::dvec3 & v0, const Math::dvec3 & v1, const Math::dvec3 & v2, Math::dvec3 & ret)
Arguments
- const Math::dvec3 & point
- const Math::dvec3 & v0
- const Math::dvec3 & v1
- const Math::dvec3 & v2
- Math::dvec3 & ret
int getClosestPointOnTriangle(const Math::vec3 & point, const Math::vec3 & v0, const Math::vec3 & v1, const Math::vec3 & v2, Math::vec3 & ret)
Arguments
- const Math::vec3 & point
- const Math::vec3 & v0
- const Math::vec3 & v1
- const Math::vec3 & v2
- Math::vec3 & ret
int getClosestPointsOnLines(const Math::dvec3 & p00, const Math::dvec3 & p01, const Math::dvec3 & p10, const Math::dvec3 & p11, Math::dvec3 & ret_0, Math::dvec3 & ret_1)
Arguments
- const Math::dvec3 & p00
- const Math::dvec3 & p01
- const Math::dvec3 & p10
- const Math::dvec3 & p11
- Math::dvec3 & ret_0
- Math::dvec3 & ret_1
int getClosestPointsOnLines(const Math::vec3 & p00, const Math::vec3 & p01, const Math::vec3 & p10, const Math::vec3 & p11, Math::vec3 & ret_0, Math::vec3 & ret_1)
Arguments
- const Math::vec3 & p00
- const Math::vec3 & p01
- const Math::vec3 & p10
- const Math::vec3 & p11
- Math::vec3 & ret_0
- Math::vec3 & ret_1
int irayBoundBoxIntersection(const Math::dvec3 & point, const Math::dvec3 & idirection, const Math::dvec3 & min, const Math::dvec3 & max)
Arguments
- const Math::dvec3 & point
- const Math::dvec3 & idirection
- const Math::dvec3 & min
- const Math::dvec3 & max
int irayBoundBoxIntersection(const Math::vec3 & point, const Math::vec3 & idirection, const Math::vec3 & min, const Math::vec3 & max)
Arguments
- const Math::vec3 & point
- const Math::vec3 & idirection
- const Math::vec3 & min
- const Math::vec3 & max
int linePlaneIntersection(const Math::vec3 & p0, const Math::vec3 & p1, const Math::vec4 & plane)
Arguments
- const Math::vec3 & p0
- const Math::vec3 & p1
- const Math::vec4 & plane
int linePlaneIntersection(const Math::vec3 & p0, const Math::vec3 & p1, const Math::vec3 & plane_point, const Math::vec3 & plane_normal, Math::vec3 & ret)
Arguments
- const Math::vec3 & p0
- const Math::vec3 & p1
- const Math::vec3 & plane_point
- const Math::vec3 & plane_normal
- Math::vec3 & ret
int linePlaneIntersection(const Math::dvec3 & p0, const Math::dvec3 & p1, const Math::dvec3 & plane_point, const Math::dvec3 & plane_normal)
Arguments
- const Math::dvec3 & p0
- const Math::dvec3 & p1
- const Math::dvec3 & plane_point
- const Math::dvec3 & plane_normal
int linePlaneIntersection(const Math::dvec3 & p0, const Math::dvec3 & p1, const Math::dvec3 & plane_point, const Math::dvec3 & plane_normal, Math::dvec3 & ret)
Arguments
- const Math::dvec3 & p0
- const Math::dvec3 & p1
- const Math::dvec3 & plane_point
- const Math::dvec3 & plane_normal
- Math::dvec3 & ret
int linePlaneIntersection(const Math::vec3 & p0, const Math::vec3 & p1, const Math::vec3 & plane_point, const Math::vec3 & plane_normal)
Arguments
- const Math::vec3 & p0
- const Math::vec3 & p1
- const Math::vec3 & plane_point
- const Math::vec3 & plane_normal
int linePlaneIntersection(const Math::dvec3 & p0, const Math::dvec3 & p1, const Math::dvec4 & plane, Math::dvec3 & ret)
Arguments
- const Math::dvec3 & p0
- const Math::dvec3 & p1
- const Math::dvec4 & plane
- Math::dvec3 & ret
int linePlaneIntersection(const Math::vec3 & p0, const Math::vec3 & p1, const Math::vec4 & plane, Math::vec3 & ret)
Arguments
- const Math::vec3 & p0
- const Math::vec3 & p1
- const Math::vec4 & plane
- Math::vec3 & ret
int linePlaneIntersection(const Math::dvec3 & p0, const Math::dvec3 & p1, const Math::dvec4 & plane)
Arguments
- const Math::dvec3 & p0
- const Math::dvec3 & p1
- const Math::dvec4 & plane
float normalizeAngle(float angle)
Arguments
- float angle
void orthoBasis(const Math::vec3 & v, Math::vec3 & tangent, Math::vec3 & binormal)
Arguments
- const Math::vec3 & v
- Math::vec3 & tangent
- Math::vec3 & binormal
void orthoBasis(const Math::dvec3 & v, Math::dvec3 & tangent, Math::dvec3 & binormal)
Arguments
- const Math::dvec3 & v
- Math::dvec3 & tangent
- Math::dvec3 & binormal
Math::quat orthoTangent(const Math::vec3 & tangent, const Math::vec3 & binormal, const Math::vec3 & normal)
Arguments
- const Math::vec3 & tangent
- const Math::vec3 & binormal
- const Math::vec3 & normal
Math::quat orthoTangent(const Math::vec4 & tangent, const Math::vec3 & normal)
Arguments
- const Math::vec4 & tangent
- const Math::vec3 & normal
void orthoTransform(const Math::dvec3 & v, Math::dmat4 & transform)
Arguments
- const Math::dvec3 & v
- Math::dmat4 & transform
void orthoTransform(const Math::vec3 & v, Math::mat4 & transform)
Arguments
- const Math::vec3 & v
- Math::mat4 & transform
float pointPolygonDistance(const Math::vec3 & point, const Math::vec3 * vertex, int[] indices, const Math::vec4 & plane)
Arguments
- const Math::vec3 & point
- const Math::vec3 * vertex
- int[] indices
- const Math::vec4 & plane
double pointPolygonDistance(const Math::dvec3 & point, const Math::dvec3 * vertex, int[] indices, const Math::dvec4 & plane)
Arguments
- const Math::dvec3 & point
- const Math::dvec3 * vertex
- int[] indices
- const Math::dvec4 & plane
int pointPolygonInside(const Math::vec3 & point, const Math::vec3 * vertex, int[] indices, const Math::vec3 & normal)
Arguments
- const Math::vec3 & point
- const Math::vec3 * vertex
- int[] indices
- const Math::vec3 & normal
int pointPolygonInside(const Math::dvec3 & point, const Math::dvec3 * vertex, int[] indices, const Math::dvec3 & normal)
Arguments
- const Math::dvec3 & point
- const Math::dvec3 * vertex
- int[] indices
- const Math::dvec3 & normal
void pointTriangleCoordinates(const Math::vec3 & point, const Math::vec3 & v0, const Math::vec3 & v1, const Math::vec3 & v2, float & a, float & b)
Arguments
- const Math::vec3 & point
- const Math::vec3 & v0
- const Math::vec3 & v1
- const Math::vec3 & v2
- float & a
- float & b
void pointTriangleCoordinates(const Math::dvec3 & point, const Math::dvec3 & v0, const Math::dvec3 & v1, const Math::dvec3 & v2, double & a, double & b)
Arguments
- const Math::dvec3 & point
- const Math::dvec3 & v0
- const Math::dvec3 & v1
- const Math::dvec3 & v2
- double & a
- double & b
double pointTriangleDistance(const Math::dvec3 & point, const Math::dvec3 & v0, const Math::dvec3 & v1, const Math::dvec3 & v2, const Math::dvec4 & plane)
Arguments
- const Math::dvec3 & point
- const Math::dvec3 & v0
- const Math::dvec3 & v1
- const Math::dvec3 & v2
- const Math::dvec4 & plane
float pointTriangleDistance(const Math::vec3 & point, const Math::vec3 & v0, const Math::vec3 & v1, const Math::vec3 & v2, const Math::vec4 & plane)
Arguments
- const Math::vec3 & point
- const Math::vec3 & v0
- const Math::vec3 & v1
- const Math::vec3 & v2
- const Math::vec4 & plane
int pointTriangleInside(const Math::vec3 & point, const Math::vec3 & v0, const Math::vec3 & v1, const Math::vec3 & v2, const Math::vec3 & normal)
Arguments
- const Math::vec3 & point
- const Math::vec3 & v0
- const Math::vec3 & v1
- const Math::vec3 & v2
- const Math::vec3 & normal
int pointTriangleInside(const Math::dvec3 & point, const Math::dvec3 & v0, const Math::dvec3 & v1, const Math::dvec3 & v2, const Math::dvec3 & normal)
Arguments
- const Math::dvec3 & point
- const Math::dvec3 & v0
- const Math::dvec3 & v1
- const Math::dvec3 & v2
- const Math::dvec3 & normal
int pointTriangleInside(const Math::dvec3 & point, const Math::dvec3 & v0, const Math::dvec3 & v1, const Math::dvec3 & v2)
Arguments
- const Math::dvec3 & point
- const Math::dvec3 & v0
- const Math::dvec3 & v1
- const Math::dvec3 & v2
int pointTriangleInside(const Math::vec3 & point, const Math::vec3 & v0, const Math::vec3 & v1, const Math::vec3 & v2)
Arguments
- const Math::vec3 & point
- const Math::vec3 & v0
- const Math::vec3 & v1
- const Math::vec3 & v2
Math::vec4 polygonPlane(const Math::vec3 * vertex, int[] indices)
Arguments
- const Math::vec3 * vertex
- int[] indices
Math::dvec4 polygonPlane(const Math::dvec3 * vertex, int[] indices)
Arguments
- const Math::dvec3 * vertex
- int[] indices
Math::vec3 projectOntoPlane(const Math::vec3 & v, const Math::vec3 & plane_normal)
Arguments
- const Math::vec3 & v
- const Math::vec3 & plane_normal
Math::dvec3 projectOntoPlane(const Math::dvec3 & v, const Math::dvec3 & plane_normal)
Arguments
- const Math::dvec3 & v
- const Math::dvec3 & plane_normal
int rayBoundBoxIntersection(const Math::dvec3 & point, const Math::dvec3 & direction, const Math::dvec3 & min, const Math::dvec3 & max)
Arguments
- const Math::dvec3 & point
- const Math::dvec3 & direction
- const Math::dvec3 & min
- const Math::dvec3 & max
int rayBoundBoxIntersection(const Math::vec3 & point, const Math::vec3 & direction, const Math::vec3 & min, const Math::vec3 & max)
Arguments
- const Math::vec3 & point
- const Math::vec3 & direction
- const Math::vec3 & min
- const Math::vec3 & max
int rayPlaneIntersection(const Math::vec3 & point, const Math::vec3 & direction, const Math::vec4 & plane)
Arguments
- const Math::vec3 & point
- const Math::vec3 & direction
- const Math::vec4 & plane
int rayPlaneIntersection(const Math::vec3 & point, const Math::vec3 & direction, const Math::vec3 & plane_point, const Math::vec3 & plane_normal)
Arguments
- const Math::vec3 & point
- const Math::vec3 & direction
- const Math::vec3 & plane_point
- const Math::vec3 & plane_normal
int rayPlaneIntersection(const Math::dvec3 & point, const Math::dvec3 & direction, const Math::dvec4 & plane, Math::dvec3 & ret)
Arguments
- const Math::dvec3 & point
- const Math::dvec3 & direction
- const Math::dvec4 & plane
- Math::dvec3 & ret
int rayPlaneIntersection(const Math::vec3 & point, const Math::vec3 & direction, const Math::vec3 & plane_point, const Math::vec3 & plane_normal, Math::vec3 & ret)
Arguments
- const Math::vec3 & point
- const Math::vec3 & direction
- const Math::vec3 & plane_point
- const Math::vec3 & plane_normal
- Math::vec3 & ret
int rayPlaneIntersection(const Math::vec3 & point, const Math::vec3 & direction, const Math::vec4 & plane, Math::vec3 & ret)
Arguments
- const Math::vec3 & point
- const Math::vec3 & direction
- const Math::vec4 & plane
- Math::vec3 & ret
int rayPlaneIntersection(const Math::dvec3 & point, const Math::dvec3 & direction, const Math::dvec3 & plane_point, const Math::dvec3 & plane_normal)
Arguments
- const Math::dvec3 & point
- const Math::dvec3 & direction
- const Math::dvec3 & plane_point
- const Math::dvec3 & plane_normal
int rayPlaneIntersection(const Math::dvec3 & point, const Math::dvec3 & direction, const Math::dvec3 & plane_point, const Math::dvec3 & plane_normal, Math::dvec3 & ret)
Arguments
- const Math::dvec3 & point
- const Math::dvec3 & direction
- const Math::dvec3 & plane_point
- const Math::dvec3 & plane_normal
- Math::dvec3 & ret
int rayPlaneIntersection(const Math::dvec3 & point, const Math::dvec3 & direction, const Math::dvec4 & plane)
Arguments
- const Math::dvec3 & point
- const Math::dvec3 & direction
- const Math::dvec4 & plane
int rayTriangleIntersection(const Math::vec3 & point, const Math::vec3 & direction, const Math::vec3 & v0, const Math::vec3 & v1, const Math::vec3 & v2)
Arguments
- const Math::vec3 & point
- const Math::vec3 & direction
- const Math::vec3 & v0
- const Math::vec3 & v1
- const Math::vec3 & v2
int rayTriangleIntersection(const Math::dvec3 & point, const Math::dvec3 & direction, const Math::dvec3 & v0, const Math::dvec3 & v1, const Math::dvec3 & v2)
Arguments
- const Math::dvec3 & point
- const Math::dvec3 & direction
- const Math::dvec3 & v0
- const Math::dvec3 & v1
- const Math::dvec3 & v2
int segmentPlaneIntersection(const Math::vec3 & p0, const Math::vec3 & p1, const Math::vec4 & plane, Math::vec3 & ret)
Arguments
- const Math::vec3 & p0
- const Math::vec3 & p1
- const Math::vec4 & plane
- Math::vec3 & ret
int segmentPlaneIntersection(const Math::vec3 & p0, const Math::vec3 & p1, const Math::vec3 & plane_point, const Math::vec3 & plane_normal)
Arguments
- const Math::vec3 & p0
- const Math::vec3 & p1
- const Math::vec3 & plane_point
- const Math::vec3 & plane_normal
int segmentPlaneIntersection(const Math::vec3 & p0, const Math::vec3 & p1, const Math::vec4 & plane)
Arguments
- const Math::vec3 & p0
- const Math::vec3 & p1
- const Math::vec4 & plane
int segmentPlaneIntersection(const Math::vec3 & p0, const Math::vec3 & p1, const Math::vec3 & plane_point, const Math::vec3 & plane_normal, Math::vec3 & ret)
Arguments
- const Math::vec3 & p0
- const Math::vec3 & p1
- const Math::vec3 & plane_point
- const Math::vec3 & plane_normal
- Math::vec3 & ret
int segmentPlaneIntersection(const Math::dvec3 & p0, const Math::dvec3 & p1, const Math::dvec4 & plane)
Arguments
- const Math::dvec3 & p0
- const Math::dvec3 & p1
- const Math::dvec4 & plane
int segmentPlaneIntersection(const Math::dvec3 & p0, const Math::dvec3 & p1, const Math::dvec3 & plane_point, const Math::dvec3 & plane_normal)
Arguments
- const Math::dvec3 & p0
- const Math::dvec3 & p1
- const Math::dvec3 & plane_point
- const Math::dvec3 & plane_normal
int segmentPlaneIntersection(const Math::dvec3 & p0, const Math::dvec3 & p1, const Math::dvec4 & plane, Math::dvec3 & ret)
Arguments
- const Math::dvec3 & p0
- const Math::dvec3 & p1
- const Math::dvec4 & plane
- Math::dvec3 & ret
int segmentPlaneIntersection(const Math::dvec3 & p0, const Math::dvec3 & p1, const Math::dvec3 & plane_point, const Math::dvec3 & plane_normal, Math::dvec3 & ret)
Arguments
- const Math::dvec3 & p0
- const Math::dvec3 & p1
- const Math::dvec3 & plane_point
- const Math::dvec3 & plane_normal
- Math::dvec3 & ret
double triangleArea(const Math::dvec3 & v0, const Math::dvec3 & v1, const Math::dvec3 & v2)
Arguments
- const Math::dvec3 & v0
- const Math::dvec3 & v1
- const Math::dvec3 & v2
float triangleArea(const Math::vec3 & v0, const Math::vec3 & v1, const Math::vec3 & v2)
Arguments
- const Math::vec3 & v0
- const Math::vec3 & v1
- const Math::vec3 & v2
Math::dvec3 triangleNormal(const Math::dvec3 & v0, const Math::dvec3 & v1, const Math::dvec3 & v2)
Arguments
- const Math::dvec3 & v0
- const Math::dvec3 & v1
- const Math::dvec3 & v2
Math::vec3 triangleNormal(const Math::vec3 & v0, const Math::vec3 & v1, const Math::vec3 & v2)
Arguments
- const Math::vec3 & v0
- const Math::vec3 & v1
- const Math::vec3 & v2
Math::vec4 trianglePlane(const Math::vec3 & v0, const Math::vec3 & v1, const Math::vec3 & v2)
Arguments
- const Math::vec3 & v0
- const Math::vec3 & v1
- const Math::vec3 & v2
Math::dvec4 trianglePlane(const Math::dvec3 & v0, const Math::dvec3 & v1, const Math::dvec3 & v2)
Arguments
- const Math::dvec3 & v0
- const Math::dvec3 & v1
- const Math::dvec3 & v2
Math::vec4 triangleTangent(const Math::vec3 & v0, const Math::vec3 & v1, const Math::vec3 & v2, const Math::vec2 & t0, const Math::vec2 & t1, const Math::vec2 & t2)
Arguments
- const Math::vec3 & v0
- const Math::vec3 & v1
- const Math::vec3 & v2
- const Math::vec2 & t0
- const Math::vec2 & t1
- const Math::vec2 & t2
Math::vec4 triangleTangent(const Math::vec3 & v0, const Math::vec3 & v1, const Math::vec3 & v2, const Math::vec2 & t0, const Math::vec2 & t1, const Math::vec2 & t2, const Math::vec3 & normal)
Arguments
- const Math::vec3 & v0
- const Math::vec3 & v1
- const Math::vec3 & v2
- const Math::vec2 & t0
- const Math::vec2 & t1
- const Math::vec2 & t2
- const Math::vec3 & normal
Math::vec4 triangleTangent(const Math::vec3 & v0, const Math::vec3 & v1, const Math::vec3 & v2)
Arguments
- const Math::vec3 & v0
- const Math::vec3 & v1
- const Math::vec3 & v2
Last update: 2017-07-03
Help improve this article
Was this article helpful?
(or select a word/phrase and press Ctrl+Enter)