omni::math
NAME

omni::math

A namespace of omni

#include <omni/math.hpp>
namespace omni::math

MEMBERS

omni::math::compat
omni::math::angle_measure
omni::math::circle_area
omni::math::dimensional
omni::math::midpoint_rounding
omni::math::ordinal_name
omni::math::rotation
omni::math::rotation_angle
omni::math::rotation_direction
omni::math::shape_comparator
omni::math::transformation
omni::math::triangle_measure
template < typename T > inline bool omni::math::angles_are_coterminal(T x, T y)
inline double omni::math::arc_length(double radius, double degrees)
template < typename T > inline bool omni::math::are_equal(T x, T y, T epsilon)
template <> inline bool omni::math::are_equal<bool>(bool x, bool y)
template <> inline bool omni::math::are_equal<int16_t>(int16_t x, int16_t y, int16_t epsilon)
template <> inline bool omni::math::are_equal<int32_t>(int32_t x, int32_t y, int32_t epsilon)
template <> inline bool omni::math::are_equal<int64_t>(int64_t x, int64_t y, int64_t epsilon)
template <> inline bool omni::math::are_equal<int8_t>(int8_t x, int8_t y, int8_t epsilon)
template <> inline bool omni::math::are_equal<uint16_t>(uint16_t x, uint16_t y, uint16_t epsilon)
template <> inline bool omni::math::are_equal<uint32_t>(uint32_t x, uint32_t y, uint32_t epsilon)
template <> inline bool omni::math::are_equal<uint64_t>(uint64_t x, uint64_t y, uint64_t epsilon)
template <> inline bool omni::math::are_equal<uint8_t>(uint8_t x, uint8_t y, uint8_t epsilon)
template < typename T > inline double omni::math::area_of_circle(T radius)
template < typename T > inline double omni::math::area_of_circle_sector(T radius, double degrees)
template < typename T > inline double omni::math::area_of_circle_segment(T radius, double degrees)
template < typename T > inline double omni::math::area_of_quadrilateral(T a, T b, T c, T d, double angle_a_degrees, double angle_c_degrees)
template < typename T > inline T omni::math::area_of_rectangle(T width, T height)
template < typename T > inline double omni::math::area_of_triangle(T base, T height)
template < typename T > inline double omni::math::area_of_triangle_sas(double degrees, T side1, T side2)
template < typename T > inline double omni::math::area_of_triangle_sss(T a, T b, T c)
template < typename T > inline double omni::math::calculate_angle(T x, T y, T bx, T by, T cx, T cy)
template < typename T > inline double omni::math::calculate_angle_radians(T x, T y, T bx, T by, T cx, T cy)
template < typename T > inline void omni::math::calculate_point(T start_x, T start_y, T end_x, T end_y, T len, T& out_x, T& out_y)
template < typename T > inline double omni::math::circle_circumference(T radius)
template < typename T > inline bool omni::math::circle_contains_point(T center_x, T center_y, double radius, T x, T y, bool include_edge)
template < typename T > inline bool omni::math::circles_intersect(T x1, T y1, double r1, T x2, T y2, double r2, bool include_edge)
template < typename T > inline T& omni::math::clamp(const T& value, const T& min_val, const T& max_val)
inline double omni::math::deg_to_rad(double deg)
inline double omni::math::degrees_to_radians(double deg)
template < typename T > inline T omni::math::delta(T a, T b)
template < typename T > inline T omni::math::delta_squared(T a, T b)
template < typename T > inline double omni::math::distance_between_2_points(T start_x, T start_y, T end_x, T end_y)
template < typename T > inline void omni::math::extend_line(T start_x, T start_y, T end_x, T end_y, T length, T& out_x, T& out_y)
inline double omni::math::fractional_part(double val)
static double omni::math::ieee_remainder(double x, double y)
inline double omni::math::integral_part(double val)
template < typename T > inline bool omni::math::is_even(T val)
inline bool omni::math::is_nan(long double val)
inline bool omni::math::is_odd(int8_t val)
template < typename T > inline double omni::math::lerp_x(T x1, T y1, T x2, T y2, T y)
template < typename T > inline double omni::math::lerp_y(T x1, T y1, T x2, T y2, T x)
template < typename T > inline double omni::math::linear_interpolation_x(T x1, T y1, T x2, T y2, T y)
template < typename T > inline double omni::math::linear_interpolation_y(T x1, T y1, T x2, T y2, T x)
template < typename T > inline bool omni::math::lines_intersect(T line1_x1, T line1_y1, T line1_x2, T line1_y2, T line2_x1, T line2_y1, T line2_x2, T line2_y2)
template < typename T > inline void omni::math::midpoint(T start_x, T start_y, T end_x, T end_y, T& mid_x, T& mid_y)
template < typename T > inline void omni::math::midpoint3d(T start_x, T start_y, T start_z, T end_x, T end_y, T end_z, T& mid_x, T& mid_y, T& mid_z)
template < typename T > inline omni::math::ordinal_name omni::math::octant(T x, T y, T z)
template < typename T > inline void omni::math::point_on_circle(double degrees, double radius, T center_x, T center_y, T& out_x, T& out_y)
template <> inline void omni::math::point_on_circle<int16_t>(double degrees, double radius, int16_t center_x, int16_t center_y, int16_t& out_x, int16_t& out_y)
template <> inline void omni::math::point_on_circle<int32_t>(double degrees, double radius, int32_t center_x, int32_t center_y, int32_t& out_x, int32_t& out_y)
template <> inline void omni::math::point_on_circle<int64_t>(double degrees, double radius, int64_t center_x, int64_t center_y, int64_t& out_x, int64_t& out_y)
template <> inline void omni::math::point_on_circle<int8_t>(double degrees, double radius, int8_t center_x, int8_t center_y, int8_t& out_x, int8_t& out_y)
template <> inline void omni::math::point_on_circle<uint16_t>(double degrees, double radius, uint16_t center_x, uint16_t center_y, uint16_t& out_x, uint16_t& out_y)
template <> inline void omni::math::point_on_circle<uint32_t>(double degrees, double radius, uint32_t center_x, uint32_t center_y, uint32_t& out_x, uint32_t& out_y)
template <> inline void omni::math::point_on_circle<uint64_t>(double degrees, double radius, uint64_t center_x, uint64_t center_y, uint64_t& out_x, uint64_t& out_y)
template <> inline void omni::math::point_on_circle<uint8_t>(double degrees, double radius, uint8_t center_x, uint8_t center_y, uint8_t& out_x, uint8_t& out_y)
template < typename T > inline void omni::math::point_on_circle_unsafe(double degrees, double radius, T center_x, T center_y, T& out_x, T& out_y)
template < typename T > inline void omni::math::quadrant(T x, T y, omni::math::ordinal_name::enum_t& quad)
template < typename T > inline void omni::math::quadratic(T a, T b, T c, T& x_plus, T& x_minus)
template < typename T > inline bool omni::math::quadrilateral_contains_point(T x, T y, T ax, T ay, T bx, T by, T cx, T cy, T dx, T dy)
template < typename T > inline void omni::math::quadrilateral_get_centroid(T ax, T ay, T bx, T by, T cx, T cy, T dx, T dy, T& out_x, T& out_y)
template < typename T > inline void omni::math::quadrilateral_get_circumcenter(T ax, T ay, T bx, T by, T cx, T cy, T dx, T dy, T& out_x, T& out_y)
template < typename T > inline void omni::math::quadrilateral_get_incenter(T ax, T ay, T bx, T by, T cx, T cy, T dx, T dy, T& out_x, T& out_y)
template < typename T > inline bool omni::math::quadrilateral_intersects(T ax1, T ay1, T bx1, T by1, T cx1, T cy1, T dx1, T dy1, T ax2, T ay2, T bx2, T by2, T cx2, T cy2, T dx2, T dy2)
template < typename T > inline void omni::math::quadrilateral_reflect(T& ax, T& ay, T& bx, T& by, T& cx, T& cy, T& dx, T& dy)
template < typename T > inline void omni::math::quadrilateral_rotate_abcd(double degrees, T x1, T y1, const omni::math::rotation_direction& dir, T& x2, T& y2, T& x3, T& y3, T& x4, T& y4)
template < typename T > inline void omni::math::quadrilateral_rotate_centroid(double degrees, const omni::math::rotation_direction& dir, T& ax, T& ay, T& bx, T& by, T& cx, T& cy, T& dx, T& dy)
template < typename T > inline void omni::math::quadrilateral_rotate_circumcenter(double degrees, const omni::math::rotation_direction& dir, T& ax, T& ay, T& bx, T& by, T& cx, T& cy, T& dx, T& dy)
template < typename T > inline void omni::math::quadrilateral_rotate_incenter(double degrees, const omni::math::rotation_direction& dir, T& ax, T& ay, T& bx, T& by, T& cx, T& cy, T& dx, T& dy)
template < typename T > inline void omni::math::quadrilateral_rotate_origin(double degrees, const omni::math::rotation_direction& dir, T& ax, T& ay, T& bx, T& by, T& cx, T& cy, T& dx, T& dy)
template < typename T > inline void omni::math::quadrilateral_rotate_point(double degrees, T x, T y, const omni::math::rotation_direction& dir, T& ax, T& ay, T& bx, T& by, T& cx, T& cy, T& dx, T& dy)
template < typename T > inline void omni::math::quadrilateral_translate_angle(double degrees, T distance, T& ax, T& ay, T& bx, T& by, T& cx, T& cy, T& dx, T& dy)
template < typename T > inline void omni::math::quadrilateral_translate_xy(T x, T y, T& ax, T& ay, T& bx, T& by, T& cx, T& cy, T& dx, T& dy)
inline double omni::math::rad_to_deg(double rad)
inline double omni::math::radians_to_degrees(double rad)
template < typename T > inline double omni::math::radius_from_area(T area)
template < typename T > inline void omni::math::rectangle_get_centroid(T ax, T ay, T bx, T by, T cx, T cy, T dx, T dy, T& out_x, T& out_y)
template < typename T > inline bool omni::math::rectangle_ltrb_contains_point(T left, T top, T right, T bottom, T x, T y)
template < typename T > inline void omni::math::rectangle_reflect(T& x, T& y, T w, T h)
template < typename T > inline void omni::math::rectangle_rotate_origin(const omni::math::rotation_angle& degrees, const omni::math::rotation_direction& dir, T& ax, T& ay, T& w, T& h)
template < typename T > inline void omni::math::rectangle_rotate_point(const omni::math::rotation_angle& degrees, T x, T y, const omni::math::rotation_direction& dir, T& ax, T& ay, T& w, T& h)
template < typename T > inline void omni::math::rectangle_translate_angle(double degrees, T distance, T& ax, T& ay)
template < typename T > inline void omni::math::rectangle_translate_xy(T x, T y, T& ax, T& ay)
template < typename T > inline bool omni::math::rectangle_xywh_contains_point(T x, T y, T w, T h, T x2, T y2)
template < typename T > inline void omni::math::rotate_point(double degrees, const omni::math::rotation_direction& dir, T center_x, T center_y, T& rotate_x, T& rotate_y)
inline double omni::math::round(double val, uint8_t digits, const omni::math::midpoint_rounding& direction)
template < typename T > inline T omni::math::sign(T val)
template < typename T > inline double omni::math::slope(T start_x, T start_y, T end_x, T end_y)
template < typename T > inline T omni::math::summation(T index, T end, const omni::delegate1<T, T>& sum)
template < typename T > inline bool omni::math::triangle_contains_point(T x, T y, T ax, T ay, T bx, T by, T cx, T cy)
template < typename T > inline void omni::math::triangle_get_centroid(T ax, T ay, T bx, T by, T cx, T cy, T& out_x, T& out_y)
template < typename T > inline void omni::math::triangle_get_circumcenter(T ax, T ay, T bx, T by, T cx, T cy, T& out_x, T& out_y)
template < typename T > inline void omni::math::triangle_get_incenter(T ax, T ay, T bx, T by, T cx, T cy, T& out_x, T& out_y)
template < typename T > inline bool omni::math::triangle_intersects(T ax1, T ay1, T bx1, T by1, T cx1, T cy1, T ax2, T ay2, T bx2, T by2, T cx2, T cy2)
template < typename T > inline void omni::math::triangle_reflect(T& ax, T& ay, T& bx, T& by, T& cx, T& cy)
template < typename T > inline void omni::math::triangle_rotate_abc(double degrees, T x1, T y1, const omni::math::rotation_direction& dir, T& x2, T& y2, T& x3, T& y3)
template < typename T > inline void omni::math::triangle_rotate_centroid(double degrees, const omni::math::rotation_direction& dir, T& ax, T& ay, T& bx, T& by, T& cx, T& cy)
template < typename T > inline void omni::math::triangle_rotate_circumcenter(double degrees, const omni::math::rotation_direction& dir, T& ax, T& ay, T& bx, T& by, T& cx, T& cy)
template < typename T > inline void omni::math::triangle_rotate_incenter(double degrees, const omni::math::rotation_direction& dir, T& ax, T& ay, T& bx, T& by, T& cx, T& cy)
template < typename T > inline void omni::math::triangle_rotate_origin(double degrees, const omni::math::rotation_direction& dir, T& ax, T& ay, T& bx, T& by, T& cx, T& cy)
template < typename T > inline void omni::math::triangle_rotate_point(double degrees, T x, T y, const omni::math::rotation_direction& dir, T& ax, T& ay, T& bx, T& by, T& cx, T& cy)
template < typename T > inline void omni::math::triangle_translate_angle(double degrees, T distance, T& ax, T& ay, T& bx, T& by, T& cx, T& cy)
template < typename T > inline void omni::math::triangle_translate_xy(T x, T y, T& ax, T& ay, T& bx, T& by, T& cx, T& cy)
inline double omni::math::trunc(double val)
inline double omni::math::truncate(double val)
omni::math::E
omni::math::E_F
omni::math::PI
omni::math::PI_180
omni::math::PI_F
omni::math::PI_F_180
omni::math::RADS
omni::math::RADS_COS
omni::math::RADS_SIN
omni::math::TAU
omni::math::TAU_F
omni::math::double

SYNOPSIS

No synopsis.

top

DESCRIPTION

No description.

top