Implements general geometry utility functions. More...
#include "math/CPolySolver.h"
Go to the source code of this file.
Namespaces | |
chai3d | |
Functions | |
double | chai3d::cTriangleArea (const cVector3d &a_vertex0, const cVector3d &a_vertex1, const cVector3d &a_vertex2) |
This function computes the area of a triangle. More... | |
cVector3d | chai3d::cProjectPointOnPlane (const cVector3d &a_point, const cVector3d &a_planePoint, const cVector3d &a_planeNormal) |
This function computes the projection of a point onto a plane. More... | |
cVector3d | chai3d::cProjectPointOnPlane (const cVector3d &a_point, const cVector3d &a_planePoint0, const cVector3d &a_planePoint1, const cVector3d &a_planePoint2) |
This function computes the projection of a point onto a plane. More... | |
void | chai3d::cProjectPointOnPlane (const cVector3d &a_point, const cVector3d &a_planePoint0, const cVector3d &a_planePoint1, const cVector3d &a_planePoint2, double &a_r01, double &a_r02) |
This function computes the projection of a point onto a plane. More... | |
cVector3d | chai3d::cProjectPointOnLine (const cVector3d &a_point, const cVector3d &a_pointOnLine, const cVector3d &a_directionOfLine) |
This function computes the projection of a point onto a line. More... | |
cVector3d | chai3d::cProjectPointOnSegment (const cVector3d &a_point, const cVector3d &a_segmentPointA, const cVector3d &a_segmentPointB) |
This function computes the projection of a point onto a segment. More... | |
cVector3d | chai3d::cProjectPointOnDiskXY (const cVector3d &a_point, const double &a_height, const double &a_radius) |
This function computes the projection of a point onto a disk. More... | |
cVector3d | chai3d::cProjectPointOnTriangle (const cVector3d &a_point, const cVector3d &a_vertex0, const cVector3d &a_vertex1, const cVector3d &a_vertex2) |
This function computes the projection of a point onto a triangle. More... | |
cVector3d | chai3d::cProject (const cVector3d &a_vector0, const cVector3d &a_vector1) |
This function computes the projection of a vector V0 onto a vector V1. More... | |
double | chai3d::cDistanceToLine (const cVector3d &a_point, const cVector3d &a_linePoint1, const cVector3d &a_linePoint2) |
This function computes the distance between a point and a line. More... | |
cVector3d | chai3d::cComputeSurfaceNormal (const cVector3d &a_surfacePoint0, const cVector3d &a_surfacePoint1, const cVector3d &a_surfacePoint2) |
This function computes the surface normal of a plane. More... | |
bool | chai3d::cBoxContains (const cVector3d &a_point, const cVector3d &a_boxMin, const cVector3d &a_boxMax) |
This function checks if a point is contained in a box. More... | |
int | chai3d::cIntersectionSegmentPlane (const cVector3d &a_segmentPointA, const cVector3d &a_segmentPointB, const cVector3d &a_planePos, const cVector3d &a_planeNormal, cVector3d &a_collisionPoint, cVector3d &a_collisionNormal) |
This function computes the intersection between a segment and a plane. More... | |
int | chai3d::cIntersectionSegmentDisk (const cVector3d &a_segmentPointA, const cVector3d &a_segmentPointB, const cVector3d &a_diskPos, const cVector3d &a_diskNormal, const double &a_diskRadius, cVector3d &a_collisionPoint, cVector3d &a_collisionNormal) |
This function computes the intersection between a segment and a disk. More... | |
int | chai3d::cIntersectionSegmentSphere (const cVector3d &a_segmentPointA, const cVector3d &a_segmentPointB, const cVector3d &a_spherePos, const double &a_sphereRadius, cVector3d &a_collisionPoint0, cVector3d &a_collisionNormal0, cVector3d &a_collisionPoint1, cVector3d &a_collisionNormal1) |
This function computes the intersection between a segment and a sphere. More... | |
int | chai3d::cIntersectionSegmentEllipsoid (const cVector3d &a_segmentPointA, const cVector3d &a_segmentPointB, const cVector3d &a_pos, const double &a_radiusX, const double &a_radiusY, const double &a_radiusZ, cVector3d &a_collisionPoint0, cVector3d &a_collisionNormal0, cVector3d &a_collisionPoint1, cVector3d &a_collisionNormal1) |
This function computes the intersection between a segment and a sphere. More... | |
int | chai3d::cIntersectionSegmentToplessCylinder (const cVector3d &a_segmentPointA, const cVector3d &a_segmentPointB, const cVector3d &a_cylinderPointA, const cVector3d &a_cylinderPointB, const double &a_cylinderRadius, cVector3d &a_collisionPoint0, cVector3d &a_collisionNormal0, double &a_collisionPointRelPosAB0, cVector3d &a_collisionPoint1, cVector3d &a_collisionNormal1, double &a_collisionPointRelPosAB1) |
This function computes the intersection between a segment and a topless cylinder. More... | |
int | chai3d::cIntersectionSegmentCylinder (const cVector3d &a_segmentPointA, const cVector3d &a_segmentPointB, const double &a_baseRadius, const double &a_topRadius, const double &a_height, cVector3d &a_collisionPoint, cVector3d &a_collisionNormal) |
This function computes the nearest intersection point between a segment and a cylinder. More... | |
int | chai3d::cIntersectionSegmentBox (const cVector3d &a_segmentPointA, const cVector3d &a_segmentPointB, const cVector3d &a_boxMin, const cVector3d &a_boxMax, cVector3d &a_collisionPoint, cVector3d &a_collisionNormal) |
This function computes the nearest intersection point between a segment and a box. More... | |
int | chai3d::cIntersectionSegmentTorus (const cVector3d &a_segmentPointA, const cVector3d &a_segmentPointB, const double &a_innerRadius, const double &a_outerRadius, cVector3d &a_collisionPoint, cVector3d &a_collisionNormal) |
This function computes the nearest intersection point between a segment and a torus. More... | |
bool | chai3d::cIntersectionSegmentTriangle (const cVector3d &a_segmentPointA, const cVector3d &a_segmentPointB, const cVector3d &a_triangleVertex0, const cVector3d &a_triangleVertex1, const cVector3d &a_triangleVertex2, const bool a_reportFrontSideCollision, const bool a_reportBackSideCollision, cVector3d &a_collisionPoint, cVector3d &a_collisionNormal, double &a_collisionPosVertex01, double &a_collisionPosVertex02) |
This function computes the intersection between a segment and a triangle. More... | |