Conscience Core
Public Member Functions | Public Attributes | List of all members
conscience_core::lidar::LidarValuesSnapshot Class Reference

#include <CscLidarEngine.h>

Public Member Functions

std::vector< CscPoint3dgetPointCloudWorldCoordinates (const CscPoint3d &entityPosition, const CscQuaternion &robotOrientation) const
 
 LidarValuesSnapshot ()=default
 
 LidarValuesSnapshot (CscPointCloud3d pointCloud, unsigned long long timestamp, std::optional< OdometryData > odometry)
 
void getSliceAtY (std::vector< CscPoint3d > &out, double targetY, double tolerance) const
 
void getSliceAtY (std::map< double, double > &out, double targetY, double tolerance) const
 
bool is3d () const
 

Public Attributes

CscPointCloud3d pointCloud
 
unsigned long long timestamp = 0
 
optional< OdometryDataodometry = {}
 

Constructor & Destructor Documentation

◆ LidarValuesSnapshot() [1/2]

conscience_core::lidar::LidarValuesSnapshot::LidarValuesSnapshot ( )
default

◆ LidarValuesSnapshot() [2/2]

conscience_core::lidar::LidarValuesSnapshot::LidarValuesSnapshot ( CscPointCloud3d  pointCloud,
unsigned long long  timestamp,
std::optional< OdometryData odometry 
)

Member Function Documentation

◆ getPointCloudWorldCoordinates()

vector< CscPoint3d > conscience_core::lidar::LidarValuesSnapshot::getPointCloudWorldCoordinates ( const CscPoint3d entityPosition,
const CscQuaternion robotOrientation 
) const
Returns
point cloud computed for world coordinates based on given robot position/orientation

◆ getSliceAtY() [1/2]

void conscience_core::lidar::LidarValuesSnapshot::getSliceAtY ( std::map< double, double > &  out,
double  targetY,
double  tolerance 
) const

◆ getSliceAtY() [2/2]

void conscience_core::lidar::LidarValuesSnapshot::getSliceAtY ( std::vector< CscPoint3d > &  out,
double  targetY,
double  tolerance 
) const

◆ is3d()

bool conscience_core::lidar::LidarValuesSnapshot::is3d ( ) const
Returns
true if values are 3D or false if 2D. For now implementation is just a hacky verification that minY/maxY is very close

Member Data Documentation

◆ odometry

optional<OdometryData> conscience_core::lidar::LidarValuesSnapshot::odometry = {}

Odometry delta with last frame

◆ pointCloud

CscPointCloud3d conscience_core::lidar::LidarValuesSnapshot::pointCloud

◆ timestamp

unsigned long long conscience_core::lidar::LidarValuesSnapshot::timestamp = 0

Last frame timestamp


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