Jpp 19.3.0-rc.3
the software that should make you happy
Loading...
Searching...
No Matches
JDETECTOR::JAnchor Class Reference

Data structure for anchor position on sea bed. More...

#include <JAnchor.hh>

Inheritance diagram for JDETECTOR::JAnchor:
JLANG::JObjectID JGEOMETRY2D::JPosition2D JLANG::JComparable< JObjectID > JLANG::JComparable< JObjectID, int > JGEOMETRY2D::JVector2D JMATH::JMath< JFirst_t, JSecond_t >

Public Member Functions

 JAnchor ()
 Default constructor.
 
 JAnchor (const int id, const double x, const double y)
 Constructor.
 
int getID () const
 Get identifier.
 
int & getID ()
 Get identifier.
 
void setID (const int id)
 Set identifier.
 
bool less (const JObjectID &object) const
 Less than method.
 
bool less (const int id) const
 Less than method.
 
bool more (const int id) const
 More than method.
 
const JPosition2DgetPosition () const
 Get position.
 
JPosition2DgetPosition ()
 Get position.
 
void setPosition (const JVector2D &pos)
 Set position.
 
 operator JAngle2D () const
 Type conversion operator.
 
 operator JVersor2D () const
 Type conversion operator.
 
JPosition2Drotate (const JRotation2D &R)
 Rotate.
 
JPosition2Drotate_back (const JRotation2D &R)
 Rotate back.
 
double getDot (const JAngle2D &angle) const
 Get dot product.
 
double getDot (const JVersor2D &versor) const
 Get dot product.
 
double getDot (const JVector2D &point) const
 Get dot product.
 
double getPerpDot (const JAngle2D &angle) const
 Get perpendicular dot product.
 
double getPerpDot (const JVersor2D &dir) const
 Get perpendicular dot product.
 
double getPerpDot (const JVector2D &point) const
 Get perpendicular dot product.
 
JVector2Dtransform (const JMatrix2D &T)
 Transform.
 
double getX () const
 Get x position.
 
double getY () const
 Get y position.
 
JVector2Dnegate ()
 Negate vector.
 
JVector2Dadd (const JVector2D &vector)
 Add vector.
 
JVector2Dsub (const JVector2D &vector)
 Subtract vector.
 
JVector2Dmul (const double factor)
 Scale vector.
 
JFirst_t & mul (const JSecond_t &object)
 Multiply with object.
 
JVector2Ddiv (const double factor)
 Scale vector.
 
bool equals (const JVector2D &vector, const double precision=std::numeric_limits< double >::min()) const
 Check equality.
 
double getLengthSquared () const
 Get length squared.
 
double getLength () const
 Get length.
 
double getDistanceSquared (const JVector2D &point) const
 Get squared of distance to point.
 
double getDistance (const JVector2D &point) const
 Get distance to point.
 

Protected Attributes

int __id
 
double __x
 
double __y
 

Friends

std::istream & operator>> (std::istream &in, JAnchor &anchor)
 Read JAnchor from input.
 
std::ostream & operator<< (std::ostream &out, const JAnchor &anchor)
 Write JAnchor to output.
 

Detailed Description

Data structure for anchor position on sea bed.

Definition at line 24 of file JAnchor.hh.

Constructor & Destructor Documentation

◆ JAnchor() [1/2]

JDETECTOR::JAnchor::JAnchor ( )
inline

Default constructor.

Definition at line 32 of file JAnchor.hh.

32 :
33 JObjectID(),
35 {}
JPosition2D()
Default constructor.
JObjectID()
Default constructor.
Definition JObjectID.hh:30

◆ JAnchor() [2/2]

JDETECTOR::JAnchor::JAnchor ( const int id,
const double x,
const double y )
inline

Constructor.

Parameters
ididentifier
xx position
yy position

Definition at line 45 of file JAnchor.hh.

47 :
48 JObjectID(id),
49 JPosition2D(x, y)
50 {}

Member Function Documentation

◆ getID() [1/2]

int JLANG::JObjectID::getID ( ) const
inlineinherited

Get identifier.

Returns
identifier

