The PointCloud class. More...
#include <yarp/sig/PointCloud.h>
Public Member Functions | |
PointCloud () | |
PointCloud, default constructor. | |
template<class T1 > | |
PointCloud (const PointCloud< T1 > &alt) | |
PointCloud, copy constructor. | |
virtual void | resize (size_t width, size_t height) |
Resize the PointCloud. | |
virtual void | resize (size_t width) |
Resize the PointCloud. | |
const char * | getRawData () const override |
Get the pointer to the data. | |
size_t | wireSizeBytes () const override |
Get the size of the data + the header in terms of number of bytes. | |
size_t | dataSizeBytes () const override |
Get the size of the data in terms of number of bytes. | |
size_t | size () const override |
T & | operator() (size_t u, size_t v) |
Obtain the point given by the (column, row) coordinates. | |
const T & | operator() (size_t u, size_t v) const |
Obtain the point given by the (column, row) coordinates (const version). | |
T & | operator() (size_t i) |
Obtain the point given by the index. | |
const T & | operator() (size_t i) const |
Obtain the point given by the index (const version). | |
template<class T1 > | |
const PointCloud< T > & | operator= (const PointCloud< T1 > &alt) |
Assignment operator. | |
PointCloud< T > & | operator+= (const PointCloud< T > &rhs) |
Concatenate a point cloud to the current cloud. | |
const PointCloud< T > | operator+ (const PointCloud< T > &rhs) |
Concatenate a point cloud to another cloud. | |
void | push_back (const T &pt) |
Insert a new point in the cloud, at the end of the container. | |
virtual void | clear () |
Clear the data. | |
virtual void | fromExternalPC (const char *source, int type, size_t width, size_t height, bool isDense=true) |
Copy the content of an external PointCloud. | |
template<class T1 > | |
void | copy (const PointCloud< T1 > &alt) |
Copy operator. | |
bool | read (yarp::os::ConnectionReader &connection) override |
Read this object from a network connection. | |
bool | write (yarp::os::ConnectionWriter &writer) const override |
Write this object to a network connection. | |
virtual std::string | toString (int precision=-1, int width=-1) const |
yarp::os::Bottle | toBottle () const |
Generate a yarp::os::Bottle filled with the PointCloud data. | |
bool | fromBottle (const yarp::os::Bottle &bt) |
Populate the PointCloud from a yarp::os::Bottle. | |
int | getBottleTag () const override |
bool | sortDataZ () |
Rearranges the pointcloud data so that the points are ordered from the nearest to the farthest. | |
bool | filterDataZ (double minZ=0, double maxZ=std::numeric_limits< double >::infinity()) |
Filter out points which are not included in the specified range. | |
![]() | |
virtual | ~PointCloudBase ()=default |
virtual size_t | height () const |
virtual size_t | width () const |
virtual int | getPointType () const |
yarp::os::Type | getType () const override |
virtual bool | isOrganized () const |
virtual bool | isDense () const |
![]() | |
virtual | ~PortReader () |
Destructor. | |
virtual Type | getReadType () const |
![]() | |
virtual | ~PortWriter () |
Destructor. | |
virtual void | onCompletion () const |
This is called when the port has finished all writing operations. | |
virtual void | onCommencement () const |
This is called when the port is about to begin writing operations. | |
virtual yarp::os::Type | getWriteType () const |
Additional Inherited Members | |
![]() | |
static bool | copyPortable (const PortWriter &writer, PortReader &reader) |
Copy one portable to another, via writing and reading. | |
![]() | |
PointCloudBase ()=default | |
virtual void | copyFromRawData (const char *dst, const char *source, std::vector< int > &recipe) |
virtual std::vector< int > | getComposition (int type_composite) const |
virtual size_t | pointType2Size (int type) const |
virtual size_t | getOffset (int type_composite, int type_basic) const |
![]() | |
yarp::sig::PointCloudNetworkHeader | header |
The PointCloud class.
Definition at line 20 of file PointCloud.h.
|
inline |
PointCloud, default constructor.
Definition at line 40 of file PointCloud.h.
|
inline |
PointCloud, copy constructor.
Clones the content of another point cloud.
alt | the point cloud to clone. |
Definition at line 52 of file PointCloud.h.
|
virtual |
Clear the data.
Definition at line 41 of file PointCloud.cpp.
|
inline |
Copy operator.
clones the content of another point cloud
alt | the point cloud to clone |
Definition at line 198 of file PointCloud.h.
|
inlineoverridevirtual |
Get the size of the data in terms of number of bytes.
Implements yarp::sig::PointCloudBase.
Definition at line 94 of file PointCloud.h.
bool yarp::sig::PointCloud< T >::filterDataZ | ( | double | minZ = 0 , |
double | maxZ = std::numeric_limits<double>::infinity() |
||
) |
Filter out points which are not included in the specified range.
[minZ] | minimum distance. Points with z smaller than minZ are removed. |
[minZ] | maximum distance. Points with z bugger than maxZ are removed. |
Definition at line 199 of file PointCloud.cpp.
bool yarp::sig::PointCloud< T >::fromBottle | ( | const yarp::os::Bottle & | bt | ) |
Populate the PointCloud from a yarp::os::Bottle.
[in] | bt,the | yarp::os::Bottle to read from. It has to be formatted in the same way it is generated by the toBottle() method. |
Definition at line 157 of file PointCloud.cpp.
|
virtual |
Copy the content of an external PointCloud.
source,pointer | to the source data. |
type,enum | representing the type of the source cloud. |
width,width | of the source cloud. |
height,height | of the source cloud. |
isDense |
Definition at line 49 of file PointCloud.cpp.
|
overridevirtual |
Implements yarp::sig::PointCloudBase.
Definition at line 266 of file PointCloud.cpp.
|
inlineoverridevirtual |
Get the pointer to the data.
Implements yarp::sig::PointCloudBase.
Definition at line 74 of file PointCloud.h.
|
inline |
Obtain the point given by the index.
i,index |
Definition at line 130 of file PointCloud.h.
|
inline |
Obtain the point given by the index (const version).
i,index |
Definition at line 139 of file PointCloud.h.
|
inline |
Obtain the point given by the (column, row) coordinates.
Only works on organized clouds (those that have height != 1).
u,column | coordinate |
v,row | coordinate |
Definition at line 110 of file PointCloud.h.
|
inline |
Obtain the point given by the (column, row) coordinates (const version).
Only works on organized clouds (those that have height != 1).
u,column | coordinate |
v,row | coordinate |
Definition at line 121 of file PointCloud.h.
const PointCloud< T > yarp::sig::PointCloud< T >::operator+ | ( | const PointCloud< T > & | rhs | ) |
Concatenate a point cloud to another cloud.
rhs | the cloud to add to the current cloud |
Definition at line 293 of file PointCloud.cpp.
PointCloud< T > & yarp::sig::PointCloud< T >::operator+= | ( | const PointCloud< T > & | rhs | ) |
Concatenate a point cloud to the current cloud.
rhs | the cloud to add to the current cloud |
Definition at line 272 of file PointCloud.cpp.
|
inline |
Assignment operator.
Clones the content of another image.
alt | the image to clone |
Definition at line 150 of file PointCloud.h.
void yarp::sig::PointCloud< T >::push_back | ( | const T & | pt | ) |
Insert a new point in the cloud, at the end of the container.
[in] | pt | the point to insert. |
Definition at line 299 of file PointCloud.cpp.
|
overridevirtual |
Read this object from a network connection.
Override this for your particular class.
reader | an interface to the network connection for reading |
Implements yarp::sig::PointCloudBase.
Definition at line 63 of file PointCloud.cpp.
|
virtual |
Resize the PointCloud.
width. |
Definition at line 33 of file PointCloud.cpp.
|
virtual |
|
inlineoverridevirtual |
Implements yarp::sig::PointCloudBase.
Definition at line 99 of file PointCloud.h.
bool yarp::sig::PointCloud< T >::sortDataZ | ( | ) |
Rearranges the pointcloud data so that the points are ordered from the nearest to the farthest.
Definition at line 182 of file PointCloud.cpp.
yarp::os::Bottle yarp::sig::PointCloud< T >::toBottle | ( | ) | const |
Generate a yarp::os::Bottle filled with the PointCloud data.
Definition at line 142 of file PointCloud.cpp.
|
virtual |
Definition at line 119 of file PointCloud.cpp.
|
inlineoverridevirtual |
Get the size of the data + the header in terms of number of bytes.
Implements yarp::sig::PointCloudBase.
Definition at line 84 of file PointCloud.h.
|
overridevirtual |
Write this object to a network connection.
Override this for your particular class. Be aware that depending on the nature of the connections a port has, and what protocol they use, and how efficient the YARP implementation is, this method may be called once, twice, or many times, as the result of a single call to Port::write
writer | an interface to the network connection for writing |
Implements yarp::sig::PointCloudBase.
Definition at line 112 of file PointCloud.cpp.