Struct lyon_geom::Monotonic [−][src]
pub struct Monotonic<T> { /* fields omitted */ }
A x and y monotonic curve segment, for example Monotonic<QuadraticBezierSegment>
.
Methods
impl<T: Segment> Monotonic<T>
[src]
impl<T: Segment> Monotonic<T>
ⓘImportant traits for &'a mut Rpub fn segment(&self) -> &T
[src]
pub fn segment(&self) -> &T
pub fn from(&self) -> Point<T::Scalar>
[src]
pub fn from(&self) -> Point<T::Scalar>
pub fn to(&self) -> Point<T::Scalar>
[src]
pub fn to(&self) -> Point<T::Scalar>
pub fn sample(&self, t: T::Scalar) -> Point<T::Scalar>
[src]
pub fn sample(&self, t: T::Scalar) -> Point<T::Scalar>
pub fn x(&self, t: T::Scalar) -> T::Scalar
[src]
pub fn x(&self, t: T::Scalar) -> T::Scalar
pub fn y(&self, t: T::Scalar) -> T::Scalar
[src]
pub fn y(&self, t: T::Scalar) -> T::Scalar
pub fn derivative(&self, t: T::Scalar) -> Vector<T::Scalar>
[src]
pub fn derivative(&self, t: T::Scalar) -> Vector<T::Scalar>
pub fn dx(&self, t: T::Scalar) -> T::Scalar
[src]
pub fn dx(&self, t: T::Scalar) -> T::Scalar
pub fn dy(&self, t: T::Scalar) -> T::Scalar
[src]
pub fn dy(&self, t: T::Scalar) -> T::Scalar
pub fn split_range(&self, t_range: Range<T::Scalar>) -> Self
[src]
pub fn split_range(&self, t_range: Range<T::Scalar>) -> Self
pub fn split(&self, t: T::Scalar) -> (Self, Self)
[src]
pub fn split(&self, t: T::Scalar) -> (Self, Self)
pub fn before_split(&self, t: T::Scalar) -> Self
[src]
pub fn before_split(&self, t: T::Scalar) -> Self
pub fn after_split(&self, t: T::Scalar) -> Self
[src]
pub fn after_split(&self, t: T::Scalar) -> Self
pub fn flip(&self) -> Self
[src]
pub fn flip(&self) -> Self
pub fn approximate_length(&self, tolerance: T::Scalar) -> T::Scalar
[src]
pub fn approximate_length(&self, tolerance: T::Scalar) -> T::Scalar
impl<S: Scalar> Monotonic<QuadraticBezierSegment<S>>
[src]
impl<S: Scalar> Monotonic<QuadraticBezierSegment<S>>
pub fn solve_t_for_x(&self, x: S) -> S
[src]
pub fn solve_t_for_x(&self, x: S) -> S
pub fn solve_t_for_y(&self, y: S) -> S
[src]
pub fn solve_t_for_y(&self, y: S) -> S
pub fn split_at_x(&self, x: S) -> (Self, Self)
[src]
pub fn split_at_x(&self, x: S) -> (Self, Self)
ⓘImportant traits for ArrayVec<A>pub fn intersections_t(
&self,
self_t_range: Range<S>,
other: &Self,
other_t_range: Range<S>,
tolerance: S
) -> ArrayVec<[(S, S); 2]>
[src]
pub fn intersections_t(
&self,
self_t_range: Range<S>,
other: &Self,
other_t_range: Range<S>,
tolerance: S
) -> ArrayVec<[(S, S); 2]>
ⓘImportant traits for ArrayVec<A>pub fn intersections(
&self,
self_t_range: Range<S>,
other: &Self,
other_t_range: Range<S>,
tolerance: S
) -> ArrayVec<[Point<S>; 2]>
[src]
pub fn intersections(
&self,
self_t_range: Range<S>,
other: &Self,
other_t_range: Range<S>,
tolerance: S
) -> ArrayVec<[Point<S>; 2]>
pub fn first_intersection_t(
&self,
self_t_range: Range<S>,
other: &Self,
other_t_range: Range<S>,
tolerance: S
) -> Option<(S, S)>
[src]
pub fn first_intersection_t(
&self,
self_t_range: Range<S>,
other: &Self,
other_t_range: Range<S>,
tolerance: S
) -> Option<(S, S)>
pub fn first_intersection(
&self,
self_t_range: Range<S>,
other: &Self,
other_t_range: Range<S>,
tolerance: S
) -> Option<Point<S>>
[src]
pub fn first_intersection(
&self,
self_t_range: Range<S>,
other: &Self,
other_t_range: Range<S>,
tolerance: S
) -> Option<Point<S>>
impl<S: Scalar> Monotonic<CubicBezierSegment<S>>
[src]
impl<S: Scalar> Monotonic<CubicBezierSegment<S>>
pub fn solve_t_for_x(&self, x: S, t_range: Range<S>, tolerance: S) -> S
[src]
pub fn solve_t_for_x(&self, x: S, t_range: Range<S>, tolerance: S) -> S
pub fn split_at_x(&self, x: S) -> (Self, Self)
[src]
pub fn split_at_x(&self, x: S) -> (Self, Self)
Trait Implementations
impl<T: Copy> Copy for Monotonic<T>
[src]
impl<T: Copy> Copy for Monotonic<T>
impl<T: Clone> Clone for Monotonic<T>
[src]
impl<T: Clone> Clone for Monotonic<T>
fn clone(&self) -> Monotonic<T>
[src]
fn clone(&self) -> Monotonic<T>
Returns a copy of the value. Read more
fn clone_from(&mut self, source: &Self)
1.0.0[src]
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from source
. Read more
impl<T: Debug> Debug for Monotonic<T>
[src]
impl<T: Debug> Debug for Monotonic<T>
fn fmt(&self, f: &mut Formatter) -> Result
[src]
fn fmt(&self, f: &mut Formatter) -> Result
Formats the value using the given formatter. Read more
impl<T: Segment> Segment for Monotonic<T>
[src]
impl<T: Segment> Segment for Monotonic<T>
type Scalar = T::Scalar
fn from(&self) -> Point<T::Scalar>
[src]
fn from(&self) -> Point<T::Scalar>
Start of the curve.
fn to(&self) -> Point<T::Scalar>
[src]
fn to(&self) -> Point<T::Scalar>
End of the curve.
fn sample(&self, t: T::Scalar) -> Point<T::Scalar>
[src]
fn sample(&self, t: T::Scalar) -> Point<T::Scalar>
Sample the curve at t (expecting t between 0 and 1).
fn x(&self, t: T::Scalar) -> T::Scalar
[src]
fn x(&self, t: T::Scalar) -> T::Scalar
Sample x at t (expecting t between 0 and 1).
fn y(&self, t: T::Scalar) -> T::Scalar
[src]
fn y(&self, t: T::Scalar) -> T::Scalar
Sample y at t (expecting t between 0 and 1).
fn derivative(&self, t: T::Scalar) -> Vector<T::Scalar>
[src]
fn derivative(&self, t: T::Scalar) -> Vector<T::Scalar>
Sample the derivative at t (expecting t between 0 and 1).
fn dx(&self, t: T::Scalar) -> T::Scalar
[src]
fn dx(&self, t: T::Scalar) -> T::Scalar
Sample x derivative at t (expecting t between 0 and 1).
fn dy(&self, t: T::Scalar) -> T::Scalar
[src]
fn dy(&self, t: T::Scalar) -> T::Scalar
Sample y derivative at t (expecting t between 0 and 1).
fn split(&self, t: T::Scalar) -> (Self, Self)
[src]
fn split(&self, t: T::Scalar) -> (Self, Self)
Split this curve into two sub-curves.
fn before_split(&self, t: T::Scalar) -> Self
[src]
fn before_split(&self, t: T::Scalar) -> Self
Return the curve before the split point.
fn after_split(&self, t: T::Scalar) -> Self
[src]
fn after_split(&self, t: T::Scalar) -> Self
Return the curve after the split point.
fn split_range(&self, t_range: Range<T::Scalar>) -> Self
[src]
fn split_range(&self, t_range: Range<T::Scalar>) -> Self
Return the curve inside a given range of t. Read more
fn flip(&self) -> Self
[src]
fn flip(&self) -> Self
Swap the direction of the segment.
fn approximate_length(&self, tolerance: T::Scalar) -> T::Scalar
[src]
fn approximate_length(&self, tolerance: T::Scalar) -> T::Scalar
Compute the length of the segment using a flattened approximation.