Definition at line 50 of file JObjectID.hh.

51 {
52 return __id;
53 }

◆ getID() [2/2]

int & JLANG::JObjectID::getID ( )
inlineinherited

Get identifier.

Returns
identifier

Definition at line 61 of file JObjectID.hh.

62 {
63 return __id;
64 }

◆ setID()

void JLANG::JObjectID::setID ( const int id)
inlineinherited

Set identifier.

Parameters
ididentifier

Definition at line 72 of file JObjectID.hh.

73 {
74 this->__id = id;
75 }

◆ less() [1/2]

bool JLANG::JObjectID::less ( const JObjectID & object) const
inlineinherited

Less than method.

Parameters
objectobject identifier
Returns
true if this identifier less than given identifier; else false

Definition at line 84 of file JObjectID.hh.

85 {
86 return this->getID() < object.getID();
87 }
int getID() const
Get identifier.
Definition JObjectID.hh:50

◆ less() [2/2]

bool JLANG::JObjectID::less ( const int id) const
inlineinherited

Less than method.

Parameters
ididentifier
Returns
true if this identifier less than given identifier; else false

Definition at line 96 of file JObjectID.hh.

97 {
98 return this->getID() < id;
99 }

◆ more()

bool JLANG::JObjectID::more ( const int id) const
inlineinherited

More than method.

Parameters
ididentifier
Returns
true if this identifier greater than given identifier; else false

Definition at line 108 of file JObjectID.hh.

109 {
110 return this->getID() > id;
111 }

◆ getPosition() [1/2]

const JPosition2D & JGEOMETRY2D::JPosition2D::getPosition ( ) const
inlineinherited

Get position.

Returns
position

Definition at line 98 of file JPosition2D.hh.

99 {
100 return static_cast<const JPosition2D&>(*this);
101 }

◆ getPosition() [2/2]

JPosition2D & JGEOMETRY2D::JPosition2D::getPosition ( )
inlineinherited

Get position.

Returns
position

Definition at line 109 of file JPosition2D.hh.

110 {
111 return static_cast<JPosition2D&>(*this);
112 }

◆ setPosition()

void JGEOMETRY2D::JPosition2D::setPosition ( const JVector2D & pos)
inlineinherited

Set position.

Parameters
posposition

Definition at line 120 of file JPosition2D.hh.

121 {
122 static_cast<JVector2D&>(*this) = pos;
123 }
JVector2D()
Default constructor.
Definition JVector2D.hh:39

◆ operator JAngle2D()

JGEOMETRY2D::JPosition2D::operator JAngle2D ( ) const
inlineinherited

Type conversion operator.

Returns
angle

Definition at line 131 of file JPosition2D.hh.

132 {
133 return JAngle2D(getX(), getY());
134 }
double getY() const
Get y position.
Definition JVector2D.hh:74
double getX() const
Get x position.
Definition JVector2D.hh:63

◆ operator JVersor2D()

JGEOMETRY2D::JPosition2D::operator JVersor2D ( ) const
inlineinherited

Type conversion operator.

Returns
direction

Definition at line 142 of file JPosition2D.hh.

143 {
144 return JVersor2D(getX(), getY());
145 }

◆ rotate()

JPosition2D & JGEOMETRY2D::JPosition2D::rotate ( const JRotation2D & R)
inlineinherited

Rotate.

Parameters
Rrotation matrix
Returns
this position

Definition at line 154 of file JPosition2D.hh.

155 {
156 R.rotate(__x, __y);
157
158 return *this;
159 }

◆ rotate_back()

JPosition2D & JGEOMETRY2D::JPosition2D::rotate_back ( const JRotation2D & R)
inlineinherited

Rotate back.

Parameters
Rrotation matrix
Returns
this position

Definition at line 168 of file JPosition2D.hh.

169 {
170 R.rotate_back(__x, __y);
171
172 return *this;
173 }

◆ getDot() [1/3]

double JGEOMETRY2D::JPosition2D::getDot ( const JAngle2D & angle) const
inlineinherited

Get dot product.

Parameters
angleangle
Returns
dot product

