38 explicit ccGBLSensor(ROTATION_ORDER rotOrder = YAW_THEN_PITCH);
84 static QString GetErrorString(
int errorCode);
143 m_sensorRange = range;
162 m_rotationOrder = rotOrder;
174 void projectPoint(
const CCVector3& sourcePoint,
177 double posIndex = 0)
const;
192 double posIndex = 0)
const;
228 void clearDepthBuffer();
240 bool toFile_MeOnly(QFile& out,
short dataVersion)
const override;
245 LoadedIDMap& oldToNewIDMap)
override;
float PointCoordinateType
Type of the coordinates of a (N-D) point.
int64_t CV_CLASS_ENUM
Type of object type flags (64 bits)
Ground-based Laser sensor.
PointCoordinateType m_thetaMin
Minimal yaw limit (in radians)
void setRotationOrder(ROTATION_ORDER rotOrder)
Sets the sensor internal rotations order.
PointCoordinateType m_deltaTheta
Yaw step (in radians)
PointCoordinateType m_thetaMax
Maximal yaw limit (in radians)
bool isSerializable() const override
Returns whether object is serializable of not.
bool m_yawAnglesAreShifted
ROTATION_ORDER m_rotationOrder
Mirrors rotation order.
PointCoordinateType getMinPitch() const
Returns the minimal pitch limit (in radians)
ROTATION_ORDER
The order of inner-rotations of the sensor (body/mirrors)
PointCoordinateType m_phiMin
Minimal pitch limit (in radians)
PointCoordinateType m_deltaPhi
Pitch step (in radians)
PointCoordinateType getSensorRange() const
Returns the sensor max. range.
bool m_pitchAnglesAreShifted
PointCoordinateType getMinYaw() const
Returns the minimal yaw limit (in radians)
const ecvOrientedBBox & getSensorHead() const
CV_CLASS_ENUM getClassID() const override
Returns class ID.
std::vector< CCVector3 > NormalGrid
2D grid of normals
const cloudViewer::geometry::LineSet & getSensorLegLines() const
void setUncertainty(PointCoordinateType u)
Sets the Z-buffer uncertainty on depth values.
PointCoordinateType getUncertainty() const
Returns the Z-buffer uncertainty on depth values.
~ccGBLSensor() override=default
Destructor.
cloudViewer::geometry::LineSet m_leg
const cloudViewer::geometry::LineSet & getSensorAxis() const
PointCoordinateType m_phiMax
Maximal pitch limit (in radians)
std::vector< ecvColor::Rgb > ColorGrid
2D grid of colors
bool yawIsShifted() const
const ccDepthBuffer & getDepthBuffer() const
Returns the associated depth buffer.
void setSensorRange(PointCoordinateType range)
Sets the sensor max. range.
PointCoordinateType getPitchStep() const
Returns the lateral pitch step (in radians)
PointCoordinateType getMaxYaw() const
Returns the maximal yaw limit (in radians)
ccDepthBuffer m_depthBuffer
Associated Z-buffer.
bool pitchIsShifted() const
ecvOrientedBBox m_obbHead
PointCoordinateType m_uncertainty
Z-buffer uncertainty.
PointCoordinateType m_sensorRange
Sensor max range.
ROTATION_ORDER getRotationOrder() const
Returns the sensor internal rotations order.
cloudViewer::geometry::LineSet m_axis
PointCoordinateType getMaxPitch() const
Returns the maximal pitch limit (in radians)
PointCoordinateType getYawStep() const
Returns the yaw step (in radians)
Float version of ccGLMatrixTpl.
virtual void drawMeOnly(CC_DRAW_CONTEXT &context)
Draws the entity only (not its children)
virtual ccBBox getOwnFitBB(ccGLMatrix &trans)
Returns best-fit bounding-box (if available)
virtual ccBBox getOwnBB(bool withGLFeatures=false)
Returns the entity's own bounding-box.
A 3D cloud and its associated features (color, normals, scalar fields, etc.)
Generic sensor interface.
short minimumFileVersion_MeOnly() const override
bool fromFile_MeOnly(QFile &in, short dataVersion, int flags, LoadedIDMap &oldToNewIDMap) override
Loads own object data.
virtual void hideShowDrawings(CC_DRAW_CONTEXT &context)
virtual bool applyViewport()
Apply sensor 'viewport' to a 3D view.
virtual unsigned char checkVisibility(const CCVector3 &P) const
Returns the "visibility type" of a point.
bool toFile_MeOnly(QFile &out, short dataVersion) const override
Save own object data.
virtual void clearDrawings()
LineSet define a sets of lines in 3D. A typical application is to display the point cloud corresponde...