Go to the documentation of this file.
9 #include "../tools/errorhandler.hpp"
26 for (FieldSegmentedPoints::const_iterator p =
m_points.begin(); p !=
m_points.end(); ++p)
28 double endDist = p->getEndDist();
30 if (!::
isNaN(endDist))
35 double startDist = p->getStartDist();
36 double angle = p->getAngle();
38 if (::
isNaN(startDist) ==
false)
44 if (startPoints.empty())
51 for (Polygon2D::const_reverse_iterator r = startPoints.rbegin(); r != startPoints.rend(); ++r)
128 if (length < 0.00001)
131 printError(
"FieldRectangle::setLength: Length must not be 0 or negative - aborting!");
154 if ((rotAngle < -
PI) || (rotAngle >
PI))
157 printWarning(
"FieldRectangle::setRotAngle: rotAngle is outside of the limit [-PI, PI], did you forget deg-2-rad conversion?");
168 printError(
"FieldRectangle::setWidth: Width must not be 0 or negative - aborting!");
181 printError(
"FieldRadial::computePolygon: The MRS does not support radial fields.");
256 FieldVector::const_iterator f;
268 dieWithError(
"Fields::getField(): No field available with the given number.");
285 UINT32 sum =
sizeof(*this);
286 FieldVector::const_iterator iter;
301 FieldVector::iterator iter;
304 if ((*iter)->getFieldNumber() != 0)
static Point2D fromPolar(value_type dist, value_type angle)
double getRefPointDist() const
void setLastAngle(UINT16 m_lastAngle)
double getRefPointAngle() const
UINT32 getMaxDist() const
double m_refPointAngle
[rad]
double getRotAngle() const
double m_maxLength
[m] extension at maximum speed to direction of RotAngle+90° relative to DistScale
UINT16 getFirstAngle() const
void setMaxDist(UINT32 m_maxDist)
UINT16 m_firstAngle
index of start angle relative to AngleScale
void computePolygon()
fills the polygon clockwise
double getSpeedMax() const
UINT32 getMinDist() const
void dieWithError(std::string errorMessage)
UINT32 getNumberOfPoints()
void setRefPointAngle(double refPointAngle)
void printWarning(std::string message)
void setRotAngle(double rotAngle)
void setRefPointDist(double refPointDist)
const UINT32 getUsedMemory() const
void setFirstAngle(UINT16 m_firstAngle)
void printError(std::string message)
void setWidth(double width)
std::vector< FieldSegmentedPoint > FieldSegmentedPoints
void setMaxLength(double maxLength)
void add(FieldParameter *field)
void setSpeedMax(double speedMax)
UINT16 getNumberOfValidFields()
double getMaxLength() const
const FieldParameter & getField(UINT16 fieldNumber) const
FieldSegmentedPoints getPoints()
UINT16 getLastAngle() const
UINT16 m_lastAngle
index of last angle relative to AngleScale
const UINT16 getFieldNumber() const
void setMinDist(UINT32 m_minDist)
FieldSegmentedPoints m_points
void computePolygon()
fills the polygon clockwise
void setLength(double length)
libsick_ldmrs
Author(s): SICK AG
, Martin Günther , Jochen Sprickerhof
autogenerated on Wed Oct 26 2022 02:11:57