Definition at line 182 of file JPosition2D.hh.

183 {
184 return
185 getX() * angle.getDX() +
186 getY() * angle.getDY();
187 }

◆ getDot() [2/3]

double JGEOMETRY2D::JPosition2D::getDot ( const JVersor2D & versor) const
inlineinherited

Get dot product.

Parameters
versorversor
Returns
dot product

Definition at line 196 of file JPosition2D.hh.

197 {
198 return
199 getX() * versor.getDX() +
200 getY() * versor.getDY();
201 }

◆ getDot() [3/3]

double JGEOMETRY2D::JVector2D::getDot ( const JVector2D & point) const
inlineinherited

Get dot product.

Parameters
pointvector
Returns
dot product

Definition at line 235 of file JVector2D.hh.

236 {
237 return
238 getX() * point.getX() +
239 getY() * point.getY();
240 }

◆ getPerpDot() [1/3]

double JGEOMETRY2D::JPosition2D::getPerpDot ( const JAngle2D & angle) const
inlineinherited

Get perpendicular dot product.

Parameters
angleangle
Returns
perpendicular dot product

Definition at line 210 of file JPosition2D.hh.

211 {
212 return
213 getX() * angle.getDY() -
214 getY() * angle.getDX();
215 }

◆ getPerpDot() [2/3]

double JGEOMETRY2D::JPosition2D::getPerpDot ( const JVersor2D & dir) const
inlineinherited

Get perpendicular dot product.

Parameters
dirdirection
Returns
perpendicular dot product

Definition at line 224 of file JPosition2D.hh.

225 {
226 return
227 getX() * dir.getDY() -
228 getY() * dir.getDX();
229 }

◆ getPerpDot() [3/3]

double JGEOMETRY2D::JVector2D::getPerpDot ( const JVector2D & point) const
inlineinherited

Get perpendicular dot product.

Parameters
pointvector
Returns
perpendicular dot product

Definition at line 249 of file JVector2D.hh.

250 {
251 return
252 getX() * point.getY() -
253 getY() * point.getX();
254 }

◆ transform()

JVector2D & JGEOMETRY2D::JVector2D::transform ( const JMatrix2D & T)
inlineinherited

Transform.

Parameters
Tmatrix
Returns
this vector

Definition at line 160 of file JVector2D.hh.

161 {
162 T.transform(__x, __y);
163
164 return *this;
165 }

◆ getX()

double JGEOMETRY2D::JVector2D::getX ( ) const
inlineinherited

Get x position.

Returns
x position

Definition at line 63 of file JVector2D.hh.

64 {
65 return __x;
66 }

◆ getY()

double JGEOMETRY2D::JVector2D::getY ( ) const
inlineinherited

Get y position.

Returns
y position

Definition at line 74 of file JVector2D.hh.

75 {
76 return __y;
77 }

◆ negate()

JVector2D & JGEOMETRY2D::JVector2D::negate ( )
inlineinherited

Negate vector.

Returns
this vector

Definition at line 85 of file JVector2D.hh.

86 {
87 __x = -__x;
88 __y = -__y;
89
90 return *this;
91 }

◆ add()

JVector2D & JGEOMETRY2D::JVector2D::add ( const JVector2D & vector)
inlineinherited

Add vector.

Parameters
vectorvector
Returns
this vector

Definition at line 100 of file JVector2D.hh.

101 {
102 __x += vector.getX();
103 __y += vector.getY();
104
105 return *this;
106 }

◆ sub()

JVector2D & JGEOMETRY2D::JVector2D::sub ( const JVector2D & vector)
inlineinherited

Subtract vector.

Parameters
vectorvector
Returns
this vector

Definition at line 115 of file JVector2D.hh.

116 {
117 __x -= vector.getX();
118 __y -= vector.getY();
119
120 return *this;
121 }

◆ mul() [1/2]

JVector2D & JGEOMETRY2D::JVector2D::mul ( const double factor)
inlineinherited

Scale vector.

Parameters
factormultiplication factor
Returns
this vector

Definition at line 130 of file JVector2D.hh.

131 {
132 __x *= factor;
133 __y *= factor;
134
135 return *this;
136 }

