libE57Format 3.1.1
C++ library to read & write the E57 file format for point cloud data
|
Stores pointers to user-provided buffers. More...
#include <E57SimpleData.h>
Public Member Functions | |
Data3DPointsData_t ()=default | |
Default constructor does not manage any memory, adjust min/max for floats, or validate data. | |
Data3DPointsData_t (e57::Data3D &data3D) | |
Constructor which allocates buffers for all valid fields in the given Data3D header. | |
~Data3DPointsData_t () | |
Destructor will delete any memory allocated using the Data3DPointsData_t( const
e57::Data3D & ) constructor. | |
Public Attributes | |
int8_t * | cartesianInvalidState = nullptr |
Value = 0 if the point is considered valid, 1 otherwise. | |
COORDTYPE * | cartesianX = nullptr |
Pointer to a buffer with the X coordinate (in meters) of the point in Cartesian coordinates. | |
COORDTYPE * | cartesianY = nullptr |
Pointer to a buffer with the Y coordinate (in meters) of the point in Cartesian coordinates. | |
COORDTYPE * | cartesianZ = nullptr |
Pointer to a buffer with the Z coordinate (in meters) of the point in Cartesian coordinates. | |
uint16_t * | colorBlue = nullptr |
Pointer to a buffer with the Blue color coefficient. Unit is unspecified. | |
uint16_t * | colorGreen = nullptr |
Pointer to a buffer with the Green color coefficient. Unit is unspecified. | |
uint16_t * | colorRed = nullptr |
Pointer to a buffer with the Red color coefficient. Unit is unspecified. | |
int32_t * | columnIndex = nullptr |
Pointer to a buffer with the column number of point (zero based). | |
double * | intensity = nullptr |
Pointer to a buffer with the Point response intensity. Unit is unspecified. | |
int8_t * | isColorInvalid = nullptr |
Value = 0 if the color is considered valid, 1 otherwise. | |
int8_t * | isIntensityInvalid = nullptr |
Value = 0 if the intensity is considered valid, 1 otherwise. | |
int8_t * | isTimeStampInvalid = nullptr |
Value = 0 if the timeStamp is considered valid, 1 otherwise. | |
int8_t * | returnCount = nullptr |
Pointer to a buffer with the total number of returns for the pulse that this corresponds to. | |
int8_t * | returnIndex = nullptr |
Pointer to a buffer with the number of this return (zero based). | |
int32_t * | rowIndex = nullptr |
Pointer to a buffer with the row number of point (zero based). | |
COORDTYPE * | sphericalAzimuth = nullptr |
Pointer to a buffer with the Azimuth angle (in radians) of point in spherical coordinates. | |
COORDTYPE * | sphericalElevation = nullptr |
Pointer to a buffer with the Elevation angle (in radians) of point in spherical coordinates. | |
int8_t * | sphericalInvalidState = nullptr |
Value = 0 if the range is considered valid, 1 otherwise. | |
COORDTYPE * | sphericalRange = nullptr |
Pointer to a buffer with the range (in meters) of points in spherical coordinates. | |
double * | timeStamp = nullptr |
Pointer to a buffer with the time (in seconds) since the start time for the data. | |
Extension: E57_EXT_surface_normals | |
The following fields are part of the E57_EXT_surface_normals extension. | |
float * | normalX = nullptr |
The X component of a surface normal vector. | |
float * | normalY = nullptr |
The Y component of a surface normal vector. | |
float * | normalZ = nullptr |
The Z component of a surface normal vector. | |
Stores pointers to user-provided buffers.
|
default |
Default constructor does not manage any memory, adjust min/max for floats, or validate data.
|
explicit |
Constructor which allocates buffers for all valid fields in the given Data3D header.
This constructor will also adjust the min/max fields in the data3D pointFields if we are using floats, and run some validation on the Data3D.
[in] | data3D | Completed header which indicates the fields we are using |
ErrorValueOutOfBounds | |
ErrorInvalidNodeType |
e57::Data3DPointsData_t< COORDTYPE >::~Data3DPointsData_t |
Destructor will delete any memory allocated using the Data3DPointsData_t( const e57::Data3D & ) constructor.
int8_t* e57::Data3DPointsData_t< COORDTYPE >::cartesianInvalidState = nullptr |
Value = 0 if the point is considered valid, 1 otherwise.
COORDTYPE* e57::Data3DPointsData_t< COORDTYPE >::cartesianX = nullptr |
Pointer to a buffer with the X coordinate (in meters) of the point in Cartesian coordinates.
COORDTYPE* e57::Data3DPointsData_t< COORDTYPE >::cartesianY = nullptr |
Pointer to a buffer with the Y coordinate (in meters) of the point in Cartesian coordinates.
COORDTYPE* e57::Data3DPointsData_t< COORDTYPE >::cartesianZ = nullptr |
Pointer to a buffer with the Z coordinate (in meters) of the point in Cartesian coordinates.
uint16_t* e57::Data3DPointsData_t< COORDTYPE >::colorBlue = nullptr |
Pointer to a buffer with the Blue color coefficient. Unit is unspecified.
uint16_t* e57::Data3DPointsData_t< COORDTYPE >::colorGreen = nullptr |
Pointer to a buffer with the Green color coefficient. Unit is unspecified.
uint16_t* e57::Data3DPointsData_t< COORDTYPE >::colorRed = nullptr |
Pointer to a buffer with the Red color coefficient. Unit is unspecified.
int32_t* e57::Data3DPointsData_t< COORDTYPE >::columnIndex = nullptr |
Pointer to a buffer with the column number of point (zero based).
This is useful for data that is stored in a regular grid. Shall be in the interval (0, 2^31).
double* e57::Data3DPointsData_t< COORDTYPE >::intensity = nullptr |
Pointer to a buffer with the Point response intensity. Unit is unspecified.
int8_t* e57::Data3DPointsData_t< COORDTYPE >::isColorInvalid = nullptr |
Value = 0 if the color is considered valid, 1 otherwise.
int8_t* e57::Data3DPointsData_t< COORDTYPE >::isIntensityInvalid = nullptr |
Value = 0 if the intensity is considered valid, 1 otherwise.
int8_t* e57::Data3DPointsData_t< COORDTYPE >::isTimeStampInvalid = nullptr |
Value = 0 if the timeStamp is considered valid, 1 otherwise.
float* e57::Data3DPointsData_t< COORDTYPE >::normalX = nullptr |
The X component of a surface normal vector.
float* e57::Data3DPointsData_t< COORDTYPE >::normalY = nullptr |
The Y component of a surface normal vector.
float* e57::Data3DPointsData_t< COORDTYPE >::normalZ = nullptr |
The Z component of a surface normal vector.
int8_t* e57::Data3DPointsData_t< COORDTYPE >::returnCount = nullptr |
Pointer to a buffer with the total number of returns for the pulse that this corresponds to.
Shall be in the interval (0, 2^7). Only for multi-return sensors.
int8_t* e57::Data3DPointsData_t< COORDTYPE >::returnIndex = nullptr |
Pointer to a buffer with the number of this return (zero based).
That is, 0 is the first return, 1 is the second, and so on. Shall be in the interval (0, returnCount). Only for multi-return sensors.
int32_t* e57::Data3DPointsData_t< COORDTYPE >::rowIndex = nullptr |
Pointer to a buffer with the row number of point (zero based).
This is useful for data that is stored in a regular grid. Shall be in the interval (0, 2^31).
COORDTYPE* e57::Data3DPointsData_t< COORDTYPE >::sphericalAzimuth = nullptr |
Pointer to a buffer with the Azimuth angle (in radians) of point in spherical coordinates.
COORDTYPE* e57::Data3DPointsData_t< COORDTYPE >::sphericalElevation = nullptr |
Pointer to a buffer with the Elevation angle (in radians) of point in spherical coordinates.
int8_t* e57::Data3DPointsData_t< COORDTYPE >::sphericalInvalidState = nullptr |
Value = 0 if the range is considered valid, 1 otherwise.
COORDTYPE* e57::Data3DPointsData_t< COORDTYPE >::sphericalRange = nullptr |
Pointer to a buffer with the range (in meters) of points in spherical coordinates.
double* e57::Data3DPointsData_t< COORDTYPE >::timeStamp = nullptr |
Pointer to a buffer with the time (in seconds) since the start time for the data.
This is given by acquisitionStart in the parent Data3D Structure.