PointReader Class Reference

PointReader is the base class for reading LiDAR file formats. More...

#include <PointReader.h>

Inheritance diagram for PointReader:
PointSource Object MG4PointReader TXTPointReader

List of all members.

Public Member Functions

const PointInfogetPointInfo (void) const
 Get the point information.
count_type getNumPoints (void) const
 Get the number of points.
const char * getWKT (void) const
 Get the spatial reference system.
virtual const char * getFileFormatString (void) const =0
 Get the file type and version.
const BoundsgetBounds (void) const
 Get the bounding box.
const double * getScale (void) const
 Get the quantization scale.
const double * getOffset (void) const
 Get the quantization offset.
char const *const * getClassIdNames (void) const
 Get the classification names.
size_t getNumClassIdNames (void) const
 Get the number of classification names.
double getTotalWork (const Bounds &bounds, double fraction) const
 Get the amount of work needed to decode bounds.

Protected Member Functions

 PointReader (void)
virtual ~PointReader (void)
void setPointInfo (const PointInfo &pointInfo)
 Set the point information.
void setNumPoints (count_type numPoints)
 Set the number of points in the point cloud.
void setBounds (const Bounds &bounds)
 Set the bounding box of the point cloud.
void setWKT (const char *wkt)
 Set the spatial reference system.
void setQuantization (const double scale[3], const double offset[3])
 Set the quantization scale and offset.

Detailed Description

The PointReader class is the base class for reading LiDAR file formats. It add one method to the PointSource interface, getFileFormatString().

Definition at line 27 of file PointReader.h.


Constructor & Destructor Documentation

PointReader::PointReader ( void   )  [protected]
virtual PointReader::~PointReader ( void   )  [protected, virtual]

Member Function Documentation

const Bounds& PointReader::getBounds ( void   )  const [virtual]

This method returns the geo bounding box of the point cloud.

Implements PointSource.

char const* const* PointReader::getClassIdNames ( void   )  const [virtual]

This methods returns an array of classification names with length getNumClassIdNames().

Implements PointSource.

Reimplemented in MG4PointReader.

virtual const char* PointReader::getFileFormatString ( void   )  const [pure virtual]

This method returns a string the contains the File Type and version of the PointReader. For example for a MrSID file this will will return "MG4 4.0.0.1".

Implemented in MG4PointReader, and TXTPointReader.

size_t PointReader::getNumClassIdNames ( void   )  const [virtual]

This methods returns the number of classification names.

Implements PointSource.

Reimplemented in MG4PointReader.

count_type PointReader::getNumPoints ( void   )  const [virtual]

This method returns the number of points in the point cloud.

Implements PointSource.

const double* PointReader::getOffset ( void   )  const [virtual]

This method returns the quantization offset for X, Y, and Z channels. It returns NULL then the point cloud is not quantized or quantization is unknown.

Implements PointSource.

const PointInfo& PointReader::getPointInfo ( void   )  const [virtual]

This method returns a PointInfo object.

Implements PointSource.

const double* PointReader::getScale ( void   )  const [virtual]

This method returns the quantization scale factors for X, Y, and Z channels. It returns NULL then the point cloud is not quantized or quantization is unknown.

Implements PointSource.

double PointReader::getTotalWork ( const Bounds bounds,
double  fraction 
) const [virtual]

This method returns the amount of work needed to decode the points in bounds. getTotalWork() is used with ProgressDelegate to track the progress of a decode or encode.

Parameters:
bounds the region of interest
fraction the fraction of the points you want (use 1.0 for all the points and use 0.1 to keep every tenth point)
Returns:
the work needed to decode bounds

Implements PointSource.

Reimplemented in MG4PointReader, and TXTPointReader.

const char* PointReader::getWKT ( void   )  const [virtual]

This method returns the spatial reference system as a Well Known Text (WKT) string. If the PointSource does not have a spatial reference system it will return NULL.

Implements PointSource.

void PointReader::setBounds ( const Bounds bounds  )  [protected]

This method sets the bounding box of the point cloud. All subclasses must call this function in thier init() function.

Parameters:
bounds the bounding box of the point cloud.
See also:
getBounds()
void PointReader::setNumPoints ( count_type  numPoints  )  [protected]

This method sets the number of points in the point cloud. All subclasses must call this function in thier init() function.

Parameters:
numPoints the number of points in the point cloud
See also:
getNumPoints()
void PointReader::setPointInfo ( const PointInfo pointInfo  )  [protected]

This method sets the channel information. All subclasses must call this function in thier init() function.

Parameters:
pointInfo the channel information
See also:
getPointInfo()
void PointReader::setQuantization ( const double  scale[3],
const double  offset[3] 
) [protected]

This method sets the quantization scale and offset for the point cloud. If the data is not quantized do not call this function or call it with scale = NULL and offset = NULL.

Parameters:
scale the quantization scale for the X, Y, and Z channels
offset the offset for the X, Y, and Z channels
See also:
getScale()
getOffset()
void PointReader::setWKT ( const char *  wkt  )  [protected]

This method uses a Well Known Test (WKT) string to set the spatial reference system.

Parameters:
wkt the WKT representation of the spatial reference system
See also:
getWKT()

The documentation for this class was generated from the following file:

LizardTech