◆ mul() [2/2]

template<class JFirst_t , class JSecond_t >
JFirst_t & JMATH::JMath< JFirst_t, JSecond_t >::mul ( const JSecond_t & object)
inlineinherited

Multiply with object.

Parameters
objectobject
Returns
result object

Definition at line 354 of file JMath.hh.

355 {
356 return static_cast<JFirst_t&>(*this) = JFirst_t().mul(static_cast<const JFirst_t&>(*this), object);
357 }

◆ div()

JVector2D & JGEOMETRY2D::JVector2D::div ( const double factor)
inlineinherited

Scale vector.

Parameters
factordivision factor
Returns
this vector

Definition at line 145 of file JVector2D.hh.

146 {
147 __x /= factor;
148 __y /= factor;
149
150 return *this;
151 }

◆ equals()

bool JGEOMETRY2D::JVector2D::equals ( const JVector2D & vector,
const double precision = std::numeric_limits<double>::min() ) const
inlineinherited

Check equality.

Parameters
vectorvector
precisionprecision
Returns
true if vectors are equal; else false

Definition at line 175 of file JVector2D.hh.

177 {
178 return (fabs(getX() - vector.getX()) <= precision &&
179 fabs(getY() - vector.getY()) <= precision);
180 }

◆ getLengthSquared()

double JGEOMETRY2D::JVector2D::getLengthSquared ( ) const
inlineinherited

Get length squared.

Returns
square of length

Definition at line 188 of file JVector2D.hh.

189 {
190 return getX()*getX() + getY()*getY();
191 }

◆ getLength()

double JGEOMETRY2D::JVector2D::getLength ( ) const
inlineinherited

Get length.

Returns
length

Definition at line 199 of file JVector2D.hh.

200 {
201 return sqrt(getLengthSquared());
202 }
double getLengthSquared() const
Get length squared.
Definition JVector2D.hh:188

◆ getDistanceSquared()

double JGEOMETRY2D::JVector2D::getDistanceSquared ( const JVector2D & point) const
inlineinherited

Get squared of distance to point.

Parameters
pointpoint
Returns
square of distance

Definition at line 211 of file JVector2D.hh.

212 {
213 return JVector2D(point).sub(*this).getLengthSquared();
214 }

◆ getDistance()

double JGEOMETRY2D::JVector2D::getDistance ( const JVector2D & point) const
inlineinherited

Get distance to point.

Parameters
pointpoint
Returns
distance

Definition at line 223 of file JVector2D.hh.

224 {
225 return sqrt(getDistanceSquared(point));
226 }
double getDistanceSquared(const JVector2D &point) const
Get squared of distance to point.
Definition JVector2D.hh:211

Friends And Related Symbol Documentation

◆ operator>>

std::istream & operator>> ( std::istream & in,
JAnchor & anchor )
friend

Read JAnchor from input.

Parameters
ininput stream
anchorJAnchor
Returns
input stream

Definition at line 60 of file JAnchor.hh.

61 {
62 int id;
63 double x, y;
64
65 if (in >> id >> x >> y)
66 anchor = JAnchor(id, x, y);
67
68 return in;
69 }
JAnchor()
Default constructor.
Definition JAnchor.hh:32

◆ operator<<

std::ostream & operator<< ( std::ostream & out,
const JAnchor & anchor )
friend

Write JAnchor to output.

Parameters
outoutput stream
anchorJAnchor
Returns
output stream

Definition at line 79 of file JAnchor.hh.

80 {
81 out << anchor.getID();
82 out << ' ';
83 out << anchor.getX();
84 out << ' ';
85 out << anchor.getY();
86
87 return out;
88 }

Member Data Documentation

◆ __id

int JLANG::JObjectID::__id
protectedinherited

Definition at line 140 of file JObjectID.hh.

◆ __x

double JGEOMETRY2D::JVector2D::__x
protectedinherited

Definition at line 257 of file JVector2D.hh.

◆ __y

double JGEOMETRY2D::JVector2D::__y
protectedinherited

Definition at line 258 of file JVector2D.hh.


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