|
Point Cloud Library (PCL)
1.15.1-dev
|
Ascii Point Cloud Reader. More...
#include <pcl/io/ascii_io.h>
Inheritance diagram for pcl::ASCIIReader:
Collaboration diagram for pcl::ASCIIReader:Public Member Functions | |
| ASCIIReader () | |
| ~ASCIIReader () override | |
| int | readHeader (const std::string &file_name, pcl::PCLPointCloud2 &cloud, Eigen::Vector4f &origin, Eigen::Quaternionf &orientation, int &file_version, int &data_type, unsigned int &data_idx, const int offset=0) override |
| Read a point cloud data header from a FILE file. More... | |
| int | read (const std::string &file_name, pcl::PCLPointCloud2 &cloud, Eigen::Vector4f &origin, Eigen::Quaternionf &orientation, int &file_version, const int offset=0) override |
| Read a point cloud data from a FILE file and store it into a pcl/PCLPointCloud2. More... | |
| template<typename PointT > | |
| void | setInputFields () |
| Set the ascii file point fields. More... | |
| void | setInputFields (const std::vector< pcl::PCLPointField > &fields) |
| Set the ascii file point fields using a list of fields. More... | |
| void | setSepChars (const std::string &chars) |
| Set the Separating characters for the ascii point fields 2. More... | |
| void | setExtension (const std::string &ext) |
| Set the extension of the ascii point file type. More... | |
| virtual int | read (const std::string &file_name, pcl::PCLPointCloud2 &cloud, Eigen::Vector4f &origin, Eigen::Quaternionf &orientation, int &file_version, const int offset=0)=0 |
| Read a point cloud data from a FILE file and store it into a pcl/PCLPointCloud2. More... | |
| int | read (const std::string &file_name, pcl::PCLPointCloud2 &cloud, const int offset=0) |
| Read a point cloud data from a FILE file (FILE_V6 only!) and store it into a pcl/PCLPointCloud2. More... | |
| template<typename PointT > | |
| int | read (const std::string &file_name, pcl::PointCloud< PointT > &cloud, const int offset=0) |
| Read a point cloud data from any FILE file, and convert it to the given template format. More... | |
Public Member Functions inherited from pcl::FileReader | |
| FileReader ()=default | |
| empty constructor More... | |
| virtual | ~FileReader ()=default |
| empty destructor More... | |
| int | read (const std::string &file_name, pcl::PCLPointCloud2 &cloud, const int offset=0) |
| Read a point cloud data from a FILE file (FILE_V6 only!) and store it into a pcl/PCLPointCloud2. More... | |
| template<typename PointT > | |
| int | read (const std::string &file_name, pcl::PointCloud< PointT > &cloud, const int offset=0) |
| Read a point cloud data from any FILE file, and convert it to the given template format. More... | |
Protected Member Functions | |
| int | parse (const std::string &token, const pcl::PCLPointField &field, std::uint8_t *data_target) |
| Parses token based on field type. More... | |
| std::uint32_t | typeSize (int type) |
| Returns the size in bytes of a point field type. More... | |
Protected Attributes | |
| std::string | sep_chars_ {", \n\r\t"} |
| std::string | extension_ {".txt"} |
| std::vector< pcl::PCLPointField > | fields_ |
| std::string | name_ {"AsciiReader"} |
Ascii Point Cloud Reader.
Read any ASCII file by setting the separating characters and input point fields.
Definition at line 55 of file ascii_io.h.
| pcl::ASCIIReader::ASCIIReader | ( | ) |
|
override |
|
protected |
Parses token based on field type.
| [in] | token | string representation of point fields |
| [in] | field | token point field type |
| [out] | data_target | address that the point field data should be assigned to returns the size of the parsed point field in bytes |
|
inline |
Read a point cloud data from a FILE file (FILE_V6 only!) and store it into a pcl/PCLPointCloud2.
FILE_V6 will generate a warning.
| [in] | file_name | the name of the file containing the actual PointCloud data |
| [out] | cloud | the resultant PointCloud message read from disk |
| [in] | offset | the offset in the file where to expect the true header to begin. One usage example for setting the offset parameter is for reading data from a TAR "archive containing multiple files: TAR files always add a 512 byte header in front of the actual file, so set the offset to the next byte after the header (e.g., 513). |
|
overridevirtual |
Read a point cloud data from a FILE file and store it into a pcl/PCLPointCloud2.
| [in] | file_name | the name of the file containing the actual PointCloud data |
| [out] | cloud | the resultant PointCloud message read from disk |
| [out] | origin | the sensor acquisition origin (only for > FILE_V7 - null if not present) |
| [out] | orientation | the sensor acquisition orientation (only for > FILE_V7 - identity if not present) |
| [out] | file_version | the FILE version of the file (either FILE_V6 or FILE_V7) |
| [in] | offset | the offset in the file where to expect the true header to begin. One usage example for setting the offset parameter is for reading data from a TAR "archive containing multiple files: TAR files always add a 512 byte header in front of the actual file, so set the offset to the next byte after the header (e.g., 513). |
Implements pcl::FileReader.
| virtual int pcl::FileReader::read |
Read a point cloud data from a FILE file and store it into a pcl/PCLPointCloud2.
| [in] | file_name | the name of the file containing the actual PointCloud data |
| [out] | cloud | the resultant PointCloud message read from disk |
| [out] | origin | the sensor acquisition origin (only for > FILE_V7 - null if not present) |
| [out] | orientation | the sensor acquisition orientation (only for > FILE_V7 - identity if not present) |
| [out] | file_version | the FILE version of the file (either FILE_V6 or FILE_V7) |
| [in] | offset | the offset in the file where to expect the true header to begin. One usage example for setting the offset parameter is for reading data from a TAR "archive containing multiple files: TAR files always add a 512 byte header in front of the actual file, so set the offset to the next byte after the header (e.g., 513). |
|
inline |
Read a point cloud data from any FILE file, and convert it to the given template format.
| [in] | file_name | the name of the file containing the actual PointCloud data |
| [out] | cloud | the resultant PointCloud message read from disk |
| [in] | offset | the offset in the file where to expect the true header to begin. One usage example for setting the offset parameter is for reading data from a TAR "archive containing multiple files: TAR files always add a 512 byte header in front of the actual file, so set the offset to the next byte after the header (e.g., 513). |
|
overridevirtual |
Read a point cloud data header from a FILE file.
Load only the meta information (number of points, their types, etc), and not the points themselves, from a given FILE file. Useful for fast evaluation of the underlying data structure.
Returns:
| [in] | file_name | the name of the file to load |
| [out] | cloud | the resultant point cloud dataset (only the header will be filled) |
| [out] | origin | the sensor acquisition origin (only for > FILE_V7 - null if not present) |
| [out] | orientation | the sensor acquisition orientation (only for > FILE_V7 - identity if not present) |
| [out] | file_version | the FILE version of the file (either FILE_V6 or FILE_V7) |
| [out] | data_type | the type of data (binary data=1, ascii=0, etc) |
| [out] | data_idx | the offset of cloud data within the file |
| [in] | offset | the offset in the file where to expect the true header to begin. One usage example for setting the offset parameter is for reading data from a TAR "archive containing multiple files: TAR files always add a 512 byte header in front of the actual file, so set the offset to the next byte after the header (e.g., 513). |
Implements pcl::FileReader.
|
inline |
Set the extension of the ascii point file type.
| [in] | ext | extension (example : ".txt" or ".xyz" ) |
Definition at line 128 of file ascii_io.h.
| void pcl::ASCIIReader::setInputFields |
Set the ascii file point fields.
Definition at line 47 of file ascii_io.hpp.
References fields_, and typeSize().
| void pcl::ASCIIReader::setInputFields | ( | const std::vector< pcl::PCLPointField > & | fields | ) |
Set the ascii file point fields using a list of fields.
| [in] | fields | is a list of point fields, in order, in the input ascii file |
| void pcl::ASCIIReader::setSepChars | ( | const std::string & | chars | ) |
Set the Separating characters for the ascii point fields 2.
| [in] | chars | string of separating characters Sets the separating characters for the point fields. The default separating characters are " \n\t," |
|
protected |
Returns the size in bytes of a point field type.
| [in] | type | point field type returns the size of the type in bytes |
Referenced by setInputFields().
|
protected |
Definition at line 132 of file ascii_io.h.
|
protected |
Definition at line 133 of file ascii_io.h.
Referenced by setInputFields().
|
protected |
Definition at line 134 of file ascii_io.h.
|
protected |
Definition at line 131 of file ascii_io.h.