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

Public Types

using UNIT_TYPE = NUMBER
Public Types inherited from sequence_type< NUMBER, 2 >
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

constexpr point_type ()
 using sequence_type < NUMBER, 2 >sequence_type;
 point_type (no_initialize_t)
consteval point2_t semantic_t () const
template<prototype_number A>
constexpr point_type (A a)
template<prototype_number X, prototype_number Y>
constexpr point_type (X x, Y y)
template<prototype_number NUMBER1>
constexpr point_type (const sequence_type< NUMBER1, 2 > &sequence)
constexpr point_type (const lparam &lparam)
constexpr bool is_same_by (UNIT_TYPE e, const point_type &p) const
point_type & operator= (const ::point_type< UNIT_TYPE > &point)
::u32 as_u32 () const noexcept
::u64 as_u64 () const noexcept
point_type & clear ()
point_type & offset (UNIT_TYPE xOffset, UNIT_TYPE yOffset) noexcept
point_type & offset (const sequence_type< UNIT_TYPE, 2 > &sequence) noexcept
point_type & set (UNIT_TYPE x, UNIT_TYPE y) noexcept
template<prototype_point POINT>
::f64 distance (const POINT &point) const
template<prototype_point POINT>
point_type mid (const POINT &point) const
template<prototype_point POINT>
bool operator== (const POINT &point) const noexcept
bool operator== (nullptr_t) const noexcept
template<prototype_number NUMBER1>
point_type< largest_number< UNIT_TYPE, NUMBER1 > > operator* (NUMBER1 n) const
template<prototype_number NUMBER1>
point_type< largest_number< UNIT_TYPE, NUMBER1 > > operator/ (NUMBER1 n) const
template<prototype_size SIZE>
point_type & operator+= (const SIZE &size) noexcept
template<prototype_size SIZE>
point_type & operator-= (const SIZE &size) noexcept
template<prototype_point POINT>
point_type & operator+= (const POINT &point) noexcept
template<prototype_point POINT>
point_type & operator-= (const POINT &point) noexcept
template<prototype_number NUMBER1>
point_type< largest_number< UNIT_TYPE, NUMBER1 > > operator+ (const sequence_type< NUMBER1, 2 > &sequence) const noexcept
template<prototype_number NUMBER1>
point_type< largest_number< UNIT_TYPE, NUMBER1 > > operator- (const sequence_type< NUMBER1, 2 > &sequence) const noexcept
point_type operator- () const noexcept
point_type operator+ () const noexcept
bool operator< (const point_type &point) const noexcept
bool is_null () const
template<prototype_point POINT>
void expand_bounding_box (POINT &top_left, POINT &bottom_right) const
Public Member Functions inherited from sequence_type< NUMBER, 2 >
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

Static Public Member Functions

template<prototype_point POINT>
static void expand_bounding_box (POINT &top_left, POINT &bottom_right, const point_type *ppoint, ::collection::count count)
Static Public Member Functions inherited from sequence_type< NUMBER, 2 >
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)

Additional Inherited Members

Static Public Attributes inherited from sequence_type< NUMBER, 2 >
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 class was generated from the following files: