acme
Foundational cross-platform layer of the ca2 framework
Loading...
Searching...
No Matches
quadruple_type< NUMBER > Struct Template Reference
Inheritance diagram for quadruple_type< NUMBER >:
sequence_type< NUMBER, 4 > sequence_t_type< NUMBER, t_iSize >

Public Types

using UNIT_TYPE = NUMBER
Public Types inherited from sequence_type< NUMBER, 4 >
using sequence_tag
using sequence_size
using SEQUENCE_T
using COORDINATE
using UNIT_TYPE
Public Types inherited from sequence_t_type< NUMBER, t_iSize >
using sequence_tag = sequence_t
using sequence_size = sequence_size_t<t_iSize>
using COORDINATE = NUMBER
using UNIT_TYPE = NUMBER

Public Member Functions

 quadruple_type (no_initialize_t)
 quadruple_type (UNIT_TYPE n)
 quadruple_type (UNIT_TYPE a, UNIT_TYPE b, UNIT_TYPE c=0, UNIT_TYPE d=0)
template<prototype_number NUMBER1>
 quadruple_type (const sequence_type< NUMBER1, 4 > &sequence)
quadruple_type & operator= (const quadruple_type &v)=default
quadruple_type operator* (UNIT_TYPE n) const
quadruple_type operator/ (UNIT_TYPE n) const
quadruple_type operator+ (const quadruple_type &q) const
quadruple_type operator- (const quadruple_type &t) const
quadruple_type & operator+= (const quadruple_type &a)
quadruple_type & operator-= (const quadruple_type &a)
Public Member Functions inherited from sequence_type< NUMBER, 4 >
sequence_type< NUMBER, t_iSize > operator* (const matrix_type< FLOATING1, 3 > &M) const
sequence_type< NUMBER, t_iSize > operator* (const matrix_type< FLOATING1, 4 > &M) const
constexpr ::collection::count get_size () const
constexpr ::collection::count get_count () const
void set_null ()
sequence_type & null ()
constexpr COORDINATE & set_coordinate (::collection::index i, COORDINATE coordinate)
constexpr COORDINATE coordinate (::collection::index i) const
void set_all (COORDINATE coordinate)
bool is_all (COORDINATE coordinate) const
void add2 (const sequence_type &a)
void sub2 (const sequence_type &a)
void mul2 (UNIT_TYPE n)
void set2 (UNIT_TYPE a, UNIT_TYPE b)
void add3 (const sequence_type &a)
void sub3 (const sequence_type &a)
void mul3 (UNIT_TYPE n)
void set3 (UNIT_TYPE a, UNIT_TYPE b, UNIT_TYPE c)
void add4 (const sequence_type &q)
void sub4 (const sequence_type &q)
void mul4 (UNIT_TYPE n)
void set4 (UNIT_TYPE a, UNIT_TYPE b, UNIT_TYPE c, UNIT_TYPE d)
sequence_type operator- () const
sequence_type operator+ (const sequence_type &b) const
sequence_type & operator+= (const sequence_type &a)
sequence_type & operator-= (const sequence_type &a)
sequence_type & operator*= (const sequence_type &a)
sequence_type & operator/= (const sequence_type &a)
bool operator== (const sequence_type &a) const
bool is_every (PREDICATE predicate) const
bool is_empty () const
bool is_set () const
bool is_all_set () const
bool is_all_positive () const
sequence_type prefer_self_coordinate_if (const sequence_type &vectorOther, PREDICATE predicate) const
sequence_type prefer_self_coordinate_if_set (const sequence_type &vectorOther) const
sequence_type prefer_self_coordinate_if_positive (const sequence_type &vectorOther) const
sequence_type pred_prefer_self_coordinate_if (PREDICATE predicate, SOURCE_PREDICATE sourcepredicate) const
sequence_type pred_prefer_self_coordinate_if_set (SOURCE_PREDICATE sourcepredicate) const
sequence_type pred_prefer_self_coordinate_if_positive (SOURCE_PREDICATE sourcepredicate) const
constexpr bool operator!= (const sequence_type &a) const
constexpr const COORDINATE & operator[] (::collection::count i) const
COORDINATE dot_with_left_perpendicular_of (const sequence_type &b)
COORDINATE angle (const sequence_type &b)
sequence_type maximum (const sequence_type &vector) const
sequence_type minimum (const sequence_type &vector) const
sequence_type & operator= (const sequence_type &sequence)
COORDINATE dotted (const sequence_type &vector) const
sequence_type make_unitary () const
const UNIT_TYPE & get_dimension (enum_orientation eorientation) const
const UNIT_TYPE & get_normal_dimension (enum_orientation eorientation) const
UNIT_TYPE & set_dimension (enum_orientation eorientation, UNIT_TYPE l) noexcept
UNIT_TYPE & set_orthogonal_dimension (enum_orientation eorientation, UNIT_TYPE l) noexcept
sequence_type< COORDINATE, 3 > crossed (const sequence_type< COORDINATE, 3 > &b) const
NUMBER squared_modulus () const
NUMBER modulus () const
NUMBER length () const
NUMBER distance (const sequence_type &b) const
sequence_type & normalize ()
sequence_type normalized () const
sequence_type mix (const sequence_type &b, FLOATING t) const
constexpr sequence_type front_right (const sequence_type &sequence3WorldUp)
constexpr sequence_type right_up (const sequence_type &front)
sequence_type cos () const
sequence_type sin () const
auto as_translation_matrix () const
auto as_scaling_matrix () const

Additional Inherited Members

Static Public Member Functions inherited from sequence_type< NUMBER, 4 >
static sequence_type Null ()
static void mix2 (const sequence_type &a, const sequence_type &b, UNIT_TYPE t, sequence_type &c)
static void mix3 (const sequence_type &a, const sequence_type &b, UNIT_TYPE t, sequence_type &c)
static void mix4 (const sequence_type &a, const sequence_type &b, UNIT_TYPE t, sequence_type &c)
Static Public Attributes inherited from sequence_type< NUMBER, 4 >
static const ::i32 SIZE
static constexpr bool IS_MATRIX
Static Public Attributes inherited from sequence_t_type< NUMBER, t_iSize >
static const ::i32 SIZE = t_iSize

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