jaulib v1.3.6
Jau Support Library (C++, Java, ..)
|
2D vector using two value_type components. More...
#include <vec2i.hpp>
Public Types | |
typedef const value_type * | const_iterator |
typedef const value_type * | const_pointer |
typedef const value_type & | const_reference |
typedef jau::float_bytes< sizeof(value_type)>::type | float_type |
typedef value_type * | iterator |
typedef value_type * | pointer |
typedef value_type & | reference |
typedef Value_type | value_type |
Public Member Functions | |
constexpr | Vector2I () noexcept |
constexpr | Vector2I (const value_type v) noexcept |
constexpr | Vector2I (const value_type x_, const value_type y_) noexcept |
constexpr | Vector2I (const Vector2I &o) noexcept=default |
constexpr | Vector2I (Vector2I &&o) noexcept=default |
constexpr Vector2I & | add (const value_type dx, const value_type dy) noexcept |
this = this + {sx, sy}, returns this. | |
constexpr iterator | begin () noexcept |
constexpr const_iterator | cbegin () const noexcept |
constexpr Vector2I | copy () noexcept |
constexpr iterator | get (iterator xy) const noexcept |
xy = this, returns xy. | |
bool | intersects (const Vector2I &o) |
constexpr bool | is_zero () const noexcept |
constexpr value_type | length () const noexcept |
Return the length of this vector, a.k.a the norm or magnitude | |
constexpr value_type | length_sq () const noexcept |
Return the squared length of this vector, a.k.a the squared norm or squared magnitude | |
constexpr Vector2I & | mul (const value_type sx, const value_type sy) noexcept |
this = this * {sx, sy}, returns this. | |
constexpr Vector2I & | normalize () noexcept |
Normalize this vector in place, returns *this. | |
operator const_pointer () const noexcept | |
operator pointer () noexcept | |
constexpr Vector2I & | operator*= (const value_type s) noexcept |
Scale this vector with given scale factor. | |
constexpr Vector2I & | operator+= (const Vector2I &rhs) noexcept |
this = this + rhs, returns this. | |
constexpr Vector2I & | operator-= (const Vector2I &rhs) noexcept |
this = this - rhs, returns this. | |
constexpr Vector2I & | operator/= (const value_type s) noexcept |
Divide this vector with given scale factor. | |
constexpr Vector2I & | operator= (const Vector2I &) noexcept=default |
constexpr Vector2I & | operator= (Vector2I &&) noexcept=default |
constexpr bool | operator== (const Vector2I &rhs) const noexcept |
constexpr value_type | operator[] (size_t i) const noexcept |
Returns read-only component. | |
constexpr reference | operator[] (size_t i) noexcept |
Returns writeable reference to component. | |
constexpr_cxx26 void | rotate (const float_type radians, const Vector2I &ctr) |
void | rotate (const float_type sin, const float_type cos, const Vector2I &ctr) |
constexpr Vector2I & | scale (const value_type s) noexcept |
this = this * s, returns this. | |
constexpr Vector2I & | set (const value_type vx, const value_type vy) noexcept |
TODO constexpr bool operator<=>(const vec2i_t& rhs ) const noexcept { return ... }. | |
constexpr Vector2I & | set (const_iterator xy) noexcept |
this = xy, returns this. | |
std::string | toString () const noexcept |
Public Attributes | |
value_type | x |
value_type | y |
Static Public Attributes | |
static constexpr const size_t | byte_size = components * sizeof(value_type) |
Size in bytes with value_alignment. | |
static constexpr const size_t | components = 2 |
Number of value_type components. | |
static constexpr const value_type | one = value_type(1) |
static constexpr int | value_alignment = sizeof(value_type) |
value alignment is sizeof(value_type) | |
static constexpr const value_type | zero = value_type(0) |
2D vector using two value_type components.
Component and overall alignment is natural as sizeof(value_type), i.e. sizeof(value_type) == alignof(value_type)
typedef Value_type jau::math::Vector2I< Value_type, >::value_type |
typedef value_type* jau::math::Vector2I< Value_type, >::pointer |
typedef const value_type* jau::math::Vector2I< Value_type, >::const_pointer |
typedef value_type& jau::math::Vector2I< Value_type, >::reference |
typedef const value_type& jau::math::Vector2I< Value_type, >::const_reference |
typedef value_type* jau::math::Vector2I< Value_type, >::iterator |
typedef const value_type* jau::math::Vector2I< Value_type, >::const_iterator |
typedef jau::float_bytes<sizeof(value_type)>::type jau::math::Vector2I< Value_type, >::float_type |
|
inlineconstexprnoexcept |
|
inlineconstexprnoexcept |
|
inlineconstexprnoexcept |
|
constexprdefaultnoexcept |
|
constexprdefaultnoexcept |
|
constexprdefaultnoexcept |
|
constexprdefaultnoexcept |
|
inlineconstexprnoexcept |
|
inlineconstexprnoexcept |
|
inlineexplicitnoexcept |
|
inlineconstexprnoexcept |
|
inlineconstexprnoexcept |
|
inlineexplicitnoexcept |
|
inlineconstexprnoexcept |
|
inlineconstexprnoexcept |
|
inlineconstexprnoexcept |
|
inlineconstexprnoexcept |
|
inlineconstexprnoexcept |
|
inlineconstexprnoexcept |
|
inlineconstexprnoexcept |
|
inlineconstexprnoexcept |
|
inlineconstexprnoexcept |
|
inlineconstexprnoexcept |
|
inlineconstexprnoexcept |
|
inlineconstexprnoexcept |
|
inline |
|
inline |
|
inlinenoexcept |
|
inlineconstexprnoexcept |
|
inlineconstexprnoexcept |
|
inlineconstexprnoexcept |
|
inlineconstexprnoexcept |
|
inline |
|
staticconstexpr |
|
staticconstexpr |
Number of value_type components.
|
staticconstexpr |
|
staticconstexpr |
|
staticconstexpr |
value_type jau::math::Vector2I< Value_type, >::x |
value_type jau::math::Vector2I< Value_type, >::y |