ug4
math_util.cpp File Reference
#include <vector>
#include "math_util.h"
#include "../ugmath.h"
#include "../ugmath_types.h"
#include "lineintersect_utils.h"

Namespaces

 ug
 the ug namespace
 

Functions

int ug::BinomCoeff (int n, int k)
 Returns the BinomialCoefficient. More...
 
void ug::CalculateCovarianceMatrix (matrix33 &matOut, const vector3 *pointSet, const vector3 &center, size_t numPoints)
 Calculates the covariance matrix of a given point-set. More...
 
number ug::CalculateHexahedronVolume (const vector3 &a, const vector3 &b, const vector3 &c, const vector3 &d, const vector3 &e, const vector3 &f, const vector3 &g, const vector3 &h)
 
number ug::CalculateOctahedronVolume (const vector3 &a, const vector3 &b, const vector3 &c, const vector3 &d, const vector3 &e, const vector3 &f)
 
number ug::CalculatePrismVolume (const vector3 &a, const vector3 &b, const vector3 &c, const vector3 &d, const vector3 &e, const vector3 &f)
 
number ug::CalculatePyramidVolume (const vector3 &a, const vector3 &b, const vector3 &c, const vector3 &d, const vector3 &e)
 
number ug::CalculateTetrahedronVolume (const vector3 &a, const vector3 &b, const vector3 &c, const vector3 &d)
 
bool ug::ConstructOrthonormalSystem (matrix33 &matOut, const vector3 &v, size_t vColInd)
 constructs a orthonormal matrix given a vector in 3d. More...
 
number ug::DistanceLineToLine (const vector3 &a1, const vector3 &a2, const vector3 &b1, const vector3 &b2)
 calculates the distance between two 3d line segments More...
 
bool ug::FindClosestPlane (vector3 &centerOut, vector3 &normalOut, const vector3 *pointSet, size_t numPoints)
 Finds the plane which minimizes the distance to the given point set. More...
 
bool ug::FindNormal (vector3 &normOut, const vector3 &v)
 finds a normal to the given vector in 3d. More...
 
bool ug::LineLineIntersection3d (vector3 &aOut, vector3 &bOut, const vector3 &a1, const vector3 &a2, const vector3 &b1, const vector3 &b2)
 intersects two 3d line segments More...
 
bool ug::RayCylinderIntersection (number &tMinOut, number &tMaxOut, const vector3 &rayFrom, const vector3 &rayDir, const vector3 &cylCenter, const vector3 &cylAxis, number cylRadius)
 returns the parameter values at which a given ray intersects an infinite cylinder. More...
 
bool ug::RayRayIntersection3d (vector3 &aOut, vector3 &bOut, const vector3 &p0, const vector3 &dir0, const vector3 &p1, const vector3 &dir1)
 intersects two 3d rays More...
 
bool ug::TransformPointSetTo2D (vector2 *pointSetOut, const vector3 *pointSet, size_t numPoints)
 transforms points from 3d space to 2d space. More...
 
bool ug::TriangleCircumcenter (vector2 &centerOut, const vector2 &p1, const vector2 &p2, const vector2 &p3)
 Calculates the circumcenter of a triangle. More...
 
bool ug::TriangleCircumcenter (vector3 &centerOut, const vector3 &p1, const vector3 &p2, const vector3 &p3)
 Calculates the circumcenter of a triangle. More...