#include <Coord.h>
Class for a double-tuple storing a position / two-dimensional vector. Some comparison and basic arithmetic operators on Coord structures are implemented.
Public Member Functions | |
Coord (double _x=0, double _y=0) | |
Coord (const Coord &pos) | |
Coord (const Coord *pos) | |
std::string | info () const |
Coord | operator+= (Coord a) |
Coord | operator= (Coord a) |
Coord | operator-= (Coord a) |
double | distance (const Coord a) const |
double | sqrdist (const Coord a) const |
Public Attributes | |
double | x |
x and y coordinates of the position | |
double | y |
Friends | |
Coord | operator+ (Coord a, Coord b) |
Coord | operator- (Coord a, Coord b) |
Coord | operator* (Coord a, double f) |
Coord | operator/ (Coord a, double f) |
bool | operator== (Coord a, Coord b) |
bool | operator!= (Coord a, Coord b) |
Coord::Coord | ( | double | _x = 0 , |
|
double | _y = 0 | |||
) | [inline] |
Coord::Coord | ( | const Coord & | pos | ) | [inline] |
Coord::Coord | ( | const Coord * | pos | ) | [inline] |
std::string Coord::info | ( | ) | const [inline] |
double Coord::distance | ( | const Coord | a | ) | const [inline] |
Returns the distance to Coord a
Referenced by SnrEval::changeChannel(), AbstractRadio::changeChannel(), TurtleMobility::executeStatement(), SnrEval::handleLowerMsgStart(), GilbertElliotSnr::handleLowerMsgStart(), AbstractRadio::handleLowerMsgStart(), ChannelAccess::sendToChannel(), RandomWPMobility::setTargetPosition(), and ConstSpeedMobility::setTargetPosition().
double Coord::sqrdist | ( | const Coord | a | ) | const [inline] |
Tests whether two coordinate vectors are equal. Because coordinates are of type double, this is done through the FWMath::close function.
00112 { 00113 return FWMath::close(a.x,b.x) && FWMath::close(a.y,b.y); 00114 }
double Coord::x |
x and y coordinates of the position
Referenced by LineSegmentsMobilityBase::beginNextMove(), RectangleMobility::calculateXY(), Coord(), distance(), TurtleMobility::executeStatement(), ANSimMobility::extractDataFrom(), BasicMobility::getRandomPosition(), MassMobility::handleSelfMsg(), MassMobility::initialize(), CircleMobility::initialize(), ChannelControl::initialize(), BonnMotionMobility::initialize(), BasicMobility::initialize(), RectangleMobility::move(), MassMobility::move(), LinearMobility::move(), ConstSpeedMobility::move(), CircleMobility::move(), operator+=(), operator-=(), operator<<(), operator=(), BasicMobility::placeRandomlyIfOutside(), BasicMobility::raiseErrorIfOutside(), BasicMobility::reflectIfOutside(), ConstSpeedMobility::setTargetPosition(), BonnMotionMobility::setTargetPosition(), sqrdist(), ChannelControl::updateDisplayString(), BasicMobility::updatePosition(), and BasicMobility::wrapIfOutside().
double Coord::y |
Referenced by LineSegmentsMobilityBase::beginNextMove(), RectangleMobility::calculateXY(), Coord(), distance(), TurtleMobility::executeStatement(), ANSimMobility::extractDataFrom(), BasicMobility::getRandomPosition(), MassMobility::handleSelfMsg(), MassMobility::initialize(), CircleMobility::initialize(), ChannelControl::initialize(), BonnMotionMobility::initialize(), BasicMobility::initialize(), RectangleMobility::move(), MassMobility::move(), LinearMobility::move(), ConstSpeedMobility::move(), CircleMobility::move(), operator+=(), operator-=(), operator<<(), operator=(), BasicMobility::placeRandomlyIfOutside(), BasicMobility::raiseErrorIfOutside(), BasicMobility::reflectIfOutside(), ConstSpeedMobility::setTargetPosition(), BonnMotionMobility::setTargetPosition(), sqrdist(), ChannelControl::updateDisplayString(), BasicMobility::updatePosition(), and BasicMobility::wrapIfOutside().