kDB: Knowledge DataBase
Loading...
Searching...
No Matches
kDBPointClouds::Patch Class Reference

Classes

struct  Private
 

Public Types

enum class  PGWKBFlag { Default = 0 , IgnorePCID = 1 }
 

Public Member Functions

 Patch (const PointSpecification &_specification, const QByteArray &_data=QByteArray())
 
 Patch (const Patch &_rhs)
 
Patchoperator= (const Patch &_rhs)
 
bool operator== (const Patch &_rhs) const
 
PointSpecification specification () const
 
bool synchroniseSpecification (const kDB::Repository::Connection &_connection)
 
Cartography::CoordinateSystem coordinateSystem () const
 
void reserve (std::size_t _pts)
 
void append (const Point &_point)
 
template<typename... Types>
void append (const std::tuple< Types... > &_values)
 
template<typename... Types>
void append (Types... _values)
 
std::size_t pointsCount () const
 
template<typename... Types>
std::tuple< Types... > get (std::size_t _index) const
 
Point get (std::size_t _index) const
 
QByteArray toPGWKB (PGWKBFlags _flags=PGWKBFlag::Default) const
 
bool isValid () const
 
QByteArray data () const
 
Patch transform (const Cartography::CoordinateSystem &_coordinateSystem, double _tx=0.0, double _ty=0.0, double _tz=0.0) const
 
knowCore::ReturnValue< QByteArray > md5 () const
 
knowValues::Values::PointCloud toValuesPointCloud (const knowGIS::Pose &_pose, const knowGIS::GeometryObject &_geometry, const knowCore::Timestamp &_timestamp)
 
knowValues::Values::Lidar3DScan toValuesLidar3DScan (const knowGIS::Pose &_pose, const knowCore::Timestamp &_timestamp)
 

Static Public Member Functions

static knowCore::ReturnValue< PatchfromPGWKB (const QByteArray &, const PointSpecification &_pointSpecification, PGWKBFlags _flags=PGWKBFlag::Default)
 
static knowCore::ReturnValue< PatchfromPGWKB (const QByteArray &_data, const kDB::Repository::Connection &_connection, PGWKBFlags _flags=PGWKBFlag::Default)
 
static Patch create (const knowValues::Values::PointCloud &_rhs)
 

Member Function Documentation

◆ coordinateSystem()

Cartography::CoordinateSystem kDBPointClouds::Patch::coordinateSystem ( ) const
Returns
the Cartography::CoordinateSystem associated with this point cloud

◆ create()

Patch Patch::create ( const knowValues::Values::PointCloud & _rhs)
static

Create a patch from knowValues::Values::PointCloud.

◆ data()

QByteArray Patch::data ( ) const
Returns
the data representing the point cloud

◆ fromPGWKB()

knowCore::ReturnValue< Patch > Patch::fromPGWKB ( const QByteArray & _data,
const kDB::Repository::Connection & _connection,
PGWKBFlags _flags = PGWKBFlag::Default )
static

Get the specification from the _connection . _data should contains a valid pcid, corresponding to a PointSpecification that is stored in the database.

_flags should not have PGWKBFlag::IgnorePCID set.

◆ isValid()

bool Patch::isValid ( ) const
Returns
true if the patch is valid

◆ reserve()

void Patch::reserve ( std::size_t _pts)

Reserve memory for inserting _pts

◆ specification()

PointSpecification Patch::specification ( ) const
Returns
the PointSpecification defining this point cloud

◆ synchroniseSpecification()

bool Patch::synchroniseSpecification ( const kDB::Repository::Connection & _connection)

Synchronise the PointSpecification with the database. Need to be done prior inserting a patch in the database.

◆ toPGWKB()

QByteArray Patch::toPGWKB ( PGWKBFlags _flags = PGWKBFlag::Default) const

Convert to a (pgPointCloud) WKB representation of a point cloud.

Parameters
_store_pcidindicate weht

◆ toValuesLidar3DScan()

knowValues::Values::Lidar3DScan Patch::toValuesLidar3DScan ( const knowGIS::Pose & _pose,
const knowCore::Timestamp & _timestamp )

Convert this patch to a knowValues::Values::PointCloud.

◆ toValuesPointCloud()

knowValues::Values::PointCloud Patch::toValuesPointCloud ( const knowGIS::Pose & _pose,
const knowGIS::GeometryObject & _geometry,
const knowCore::Timestamp & _timestamp )

Convert this patch to a knowValues::Values::PointCloud.

◆ transform()

Patch Patch::transform ( const Cartography::CoordinateSystem & _coordinateSystem,
double _tx = 0.0,
double _ty = 0.0,
double _tz = 0.0 ) const

Transform the point cloud to a different coordinate system and apply a translation


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