ACloudViewer  3.9.4
A Modern Library for 3D Data Processing
ecvGriddedTools.h
Go to the documentation of this file.
1 // ----------------------------------------------------------------------------
2 // - CloudViewer: www.cloudViewer.org -
3 // ----------------------------------------------------------------------------
4 // Copyright (c) 2018-2024 www.cloudViewer.org
5 // SPDX-License-Identifier: MIT
6 // ----------------------------------------------------------------------------
7 
8 #pragma once
9 
10 // Local
11 #include "ecvPointCloud.h"
12 
13 class ccGBLSensor;
14 class ccGLMatrix;
15 
18 public:
20  struct GridParameters {
22  : minPhi(0),
23  maxPhi(0),
24  minTheta(0),
25  maxTheta(0),
26  deltaPhiRad(0),
27  deltaThetaRad(0),
28  maxRange(0) {}
29 
34  };
35 
37 
45  static bool DetectParameters(const ccPointCloud* cloud,
46  const ccPointCloud::Grid::Shared grid,
47  GridParameters& parameters,
48  bool verbose = false,
49  ccGLMatrix* cloudToSensorTrans = 0);
50 
53 
60  ccGLMatrix* cloudToSensorTrans = 0);
61 };
float PointCoordinateType
Type of the coordinates of a (N-D) point.
Definition: CVTypes.h:16
#define CV_DB_LIB_API
Definition: CV_db.h:15
Ground-based Laser sensor.
Definition: ecvGBLSensor.h:26
Float version of ccGLMatrixTpl.
Definition: ecvGLMatrix.h:19
Tools dedicated to gridded clouds.
static bool DetectParameters(const ccPointCloud *cloud, const ccPointCloud::Grid::Shared grid, GridParameters &parameters, bool verbose=false, ccGLMatrix *cloudToSensorTrans=0)
Detects the given grid parameters (angular span, etc.)
static ccGBLSensor * ComputeBestSensor(ccPointCloud *cloud, ccPointCloud::Grid::Shared grid, ccGLMatrix *cloudToSensorTrans=0)
A 3D cloud and its associated features (color, normals, scalar fields, etc.)
Grid (angular) parameters.
PointCoordinateType maxRange
PointCoordinateType maxTheta
PointCoordinateType deltaPhiRad
QSharedPointer< Grid > Shared
Shared type.