#ifndef ROOT_Math_GenVector_DisplacementVector2D
#define ROOT_Math_GenVector_DisplacementVector2D 1
#ifndef ROOT_Math_GenVector_Cartesian2D
#include "Math/GenVector/Cartesian2D.h"
#endif
#ifndef ROOT_Math_GenVector_PositionVector2Dfwd
#include "Math/GenVector/PositionVector2Dfwd.h"
#endif
#ifndef ROOT_Math_GenVector_GenVectorIO
#include "Math/GenVector/GenVectorIO.h"
#endif
#ifndef ROOT_Math_GenVector_BitReproducible
#include "Math/GenVector/BitReproducible.h"
#endif
#ifndef ROOT_Math_GenVector_CoordinateSystemTags
#include "Math/GenVector/CoordinateSystemTags.h"
#endif
namespace ROOT {
namespace Math {
template <class CoordSystem, class Tag = DefaultCoordinateSystemTag >
class DisplacementVector2D {
public:
typedef typename CoordSystem::Scalar Scalar;
typedef CoordSystem CoordinateType;
typedef Tag CoordinateSystemTag;
DisplacementVector2D ( ) : fCoordinates() { }
DisplacementVector2D(Scalar a, Scalar b) :
fCoordinates ( a , b ) { }
template <class OtherCoords>
explicit DisplacementVector2D( const DisplacementVector2D<OtherCoords, Tag> & v) :
fCoordinates ( v.Coordinates() ) { }
template <class OtherCoords>
explicit DisplacementVector2D( const PositionVector2D<OtherCoords,Tag> & p) :
fCoordinates ( p.Coordinates() ) { }
template <class ForeignVector>
explicit DisplacementVector2D( const ForeignVector & v) :
fCoordinates ( Cartesian2D<Scalar>( v.x(), v.y() ) ) { }
template <class OtherCoords>
DisplacementVector2D & operator=
( const DisplacementVector2D<OtherCoords, Tag> & v) {
fCoordinates = v.Coordinates();
return *this;
}
template <class OtherCoords>
DisplacementVector2D & operator=
( const PositionVector2D<OtherCoords,Tag> & rhs) {
SetXY(rhs.x(), rhs.y() );
return *this;
}
template <class ForeignVector>
DisplacementVector2D & operator= ( const ForeignVector & v) {
SetXY( v.x(), v.y() );
return *this;
}
CoordSystem Coordinates() const {
return fCoordinates;
}
DisplacementVector2D<CoordSystem, Tag>& SetCoordinates( Scalar a, Scalar b) {
fCoordinates.SetCoordinates(a, b);
return *this;
}
void GetCoordinates( Scalar& a, Scalar& b) const
{ fCoordinates.GetCoordinates(a, b); }
DisplacementVector2D<CoordSystem, Tag>& SetXY (Scalar a, Scalar b) {
fCoordinates.SetXY(a,b);
return *this;
}
bool operator==(const DisplacementVector2D & rhs) const {
return fCoordinates==rhs.fCoordinates;
}
bool operator!= (const DisplacementVector2D & rhs) const {
return !(operator==(rhs));
}
Scalar X() const { return fCoordinates.X(); }
Scalar Y() const { return fCoordinates.Y(); }
Scalar R() const { return fCoordinates.R(); }
Scalar Phi() const { return fCoordinates.Phi(); }
Scalar Mag2() const { return fCoordinates.Mag2();}
DisplacementVector2D Unit() const {
Scalar tot = R();
return tot == 0 ? *this : DisplacementVector2D(*this) / tot;
}
DisplacementVector2D<CoordSystem, Tag>& SetX (Scalar a) {
fCoordinates.SetX(a);
return *this;
}
DisplacementVector2D<CoordSystem, Tag>& SetY (Scalar a) {
fCoordinates.SetY(a);
return *this;
}
DisplacementVector2D<CoordSystem, Tag>& SetR (Scalar a) {
fCoordinates.SetR(a);
return *this;
}
DisplacementVector2D<CoordSystem, Tag>& SetPhi (Scalar ang) {
fCoordinates.SetPhi(ang);
return *this;
}
template< class OtherCoords >
Scalar Dot( const DisplacementVector2D<OtherCoords,Tag> & v) const {
return X()*v.X() + Y()*v.Y();
}
template< class OtherVector >
Scalar Dot( const OtherVector & v) const {
return X()*v.x() + Y()*v.y();
}
template <class OtherCoords>
DisplacementVector2D & operator+=
(const DisplacementVector2D<OtherCoords,Tag> & v) {
SetXY( X() + v.X(), Y() + v.Y() );
return *this;
}
template <class OtherCoords>
DisplacementVector2D & operator-=
(const DisplacementVector2D<OtherCoords,Tag> & v) {
SetXY( x() - v.x(), y() - v.y() );
return *this;
}
DisplacementVector2D & operator*= (Scalar a) {
fCoordinates.Scale(a);
return *this;
}
DisplacementVector2D & operator/= (Scalar a) {
fCoordinates.Scale(1/a);
return *this;
}
DisplacementVector2D operator * ( Scalar a ) const {
DisplacementVector2D tmp(*this);
tmp *= a;
return tmp;
}
DisplacementVector2D operator - ( ) const {
return operator*( Scalar(-1) );
}
DisplacementVector2D operator + ( ) const {return *this;}
DisplacementVector2D operator/ (Scalar a) const {
DisplacementVector2D tmp(*this);
tmp /= a;
return tmp;
}
void Rotate( Scalar angle) {
return fCoordinates.Rotate(angle);
}
Scalar x() const { return fCoordinates.X(); }
Scalar y() const { return fCoordinates.Y(); }
Scalar r() const { return fCoordinates.R(); }
Scalar phi() const { return fCoordinates.Phi(); }
Scalar mag2() const { return fCoordinates.Mag2(); }
DisplacementVector2D unit() const {return Unit();}
private:
CoordSystem fCoordinates;
template <class OtherCoords, class OtherTag>
explicit DisplacementVector2D( const DisplacementVector2D<OtherCoords, OtherTag> & ) {}
template <class OtherCoords, class OtherTag>
explicit DisplacementVector2D( const PositionVector2D<OtherCoords, OtherTag> & ) {}
template <class OtherCoords, class OtherTag>
DisplacementVector2D & operator=( const DisplacementVector2D<OtherCoords, OtherTag> & );
template <class OtherCoords, class OtherTag>
DisplacementVector2D & operator=( const PositionVector2D<OtherCoords, OtherTag> & );
template <class OtherCoords, class OtherTag>
DisplacementVector2D & operator+=(const DisplacementVector2D<OtherCoords, OtherTag> & );
template <class OtherCoords, class OtherTag>
DisplacementVector2D & operator-=(const DisplacementVector2D<OtherCoords, OtherTag> & );
template<class OtherCoords, class OtherTag >
Scalar Dot( const DisplacementVector2D<OtherCoords, OtherTag> & ) const;
template<class OtherCoords, class OtherTag >
DisplacementVector2D Cross( const DisplacementVector2D<OtherCoords, OtherTag> & ) const;
};
template <class CoordSystem1, class CoordSystem2, class U>
inline
DisplacementVector2D<CoordSystem1,U>
operator+( DisplacementVector2D<CoordSystem1,U> v1,
const DisplacementVector2D<CoordSystem2,U> & v2) {
return v1 += v2;
}
template <class CoordSystem1, class CoordSystem2, class U>
inline
DisplacementVector2D<CoordSystem1,U>
operator-( DisplacementVector2D<CoordSystem1,U> v1,
DisplacementVector2D<CoordSystem2,U> const & v2) {
return v1 -= v2;
}
template <class CoordSystem, class U>
inline
DisplacementVector2D<CoordSystem,U>
operator * ( typename DisplacementVector2D<CoordSystem,U>::Scalar a,
DisplacementVector2D<CoordSystem,U> v) {
return v *= a;
}
template< class char_t, class traits_t, class T, class U >
inline
std::basic_ostream<char_t,traits_t> &
operator << ( std::basic_ostream<char_t,traits_t> & os
, DisplacementVector2D<T,U> const & v
)
{
if( !os ) return os;
typename T::Scalar a, b;
v.GetCoordinates(a, b);
if( detail::get_manip( os, detail::bitforbit ) ) {
detail::set_manip( os, detail::bitforbit, '\00' );
typedef GenVector_detail::BitReproducible BR;
BR::Output(os, a);
BR::Output(os, b);
}
else {
os << detail::get_manip( os, detail::open ) << a
<< detail::get_manip( os, detail::sep ) << b
<< detail::get_manip( os, detail::close );
}
return os;
}
template< class char_t, class traits_t, class T, class U >
inline
std::basic_istream<char_t,traits_t> &
operator >> ( std::basic_istream<char_t,traits_t> & is
, DisplacementVector2D<T,U> & v
)
{
if( !is ) return is;
typename T::Scalar a, b;
if( detail::get_manip( is, detail::bitforbit ) ) {
detail::set_manip( is, detail::bitforbit, '\00' );
typedef GenVector_detail::BitReproducible BR;
BR::Input(is, a);
BR::Input(is, b);
}
else {
detail::require_delim( is, detail::open ); is >> a;
detail::require_delim( is, detail::sep ); is >> b;
detail::require_delim( is, detail::close );
}
if( is )
v.SetCoordinates(a, b);
return is;
}
}
}
#endif /* ROOT_Math_GenVector_DisplacementVector2D */
DisplacementVector2D.h:10 DisplacementVector2D.h:11 DisplacementVector2D.h:12 DisplacementVector2D.h:13 DisplacementVector2D.h:14 DisplacementVector2D.h:15 DisplacementVector2D.h:16 DisplacementVector2D.h:17 DisplacementVector2D.h:18 DisplacementVector2D.h:19 DisplacementVector2D.h:20 DisplacementVector2D.h:21 DisplacementVector2D.h:22 DisplacementVector2D.h:23 DisplacementVector2D.h:24 DisplacementVector2D.h:25 DisplacementVector2D.h:26 DisplacementVector2D.h:27 DisplacementVector2D.h:28 DisplacementVector2D.h:29 DisplacementVector2D.h:30 DisplacementVector2D.h:31 DisplacementVector2D.h:32 DisplacementVector2D.h:33 DisplacementVector2D.h:34 DisplacementVector2D.h:35 DisplacementVector2D.h:36 DisplacementVector2D.h:37 DisplacementVector2D.h:38 DisplacementVector2D.h:39 DisplacementVector2D.h:40 DisplacementVector2D.h:41 DisplacementVector2D.h:42 DisplacementVector2D.h:43 DisplacementVector2D.h:44 DisplacementVector2D.h:45 DisplacementVector2D.h:46 DisplacementVector2D.h:47 DisplacementVector2D.h:48 DisplacementVector2D.h:49 DisplacementVector2D.h:50 DisplacementVector2D.h:51 DisplacementVector2D.h:52 DisplacementVector2D.h:53 DisplacementVector2D.h:54 DisplacementVector2D.h:55 DisplacementVector2D.h:56 DisplacementVector2D.h:57 DisplacementVector2D.h:58 DisplacementVector2D.h:59 DisplacementVector2D.h:60 DisplacementVector2D.h:61 DisplacementVector2D.h:62 DisplacementVector2D.h:63 DisplacementVector2D.h:64 DisplacementVector2D.h:65 DisplacementVector2D.h:66 DisplacementVector2D.h:67 DisplacementVector2D.h:68 DisplacementVector2D.h:69 DisplacementVector2D.h:70 DisplacementVector2D.h:71 DisplacementVector2D.h:72 DisplacementVector2D.h:73 DisplacementVector2D.h:74 DisplacementVector2D.h:75 DisplacementVector2D.h:76 DisplacementVector2D.h:77 DisplacementVector2D.h:78 DisplacementVector2D.h:79 DisplacementVector2D.h:80 DisplacementVector2D.h:81 DisplacementVector2D.h:82 DisplacementVector2D.h:83 DisplacementVector2D.h:84 DisplacementVector2D.h:85 DisplacementVector2D.h:86 DisplacementVector2D.h:87 DisplacementVector2D.h:88 DisplacementVector2D.h:89 DisplacementVector2D.h:90 DisplacementVector2D.h:91 DisplacementVector2D.h:92 DisplacementVector2D.h:93 DisplacementVector2D.h:94 DisplacementVector2D.h:95 DisplacementVector2D.h:96 DisplacementVector2D.h:97 DisplacementVector2D.h:98 DisplacementVector2D.h:99 DisplacementVector2D.h:100 DisplacementVector2D.h:101 DisplacementVector2D.h:102 DisplacementVector2D.h:103 DisplacementVector2D.h:104 DisplacementVector2D.h:105 DisplacementVector2D.h:106 DisplacementVector2D.h:107 DisplacementVector2D.h:108 DisplacementVector2D.h:109 DisplacementVector2D.h:110 DisplacementVector2D.h:111 DisplacementVector2D.h:112 DisplacementVector2D.h:113 DisplacementVector2D.h:114 DisplacementVector2D.h:115 DisplacementVector2D.h:116 DisplacementVector2D.h:117 DisplacementVector2D.h:118 DisplacementVector2D.h:119 DisplacementVector2D.h:120 DisplacementVector2D.h:121 DisplacementVector2D.h:122 DisplacementVector2D.h:123 DisplacementVector2D.h:124 DisplacementVector2D.h:125 DisplacementVector2D.h:126 DisplacementVector2D.h:127 DisplacementVector2D.h:128 DisplacementVector2D.h:129 DisplacementVector2D.h:130 DisplacementVector2D.h:131 DisplacementVector2D.h:132 DisplacementVector2D.h:133 DisplacementVector2D.h:134 DisplacementVector2D.h:135 DisplacementVector2D.h:136 DisplacementVector2D.h:137 DisplacementVector2D.h:138 DisplacementVector2D.h:139 DisplacementVector2D.h:140 DisplacementVector2D.h:141 DisplacementVector2D.h:142 DisplacementVector2D.h:143 DisplacementVector2D.h:144 DisplacementVector2D.h:145 DisplacementVector2D.h:146 DisplacementVector2D.h:147 DisplacementVector2D.h:148 DisplacementVector2D.h:149 DisplacementVector2D.h:150 DisplacementVector2D.h:151 DisplacementVector2D.h:152 DisplacementVector2D.h:153 DisplacementVector2D.h:154 DisplacementVector2D.h:155 DisplacementVector2D.h:156 DisplacementVector2D.h:157 DisplacementVector2D.h:158 DisplacementVector2D.h:159 DisplacementVector2D.h:160 DisplacementVector2D.h:161 DisplacementVector2D.h:162 DisplacementVector2D.h:163 DisplacementVector2D.h:164 DisplacementVector2D.h:165 DisplacementVector2D.h:166 DisplacementVector2D.h:167 DisplacementVector2D.h:168 DisplacementVector2D.h:169 DisplacementVector2D.h:170 DisplacementVector2D.h:171 DisplacementVector2D.h:172 DisplacementVector2D.h:173 DisplacementVector2D.h:174 DisplacementVector2D.h:175 DisplacementVector2D.h:176 DisplacementVector2D.h:177 DisplacementVector2D.h:178 DisplacementVector2D.h:179 DisplacementVector2D.h:180 DisplacementVector2D.h:181 DisplacementVector2D.h:182 DisplacementVector2D.h:183 DisplacementVector2D.h:184 DisplacementVector2D.h:185 DisplacementVector2D.h:186 DisplacementVector2D.h:187 DisplacementVector2D.h:188 DisplacementVector2D.h:189 DisplacementVector2D.h:190 DisplacementVector2D.h:191 DisplacementVector2D.h:192 DisplacementVector2D.h:193 DisplacementVector2D.h:194 DisplacementVector2D.h:195 DisplacementVector2D.h:196 DisplacementVector2D.h:197 DisplacementVector2D.h:198 DisplacementVector2D.h:199 DisplacementVector2D.h:200 DisplacementVector2D.h:201 DisplacementVector2D.h:202 DisplacementVector2D.h:203 DisplacementVector2D.h:204 DisplacementVector2D.h:205 DisplacementVector2D.h:206 DisplacementVector2D.h:207 DisplacementVector2D.h:208 DisplacementVector2D.h:209 DisplacementVector2D.h:210 DisplacementVector2D.h:211 DisplacementVector2D.h:212 DisplacementVector2D.h:213 DisplacementVector2D.h:214 DisplacementVector2D.h:215 DisplacementVector2D.h:216 DisplacementVector2D.h:217 DisplacementVector2D.h:218 DisplacementVector2D.h:219 DisplacementVector2D.h:220 DisplacementVector2D.h:221 DisplacementVector2D.h:222 DisplacementVector2D.h:223 DisplacementVector2D.h:224 DisplacementVector2D.h:225 DisplacementVector2D.h:226 DisplacementVector2D.h:227 DisplacementVector2D.h:228 DisplacementVector2D.h:229 DisplacementVector2D.h:230 DisplacementVector2D.h:231 DisplacementVector2D.h:232 DisplacementVector2D.h:233 DisplacementVector2D.h:234 DisplacementVector2D.h:235 DisplacementVector2D.h:236 DisplacementVector2D.h:237 DisplacementVector2D.h:238 DisplacementVector2D.h:239 DisplacementVector2D.h:240 DisplacementVector2D.h:241 DisplacementVector2D.h:242 DisplacementVector2D.h:243 DisplacementVector2D.h:244 DisplacementVector2D.h:245 DisplacementVector2D.h:246 DisplacementVector2D.h:247 DisplacementVector2D.h:248 DisplacementVector2D.h:249 DisplacementVector2D.h:250 DisplacementVector2D.h:251 DisplacementVector2D.h:252 DisplacementVector2D.h:253 DisplacementVector2D.h:254 DisplacementVector2D.h:255 DisplacementVector2D.h:256 DisplacementVector2D.h:257 DisplacementVector2D.h:258 DisplacementVector2D.h:259 DisplacementVector2D.h:260 DisplacementVector2D.h:261 DisplacementVector2D.h:262 DisplacementVector2D.h:263 DisplacementVector2D.h:264 DisplacementVector2D.h:265 DisplacementVector2D.h:266 DisplacementVector2D.h:267 DisplacementVector2D.h:268 DisplacementVector2D.h:269 DisplacementVector2D.h:270 DisplacementVector2D.h:271 DisplacementVector2D.h:272 DisplacementVector2D.h:273 DisplacementVector2D.h:274 DisplacementVector2D.h:275 DisplacementVector2D.h:276 DisplacementVector2D.h:277 DisplacementVector2D.h:278 DisplacementVector2D.h:279 DisplacementVector2D.h:280 DisplacementVector2D.h:281 DisplacementVector2D.h:282 DisplacementVector2D.h:283 DisplacementVector2D.h:284 DisplacementVector2D.h:285 DisplacementVector2D.h:286 DisplacementVector2D.h:287 DisplacementVector2D.h:288 DisplacementVector2D.h:289 DisplacementVector2D.h:290 DisplacementVector2D.h:291 DisplacementVector2D.h:292 DisplacementVector2D.h:293 DisplacementVector2D.h:294 DisplacementVector2D.h:295 DisplacementVector2D.h:296 DisplacementVector2D.h:297 DisplacementVector2D.h:298 DisplacementVector2D.h:299 DisplacementVector2D.h:300 DisplacementVector2D.h:301 DisplacementVector2D.h:302 DisplacementVector2D.h:303 DisplacementVector2D.h:304 DisplacementVector2D.h:305 DisplacementVector2D.h:306 DisplacementVector2D.h:307 DisplacementVector2D.h:308 DisplacementVector2D.h:309 DisplacementVector2D.h:310 DisplacementVector2D.h:311 DisplacementVector2D.h:312 DisplacementVector2D.h:313 DisplacementVector2D.h:314 DisplacementVector2D.h:315 DisplacementVector2D.h:316 DisplacementVector2D.h:317 DisplacementVector2D.h:318 DisplacementVector2D.h:319 DisplacementVector2D.h:320 DisplacementVector2D.h:321 DisplacementVector2D.h:322 DisplacementVector2D.h:323 DisplacementVector2D.h:324 DisplacementVector2D.h:325 DisplacementVector2D.h:326 DisplacementVector2D.h:327 DisplacementVector2D.h:328 DisplacementVector2D.h:329 DisplacementVector2D.h:330 DisplacementVector2D.h:331 DisplacementVector2D.h:332 DisplacementVector2D.h:333 DisplacementVector2D.h:334 DisplacementVector2D.h:335 DisplacementVector2D.h:336 DisplacementVector2D.h:337 DisplacementVector2D.h:338 DisplacementVector2D.h:339 DisplacementVector2D.h:340 DisplacementVector2D.h:341 DisplacementVector2D.h:342 DisplacementVector2D.h:343 DisplacementVector2D.h:344 DisplacementVector2D.h:345 DisplacementVector2D.h:346 DisplacementVector2D.h:347 DisplacementVector2D.h:348 DisplacementVector2D.h:349 DisplacementVector2D.h:350 DisplacementVector2D.h:351 DisplacementVector2D.h:352 DisplacementVector2D.h:353 DisplacementVector2D.h:354 DisplacementVector2D.h:355 DisplacementVector2D.h:356 DisplacementVector2D.h:357 DisplacementVector2D.h:358 DisplacementVector2D.h:359 DisplacementVector2D.h:360 DisplacementVector2D.h:361 DisplacementVector2D.h:362 DisplacementVector2D.h:363 DisplacementVector2D.h:364 DisplacementVector2D.h:365 DisplacementVector2D.h:366 DisplacementVector2D.h:367 DisplacementVector2D.h:368 DisplacementVector2D.h:369 DisplacementVector2D.h:370 DisplacementVector2D.h:371 DisplacementVector2D.h:372 DisplacementVector2D.h:373 DisplacementVector2D.h:374 DisplacementVector2D.h:375 DisplacementVector2D.h:376 DisplacementVector2D.h:377 DisplacementVector2D.h:378 DisplacementVector2D.h:379 DisplacementVector2D.h:380 DisplacementVector2D.h:381 DisplacementVector2D.h:382 DisplacementVector2D.h:383 DisplacementVector2D.h:384 DisplacementVector2D.h:385 DisplacementVector2D.h:386 DisplacementVector2D.h:387 DisplacementVector2D.h:388 DisplacementVector2D.h:389 DisplacementVector2D.h:390 DisplacementVector2D.h:391 DisplacementVector2D.h:392 DisplacementVector2D.h:393 DisplacementVector2D.h:394 DisplacementVector2D.h:395 DisplacementVector2D.h:396 DisplacementVector2D.h:397 DisplacementVector2D.h:398 DisplacementVector2D.h:399 DisplacementVector2D.h:400 DisplacementVector2D.h:401 DisplacementVector2D.h:402 DisplacementVector2D.h:403 DisplacementVector2D.h:404 DisplacementVector2D.h:405 DisplacementVector2D.h:406 DisplacementVector2D.h:407 DisplacementVector2D.h:408 DisplacementVector2D.h:409 DisplacementVector2D.h:410 DisplacementVector2D.h:411 DisplacementVector2D.h:412 DisplacementVector2D.h:413 DisplacementVector2D.h:414 DisplacementVector2D.h:415 DisplacementVector2D.h:416 DisplacementVector2D.h:417 DisplacementVector2D.h:418 DisplacementVector2D.h:419 DisplacementVector2D.h:420 DisplacementVector2D.h:421 DisplacementVector2D.h:422 DisplacementVector2D.h:423 DisplacementVector2D.h:424 DisplacementVector2D.h:425 DisplacementVector2D.h:426 DisplacementVector2D.h:427 DisplacementVector2D.h:428 DisplacementVector2D.h:429 DisplacementVector2D.h:430 DisplacementVector2D.h:431 DisplacementVector2D.h:432 DisplacementVector2D.h:433 DisplacementVector2D.h:434 DisplacementVector2D.h:435 DisplacementVector2D.h:436 DisplacementVector2D.h:437 DisplacementVector2D.h:438 DisplacementVector2D.h:439 DisplacementVector2D.h:440 DisplacementVector2D.h:441 DisplacementVector2D.h:442 DisplacementVector2D.h:443 DisplacementVector2D.h:444 DisplacementVector2D.h:445 DisplacementVector2D.h:446 DisplacementVector2D.h:447 DisplacementVector2D.h:448 DisplacementVector2D.h:449 DisplacementVector2D.h:450 DisplacementVector2D.h:451 DisplacementVector2D.h:452 DisplacementVector2D.h:453 DisplacementVector2D.h:454 DisplacementVector2D.h:455 DisplacementVector2D.h:456 DisplacementVector2D.h:457 DisplacementVector2D.h:458 DisplacementVector2D.h:459 DisplacementVector2D.h:460 DisplacementVector2D.h:461 DisplacementVector2D.h:462 DisplacementVector2D.h:463 DisplacementVector2D.h:464 DisplacementVector2D.h:465 DisplacementVector2D.h:466 DisplacementVector2D.h:467 DisplacementVector2D.h:468 DisplacementVector2D.h:469 DisplacementVector2D.h:470 DisplacementVector2D.h:471 DisplacementVector2D.h:472 DisplacementVector2D.h:473 DisplacementVector2D.h:474 DisplacementVector2D.h:475 DisplacementVector2D.h:476 DisplacementVector2D.h:477 DisplacementVector2D.h:478 DisplacementVector2D.h:479 DisplacementVector2D.h:480 DisplacementVector2D.h:481 DisplacementVector2D.h:482 DisplacementVector2D.h:483 DisplacementVector2D.h:484 DisplacementVector2D.h:485 DisplacementVector2D.h:486 DisplacementVector2D.h:487 DisplacementVector2D.h:488 DisplacementVector2D.h:489 DisplacementVector2D.h:490 DisplacementVector2D.h:491 DisplacementVector2D.h:492 DisplacementVector2D.h:493 DisplacementVector2D.h:494 DisplacementVector2D.h:495 DisplacementVector2D.h:496 DisplacementVector2D.h:497 DisplacementVector2D.h:498 DisplacementVector2D.h:499 DisplacementVector2D.h:500 DisplacementVector2D.h:501 DisplacementVector2D.h:502 DisplacementVector2D.h:503 DisplacementVector2D.h:504 DisplacementVector2D.h:505 DisplacementVector2D.h:506 DisplacementVector2D.h:507 DisplacementVector2D.h:508 DisplacementVector2D.h:509 DisplacementVector2D.h:510 DisplacementVector2D.h:511 DisplacementVector2D.h:512 DisplacementVector2D.h:513 DisplacementVector2D.h:514 DisplacementVector2D.h:515 DisplacementVector2D.h:516 DisplacementVector2D.h:517 DisplacementVector2D.h:518 DisplacementVector2D.h:519 DisplacementVector2D.h:520 DisplacementVector2D.h:521 DisplacementVector2D.h:522 DisplacementVector2D.h:523 DisplacementVector2D.h:524 DisplacementVector2D.h:525 DisplacementVector2D.h:526 DisplacementVector2D.h:527 DisplacementVector2D.h:528 DisplacementVector2D.h:529 DisplacementVector2D.h:530 DisplacementVector2D.h:531 DisplacementVector2D.h:532 DisplacementVector2D.h:533 DisplacementVector2D.h:534 DisplacementVector2D.h:535 DisplacementVector2D.h:536 DisplacementVector2D.h:537 DisplacementVector2D.h:538 DisplacementVector2D.h:539 DisplacementVector2D.h:540 DisplacementVector2D.h:541 DisplacementVector2D.h:542 DisplacementVector2D.h:543 DisplacementVector2D.h:544 DisplacementVector2D.h:545 DisplacementVector2D.h:546 DisplacementVector2D.h:547 DisplacementVector2D.h:548 DisplacementVector2D.h:549 DisplacementVector2D.h:550 DisplacementVector2D.h:551 DisplacementVector2D.h:552