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

Center. More...

#include <JGeometry2DToolkit.hh>

Inheritance diagram for JGEOMETRY2D::JCenter2D:
JGEOMETRY2D::JVector2D JMATH::JMath< JFirst_t, JSecond_t >

Public Member Functions

 JCenter2D (const JVector2D &p0, const JVector2D &p1)
 Constructor.
 
 JCenter2D (const JVector2D &p0, const JVector2D &p1, const JVector2D &p2)
 Constructor.
 
template<class T >
 JCenter2D (T __begin, T __end)
 Constructor.
 
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.
 
JVector2Dtransform (const JMatrix2D &T)
 Transform.
 
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.
 
double getDot (const JVector2D &point) const
 Get dot product.
 
double getPerpDot (const JVector2D &point) const
 Get perpendicular dot product.
 

Protected Attributes

double __x
 
double __y
 

Detailed Description

Center.

Definition at line 52 of file JGeometry2DToolkit.hh.

Constructor & Destructor Documentation

◆ JCenter2D() [1/3]

JGEOMETRY2D::JCenter2D::JCenter2D ( const JVector2D & p0,
const JVector2D & p1 )
inline

Constructor.

Parameters
p0first point
p1second point

Definition at line 62 of file JGeometry2DToolkit.hh.

63 :
64 JVector2D()
65 {
66 add(p0);
67 add(p1);
68
69 div(2);
70 }
TPaveText * p1
JVector2D()
Default constructor.
Definition JVector2D.hh:39
JVector2D & div(const double factor)
Scale vector.
Definition JVector2D.hh:145
JVector2D & add(const JVector2D &vector)
Add vector.
Definition JVector2D.hh:100

◆ JCenter2D() [2/3]

JGEOMETRY2D::JCenter2D::JCenter2D ( const JVector2D & p0,
const JVector2D & p1,
const JVector2D & p2 )
inline

Constructor.

Parameters
p0first point
p1second point
p2third point

Definition at line 80 of file JGeometry2DToolkit.hh.

82 :
83 JVector2D()
84 {
85 add(p0);
86 add(p1);
87 add(p2);
88
89 div(3);
90 }

◆ JCenter2D() [3/3]

template<class T >
JGEOMETRY2D::JCenter2D::JCenter2D ( T __begin,
T __end )
inline

Constructor.

Parameters
__beginbegin of data
__endend of data

Definition at line 100 of file JGeometry2DToolkit.hh.

101 :
102 JVector2D()
103 {
104 if (__begin != __end) {
105
106 for (T i = __begin; i != __end; ++i) {
107 add(*i);
108 }
109
110 div(std::distance(__begin, __end));
111 }
112 }

Member Function Documentation

◆ 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 }

◆ 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 }

◆ 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 }
double getY() const
Get y position.
Definition JVector2D.hh:74
double getX() const
Get x position.
Definition JVector2D.hh:63

◆ 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

◆ getDot()

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()

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 }

Member Data Documentation

◆ __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: