ACloudViewer  3.9.4
A Modern Library for 3D Data Processing
LasDetails Namespace Reference

Classes

struct  EvlrHeader
 
struct  LasVersion
 See SelectBestVersion More...
 

Functions

uint16_t PointFormatSize (unsigned pointFormat)
 
uint16_t HeaderSize (unsigned versionMinor)
 Returns the header size for the given minor version of the standard used. More...
 
bool HasGpsTime (unsigned pointFormatId)
 Returns whether the point format supports Gps Time. More...
 
bool HasRGB (unsigned pointFormatId)
 Returns whether the point format supports RGB. More...
 
bool HasWaveform (unsigned pointFormatId)
 Returns whether the point format supports Waveforms. More...
 
bool HasNearInfrared (unsigned pointFormatId)
 Returns whether the point format support Near Infrared. More...
 
unsigned SizeOfVlrs (const laszip_vlr_struct *vlrs, unsigned numVlrs)
 
bool IsLaszipVlr (const laszip_vlr_struct &)
 Returns whether the vlr is the vlr for/of LASzip compression. More...
 
bool IsExtraBytesVlr (const laszip_vlr_struct &)
 Returns whether the vlr describes extra bytes. More...
 
const std::vector< unsigned > * PointFormatsAvailableForVersion (QString version)
 
const std::array< const char *, 3 > & AvailableVersions ()
 
LasVersion SelectBestVersion (const ccPointCloud &cloud)
 
void CloneVlrInto (const laszip_vlr_struct &src, laszip_vlr_struct &dst)
 Clones the content of the src vlr into the dst vlr. More...
 
QDataStream & operator>> (QDataStream &stream, EvlrHeader &hdr)
 
QDataStream & operator<< (QDataStream &stream, const EvlrHeader &hdr)
 

Variables

constexpr unsigned OVERLAP_FLAG_BIT_POS = 3
 
constexpr unsigned OVERLAP_FLAG_BIT_MASK = 1 << OVERLAP_FLAG_BIT_POS
 

Function Documentation

◆ AvailableVersions()

const std::array< const char *, 3 > & LasDetails::AvailableVersions ( )

Definition at line 177 of file LasDetails.cpp.

References VersionsArray.

Referenced by LasSaveDialog::LasSaveDialog().

◆ CloneVlrInto()

void LasDetails::CloneVlrInto ( const laszip_vlr_struct src,
laszip_vlr_struct dst 
)

Clones the content of the src vlr into the dst vlr.

Definition at line 285 of file LasDetails.cpp.

References copy.

Referenced by LasVlr::LasVlr().

◆ HasGpsTime()

bool LasDetails::HasGpsTime ( unsigned  pointFormatId)
inline

Returns whether the point format supports Gps Time.

Definition at line 125 of file LasDetails.h.

Referenced by LasScalarField::ForPointFormat(), and LasOpenDialog::setInfo().

◆ HasNearInfrared()

bool LasDetails::HasNearInfrared ( unsigned  pointFormatId)
inline

Returns whether the point format support Near Infrared.

Definition at line 151 of file LasDetails.h.

Referenced by LasScalarField::ForPointFormat().

◆ HasRGB()

bool LasDetails::HasRGB ( unsigned  pointFormatId)
inline

Returns whether the point format supports RGB.

Definition at line 132 of file LasDetails.h.

Referenced by LasSaveDialog::handleSelectedPointFormatChange(), LasIOFilter::loadFile(), LasSaver::saveNextPoint(), and LasOpenDialog::setInfo().

◆ HasWaveform()

bool LasDetails::HasWaveform ( unsigned  pointFormatId)
inline

Returns whether the point format supports Waveforms.

Definition at line 143 of file LasDetails.h.

Referenced by LasSaveDialog::handleSelectedPointFormatChange(), LasSaver::LasSaver(), and LasIOFilter::loadFile().

◆ HeaderSize()

uint16_t LasDetails::HeaderSize ( unsigned  versionMinor)

Returns the header size for the given minor version of the standard used.

Definition at line 112 of file LasDetails.cpp.

◆ IsExtraBytesVlr()

bool LasDetails::IsExtraBytesVlr ( const laszip_vlr_struct vlr)

Returns whether the vlr describes extra bytes.

Definition at line 136 of file LasDetails.cpp.

Referenced by LasVlr::LasVlr(), and LasExtraScalarField::ParseExtraScalarFields().

◆ IsLaszipVlr()

bool LasDetails::IsLaszipVlr ( const laszip_vlr_struct vlr)

Returns whether the vlr is the vlr for/of LASzip compression.

Definition at line 127 of file LasDetails.cpp.

Referenced by LasVlr::LasVlr().

◆ operator<<()

QDataStream& LasDetails::operator<< ( QDataStream &  stream,
const EvlrHeader hdr 
)

Definition at line 66 of file LasDetails.cpp.

◆ operator>>()

QDataStream& LasDetails::operator>> ( QDataStream &  stream,
EvlrHeader hdr 
)

Definition at line 50 of file LasDetails.cpp.

◆ PointFormatsAvailableForVersion()

const std::vector< unsigned > * LasDetails::PointFormatsAvailableForVersion ( QString  version)

Returns point the formats available for the given version.

If the version does not exists or is not supported a nullptr is returned.

Parameters
versionversion string, must be "major.minor" e.g. "1.2"

Definition at line 155 of file LasDetails.cpp.

References PointFormatForV1_2, PointFormatForV1_3, PointFormatForV1_4, version, and CVLog::Warning().

Referenced by LasSaveDialog::handleSelectedPointFormatChange(), and LasSaveDialog::handleSelectedVersionChange().

◆ PointFormatSize()

uint16_t LasDetails::PointFormatSize ( unsigned  pointFormat)

Returns the size for the given point format id

Returns a size of 0 if the point format does not exists or is not handled

Parameters
pointFormatthe point format
Returns

Definition at line 80 of file LasDetails.cpp.

◆ SelectBestVersion()

◆ SizeOfVlrs()

unsigned LasDetails::SizeOfVlrs ( const laszip_vlr_struct vlrs,
unsigned  numVlrs 
)

Returns the number of bytes the vlrs amounts to. This includes the headers of each vlrs.

Definition at line 145 of file LasDetails.cpp.

References LAS_VLR_HEADER_SIZE, and size.

Referenced by LasSaver::LasSaver().

Variable Documentation

◆ OVERLAP_FLAG_BIT_MASK

constexpr unsigned LasDetails::OVERLAP_FLAG_BIT_MASK = 1 << OVERLAP_FLAG_BIT_POS
constexpr

◆ OVERLAP_FLAG_BIT_POS

constexpr unsigned LasDetails::OVERLAP_FLAG_BIT_POS = 3
constexpr

Definition at line 84 of file LasDetails.h.