Trait truck_modeling::base::Curve[][src]

pub trait Curve: Clone {
    type Point;
    type Vector;
    pub fn subs(&self, t: f64) -> Self::Point;
pub fn der(&self, t: f64) -> Self::Vector;
pub fn parameter_range(&self) -> (f64, f64);
pub fn inverse(&self) -> Self; pub fn front(&self) -> Self::Point { ... }
pub fn back(&self) -> Self::Point { ... } }

Parametric curves

Associated Types

type Point[src]

The curve is in the space of Self::Point.

type Vector[src]

The derivation vector of the curve.

Loading content...

Required methods

pub fn subs(&self, t: f64) -> Self::Point[src]

Substitutes the parameter t.

pub fn der(&self, t: f64) -> Self::Vector[src]

Returns the derivation.

pub fn parameter_range(&self) -> (f64, f64)[src]

The range of the parameter of the curve.

pub fn inverse(&self) -> Self[src]

Returns the inverse of the curve.

Loading content...

Provided methods

pub fn front(&self) -> Self::Point[src]

The front end point of the curve.

pub fn back(&self) -> Self::Point[src]

The back end point of the curve.

Loading content...

Implementations on Foreign Types

impl Curve for ()[src]

Implementation for the test of topological methods.

type Point = ()

type Vector = ()

impl Curve for (usize, usize)[src]

Implementation for the test of topological methods.

type Point = usize

type Vector = usize

impl<V> Curve for NURBSCurve<V> where
    V: Homogeneous<f64>, 
[src]

type Point = <V as Homogeneous<f64>>::Point

type Vector = <<V as Homogeneous<f64>>::Point as EuclideanSpace>::Diff

impl<V> Curve for BSplineCurve<V> where
    V: TangentSpace<f64>,
    <V as TangentSpace<f64>>::Space: EuclideanSpace,
    <<V as TangentSpace<f64>>::Space as EuclideanSpace>::Scalar == f64,
    <<V as TangentSpace<f64>>::Space as EuclideanSpace>::Diff == V, 
[src]

type Point = <V as TangentSpace<f64>>::Space

type Vector = V

Loading content...

Implementors

Loading content...