15 #ifndef __IPSDKMATH_TRIANGLE3D_H__ 16 #define __IPSDKMATH_TRIANGLE3D_H__ 33 return distance(x0, y0, z0, x1, y1, z1) +
44 ipReal64 crossProdX, crossProdY, crossProdZ;
46 crossProdX, crossProdY, crossProdZ);
48 return 0.5 *
normL2(crossProdX, crossProdY, crossProdZ);
53 IPSDK_FORCEINLINE
void 67 IPSDK_FORCEINLINE
bool 73 triangleNormal(x0, y0, z0, x1, y1, z1, x2, y2, z2, nx, ny, nz);
93 #endif // __IPSDKMATH_TRIANGLE3D_H__ Definition of import/export macro for library.
Main namespace for IPSDK library.
Definition: AlgorithmFunctionEfficiency.h:22
IPSDK_FORCEINLINE bool triangleUnitNormal(const ipReal64 x0, const ipReal64 y0, const ipReal64 z0, const ipReal64 x1, const ipReal64 y1, const ipReal64 z1, const ipReal64 x2, const ipReal64 y2, const ipReal64 z2, ipReal64 &nx, ipReal64 &ny, ipReal64 &nz)
computation of triangle unit normal from its vertives coordinates
Definition: Triangle3d.h:68
IPSDK_FORCEINLINE ipReal64 triangleArea(const ipReal64 x0, const ipReal64 y0, const ipReal64 z0, const ipReal64 x1, const ipReal64 y1, const ipReal64 z1, const ipReal64 x2, const ipReal64 y2, const ipReal64 z2)
computation of triangle area from its vertives coordinates
Definition: Triangle3d.h:40
IPSDK_FORCEINLINE void triangleNormal(const ipReal64 x0, const ipReal64 y0, const ipReal64 z0, const ipReal64 x1, const ipReal64 y1, const ipReal64 z1, const ipReal64 x2, const ipReal64 y2, const ipReal64 z2, ipReal64 &nx, ipReal64 &ny, ipReal64 &nz)
computation of triangle normal from its vertives coordinates
Definition: Triangle3d.h:54
double ipReal64
Base types definition.
Definition: BaseTypes.h:57
IPSDK_FORCEINLINE ipReal64 trianglePerimeter(const ipReal64 x0, const ipReal64 y0, const ipReal64 z0, const ipReal64 x1, const ipReal64 y1, const ipReal64 z1, const ipReal64 x2, const ipReal64 y2, const ipReal64 z2)
computation of triangle perimeter from its vertives coordinates
Definition: Triangle3d.h:29
IPSDK_FORCEINLINE ipReal64 distance(const T x1, const T y1, const T x2, const T y2)
Euclidian distance between 2d points.
Definition: Point2d.h:30
Utility functions used to handle points 3d.
IPSDK_FORCEINLINE void crossProduct(const T x1, const T y1, const T z1, const T x2, const T y2, const T z2, T &xRes, T &yRes, T &zRes)
Cross product of two 3d vectors.
Definition: Vector3d.h:49
IPSDK_FORCEINLINE ipReal64 normL2(const T x, const T y)
L2 norm of a 2d vector.
Definition: Vector2d.h:32