28 const std::vector<BASE::array_parameter_t>& in_pts,
29 std::vector<BASE::array_point_t>& out_pts)
const 34 const size_t N = in_pts.size();
36 for (
size_t i = 0; i < N; i++)
38 const double inv_range = in_pts[i][0];
39 const double yaw = in_pts[i][1];
40 const double pitch = in_pts[i][2];
42 const double range = inv_range < 0
44 : (inv_range != 0 ? 1. / inv_range : 0);
58 writeToStreamRender(out);
59 BASE::thisclass_writeToStream(out);
61 out << m_underflowMaxRange;
71 readFromStreamRender(
in);
72 BASE::thisclass_readFromStream(
in);
74 in >> m_underflowMaxRange;
void transformFromParameterSpace(const std::vector< BASE::array_parameter_t > &in_pts, std::vector< BASE::array_point_t > &out_pts) const override
To be implemented by derived classes: maps, using some arbitrary space transformation, a list of points defining an ellipsoid in parameter space into their corresponding points in 2D/3D space.
void notifyChange() const
Must be called to notify that the object has changed (so, the display list must be updated) ...
An especial "ellipsoid" in 3D computed as the uncertainty iso-surfaces of a (inv_range,yaw,pitch) variable.
A renderizable object suitable for rendering with OpenGL's display lists.
#define MRPT_THROW_UNKNOWN_SERIALIZATION_VERSION(__V)
For use in CSerializable implementations.
This base provides a set of functions for maths stuff.
uint8_t serializeGetVersion() const override
Must return the current versioning number of the object.
This is the global namespace for all Mobile Robot Programming Toolkit (MRPT) libraries.
Virtual base class for "archives": classes abstracting I/O streams.
void serializeTo(mrpt::serialization::CArchive &out) const override
Pure virtual method for writing (serializing) to an abstract archive.
void serializeFrom(mrpt::serialization::CArchive &in, uint8_t serial_version) override
Pure virtual method for reading (deserializing) from an abstract archive.
The namespace for 3D scene representation and rendering.
IMPLEMENTS_SERIALIZABLE(CEllipsoidInverseDepth3D, CRenderizableDisplayList, mrpt::opengl) void CEllipsoidInverseDepth3D