HikoGUI
A low latency retained GUI
Loading...
Searching...
No Matches
hi::v1::bezier_curve::sdf_distance_result Struct Reference

Public Member Functions

constexpr sdf_distance_result (sdf_distance_result const &) noexcept=default
constexpr sdf_distance_result (sdf_distance_result &&) noexcept=default
constexpr sdf_distance_result & operator= (sdf_distance_result const &) noexcept=default
constexpr sdf_distance_result & operator= (sdf_distance_result &&) noexcept=default
constexpr sdf_distance_result (bezier_curve const *curve) noexcept
hi_force_inline constexpr float orthogonality () const noexcept
 The orthogonality of the line PN and the tangent of the curve at N.
hi_force_inline float distance () const noexcept
hi_force_inline float signed_distance () const noexcept
hi_force_inline constexpr bool operator< (sdf_distance_result const &rhs) const noexcept

Data Fields

vector2 PN
 The vector between P and N.
bezier_curve const * curve = nullptr
float t = 0.0f
 Linear position on the curve-segment, 0.0 and 1.0 are end-points.
float sq_distance = std::numeric_limits<float>::max()
 The square distance between P and N.

Member Function Documentation

◆ orthogonality()

hi_force_inline constexpr float hi::v1::bezier_curve::sdf_distance_result::orthogonality ( ) const
inlinenodiscardconstexprnoexcept

The orthogonality of the line PN and the tangent of the curve at N.

Field Documentation

◆ PN

vector2 hi::v1::bezier_curve::sdf_distance_result::PN

The vector between P and N.

◆ sq_distance

float hi::v1::bezier_curve::sdf_distance_result::sq_distance = std::numeric_limits<float>::max()

The square distance between P and N.

◆ t

float hi::v1::bezier_curve::sdf_distance_result::t = 0.0f

Linear position on the curve-segment, 0.0 and 1.0 are end-points.


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