playrho::d2::Position Struct Reference

2-D positional data structure. More...

#include <Position.hpp>

Public Attributes

Length2 linear
 Linear position. More...
 
Angle angular
 Angular position. More...
 

Related Functions

(Note that these are not member functions.)

PLAYRHO_CONSTEXPR bool operator== (const Position &lhs, const Position &rhs)
 Equality operator. More...
 
PLAYRHO_CONSTEXPR bool operator!= (const Position &lhs, const Position &rhs)
 Inequality operator. More...
 
PLAYRHO_CONSTEXPR Position operator- (const Position &value)
 Negation operator. More...
 
PLAYRHO_CONSTEXPR Position operator+ (const Position &value)
 Positive operator. More...
 
PLAYRHO_CONSTEXPR Positionoperator+= (Position &lhs, const Position &rhs)
 Addition assignment operator. More...
 
PLAYRHO_CONSTEXPR Position operator+ (const Position &lhs, const Position &rhs)
 Addition operator. More...
 
PLAYRHO_CONSTEXPR Positionoperator-= (Position &lhs, const Position &rhs)
 Subtraction assignment operator. More...
 
PLAYRHO_CONSTEXPR Position operator- (const Position &lhs, const Position &rhs)
 Subtraction operator. More...
 
PLAYRHO_CONSTEXPR Position operator* (const Real scalar, const Position &pos)
 Multiplication operator. More...
 
template<>
PLAYRHO_CONSTEXPR bool IsValid (const d2::Position &value) noexcept
 Determines if the given value is valid. More...
 
PLAYRHO_CONSTEXPR Position GetPosition (const Position pos0, const Position pos1, const Real beta) noexcept
 

Detailed Description

2-D positional data structure.

A 2-element length and angle pair suitable for representing a linear and angular position in 2-D.

Note
This structure is likely to be 12-bytes large (at least on 64-bit platforms).
Examples
Body.cpp.

Definition at line 36 of file Position.hpp.

Friends And Related Function Documentation

◆ operator==()

PLAYRHO_CONSTEXPR bool operator== ( const Position lhs,
const Position rhs 
)
related

Equality operator.

Definition at line 44 of file Position.hpp.

◆ operator!=()

PLAYRHO_CONSTEXPR bool operator!= ( const Position lhs,
const Position rhs 
)
related

Inequality operator.

Definition at line 51 of file Position.hpp.

◆ operator-() [1/2]

PLAYRHO_CONSTEXPR Position operator- ( const Position value)
related

Negation operator.

Definition at line 58 of file Position.hpp.

◆ operator+() [1/2]

PLAYRHO_CONSTEXPR Position operator+ ( const Position value)
related

Positive operator.

Definition at line 65 of file Position.hpp.

◆ operator+=()

PLAYRHO_CONSTEXPR Position & operator+= ( Position lhs,
const Position rhs 
)
related

Addition assignment operator.

Definition at line 72 of file Position.hpp.

◆ operator+() [2/2]

PLAYRHO_CONSTEXPR Position operator+ ( const Position lhs,
const Position rhs 
)
related

Addition operator.

Definition at line 81 of file Position.hpp.

◆ operator-=()

PLAYRHO_CONSTEXPR Position & operator-= ( Position lhs,
const Position rhs 
)
related

Subtraction assignment operator.

Definition at line 88 of file Position.hpp.

◆ operator-() [2/2]

PLAYRHO_CONSTEXPR Position operator- ( const Position lhs,
const Position rhs 
)
related

Subtraction operator.

Definition at line 97 of file Position.hpp.

◆ operator*()

PLAYRHO_CONSTEXPR Position operator* ( const Real  scalar,
const Position pos 
)
related

Multiplication operator.

Definition at line 110 of file Position.hpp.

◆ IsValid()

PLAYRHO_CONSTEXPR bool IsValid ( const d2::Position value)
related

Determines if the given value is valid.

Definition at line 121 of file Position.hpp.

◆ GetPosition()

PLAYRHO_CONSTEXPR Position GetPosition ( const Position  pos0,
const Position  pos1,
const Real  beta 
)
related

Gets the position between two positions at a given unit interval.

Parameters
pos0Position at unit interval value of 0.
pos1Position at unit interval value of 1.
betaUnit interval (value between 0 and 1) of travel between position 0 and position 1.
Returns
position 0 if pos0 == pos1 or beta == 0, position 1 if beta == 1, or at the given unit interval value between position 0 and position 1.
Examples
Body.cpp.

Definition at line 137 of file Position.hpp.

Member Data Documentation

◆ linear

Length2 playrho::d2::Position::linear

Linear position.

Definition at line 38 of file Position.hpp.

◆ angular

Angle playrho::d2::Position::angular

Angular position.

Definition at line 39 of file Position.hpp.


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