Namespace for the Geometric functions and classes. More...
Classes | |
| class | InsufficientPoints |
| Insufficient points to compute the result. More... | |
| class | Plane |
| Class that represents a plane in 3D space. More... | |
| class | Sphere |
| Class that represents a sphere in 3D space. More... | |
Functions | |
| Plane | getRobustTangentPlane (const COP &cop, float expectedInliersRatio, float &inliersRatio) |
| Extracts a plane from a COP. | |
| Plane | getRobustTangentPlane (const COP &cop, float expectedInliersRatio, std::vector< Point3D > &inliers, float &inliersRatio) |
| Extracts a plane from a COP and returns the inliers. | |
| Plane | getAveragePlane (const COP &cop) |
| Calculates an average plane from the COP points. | |
| float | distanceToPlane (const Point3D &point, const Plane &plane, Point3D &intersectionPoint) |
| Calculates the distance between a given point and a plane in 3D space. | |
| Sphere | fitSphere (std::vector< Point3D > points) |
| Calculates a sphere given four or more points. | |
| Sphere | fitCOPToSphere (const COP &cop) |
| Calculates a sphere given a COP. | |
Namespace for the Geometric functions and classes.
The functions and classes in this namespace require linking with geometric.lib (import library for geometric.dll).
This namespace contains some functions meant to aid the user in performing some geometric operations on 3D data, as well as some class definitions for basic shapes.
Some of the functions operate on unorganized points, and some on COP objects. Please refer to the documentation of each function for details.
One of the most useful functions of this module is the plane fitting in conjunction to the alignToZ method of the Plane. This can be used, for example, to align tilted planes to the Z plane to do a posterior analysis with the help of a ZMap.
sal3d::COP cop("file.cop"); const float expectedInliersRatio = .9f; float inliersRatio; sal3d::Geometric::Plane plane(getRobustTangentPlane(cop, expectedInliersRatio, inliersRatio)); sal3d::Movement3D move(plane.alignToZ(sal3d::Point3D(0, 0, 0))); sal3d::ZMap zmap(cop, move, cop.getZMapFactors()); // 2D analysis ...
by
1.7.6.1