|
SparsePointCloudPtr | ToSparsePointCloud () const |
| Creates a sparse point cloud from this dense point cloud with confidence plane. More...
|
|
Cvb::Size2D< int > | LatticeSize () const |
| Gets the number of x,y,z(,w) point rows and columns of the given dense PointCloud. More...
|
|
DensePointCloudPtr | Shrink () const |
| Creates a new dense point cloud where lines and columns at the borders containing only non-confident points are removed. More...
|
|
DensePointCloudPtr | Crop (const Cuboid &clipBox) const |
| Creates a new point cloud which only consists of the points inside the clip box. More...
|
|
DensePointCloudPtr | FrustumCrop (const Cuboid &clipBox, Angle theta, Angle phi) const |
| Creates a new point cloud which only consists of the points inside the clipBox, where the orientation of the two boundary planes Z=Zmin and Z=Zmax can be modified by angles theta and phi. More...
|
|
DensePointCloudPtr | PlaneCrop (const Plane3D &plane, const ValueRange< double > &range, CropRange cropRange) const |
| Creates a new point cloud where points within or outside a range parallel to given plane are cropped. More...
|
|
DensePointCloudPtr | PlaneCrop (const Plane3D &plane, double threshold, CropDirection cropBelowAbove=CropDirection::Below) const |
| Creates a new point cloud which only consists of the points below or above given plane. More...
|
|
template<class T > |
DenseComponentsPointers3D< T > | PointComponents () const |
| Get the point components from the given point cloud. More...
|
|
template<class T > |
bool | TryPointComponents (DenseComponentsPointers3D< T > &components) const noexcept |
| Tries to get the point components from the given point cloud. More...
|
|
PointCloudLayout | Layout () const |
| Get the layout of the available buffers/planes of the given point cloud. More...
|
|
class DataType | DataType () const |
| Gets the DataType of the x,y,z(,w) components of the given PointCloud. More...
|
|
std::size_t | NumPoints () const |
| Gets the number of x,y,z(,w) points in the given point cloud. More...
|
|
ComponentsPointers3D | PointComponents () const |
| Tries to get the point components from the given point cloud. More...
|
|
template<class T > |
std::size_t | Points (Point3D< T > *&points) const |
| Gets the 3D points from the given point cloud. More...
|
|
template<class T > |
std::size_t | PointsH (Point3DH< T > *&pointsH) const |
| Tries to get the 3D points from the given point cloud. More...
|
|
Cuboid | CalculateBoundingBox () const |
| Calculates the minimum and maximum extent of the point cloud. More...
|
|
Point3D< double > | CalculateCenterOfGravity () const |
| Calculates the center of gravity of the point cloud. More...
|
|
Matrix3D | CalculateCovarianceMatrix () const |
| Calculates the covariance matrix of the point cloud. More...
|
|
Plane3D | FitPlane () const |
| Fits a plane in the points of the point cloud without cropping it. More...
|
|
Plane3D | FitPlane (const Cuboid &aoi) const |
| Fits a plane in the points of the point cloud for a specified area of interest. More...
|
|
template<class T > |
std::shared_ptr< T > | Crop (const Cuboid &clipBox) const |
| Creates a new point cloud which only consists of the points inside the clip box. More...
|
|
template<class T > |
std::shared_ptr< T > | FrustumCrop (const Cuboid &clipBox, Angle theta, Angle phi) const |
| Creates a new point cloud which only consists of the points inside the clipBox, where the orientation of the two boundary planes Z=Zmin and Z=Zmax can be modified by angles theta and phi. More...
|
|
template<class T > |
std::shared_ptr< T > | PlaneCrop (const Plane3D &plane, const ValueRange< double > &range, CropRange cropRange) const |
| Creates a new point cloud where points within or outside a range parallel to given plane are cropped. More...
|
|
template<class T > |
std::shared_ptr< T > | PlaneCrop (const Plane3D &plane, double threshold, CropDirection cropBelowAbove=CropDirection::Below) const |
| Creates a new point cloud which only consists of the points below or above given plane. More...
|
|
PointCloudPtr | Downsample (DownSampleMode mode, int value) const |
| Creates a new point cloud which has several points being removed dependent on the down sample mode and value. More...
|
|
PointCloudPtr | Duplicate () const |
| Creates a new point cloud which is a copy this point cloud. More...
|
|
void | Save (const String &fileName) const |
| Saves the given point cloud to the file with the given FileName. More...
|
|
PointCloudPtr | Convert (PointCloudFlags flags) const |
| Creates a new point cloud, which is a copy from this point cloud, but with possibly different data type and number of components. More...
|
|
PointCloudPtr | Scale (Factors3D factors) const |
| Creates a new point cloud with all points being scaled by the given factors. More...
|
|
PointCloudPtr | Transform (const AffineMatrix3D &transformation) const |
| Creates a new point cloud with all points being transformed by the given transformation. More...
|
|
PointCloudPtr | Transform (const Matrix3DH &transformation) const |
| Creates a new point cloud with all points being transformed by the given transformation. More...
|
|
void | Transform (const AffineMatrix3D &affineTransformation, PointCloud &pointCloud) |
| Transforms all points in this point cloud by the given AffineTransformation and stores them in the given point cloud. More...
|
|
void | Transform (const Cvb::Matrix3DH &transformation, PointCloud &pointCloud) |
| Transforms all points in this point cloud by the given transformation and stores them in the given point cloud. More...
|
|
std::unique_ptr< Cvb::Image > | RangeMap (ValueRange< double > xRange, ValueRange< double > yRange, Size2D< int > size, double background) const |
| Creates a new range map image via linear projection in negative z-direction. More...
|
|
int | PlaneCount () const noexcept |
| Gets the number of planes enumerated by this object. More...
|
|
std::vector< PlanePtr > | Planes () const |
| Gets all available planes enumerated by this object. More...
|
|
PlanePtr | Plane (int index) const |
| Index based plane access. More...
|
|
size_t | MemorySize (PointCloudFlags flags, Cvb::PointCloudFileFormat format) const |
| Determines the amount of memory needed for ToMemory. More...
|
|
template<class Point > |
size_t | MemorySize (Cvb::PointCloudFileFormat format) const |
| Determines the amount of memory needed for ToMemory. More...
|
|
void | ToMemory (PointCloudFlags flags, Cvb::PointCloudFileFormat format, size_t size, void *buffer) const |
| Saves the point cloud to the memory in the given format. More...
|
|
template<class Point > |
void | ToMemory (Cvb::PointCloudFileFormat format, size_t size, std::uint8_t *buffer) const |
| Saves the point cloud to the memory in the given format. More...
|
|
void * | Handle () const noexcept |
| Returns C-API style handle to Node Object. More...
|
|
A dense Cartesian 3D point cloud object.
A dense point cloud is an ordered set of 3D points, placed on a grid with a given width and height. The advantage of dense clouds is to have immediate neighbor information. The disadvantage is, that you cannot have arbitrary clouds (e.g. an affine transformation breaks the lattice view). Also each x-y-position can have only one corresponding z-height.
A dense point cloud has grid / neighbor information available and has a larger memory than a sparse point cloud (due to NaN values / holes).
Each dense point cloud can be converted to a sparse point cloud.
- See also
- SparsePointCloud
- Examples
- Cvb/CppPointCloudAcquisition, Cvb/CppPointCloudCreateAndHandle, and Cvb/CppPointCloudCreateCalibrated.