[−][src]Trait truck_geometry::base::Surface
Parametric surface
Associated Types
type Point
[src]
The surface is in the space of Self::Point
.
type Vector
[src]
The derivation vector of the curve.
type Curve: Curve
[src]
The boundary curve
Required methods
pub fn subs(&self, u: f64, v: f64) -> Self::Point
[src]
Substitutes the parameter (u, v)
.
pub fn uder(&self, u: f64, v: f64) -> Self::Vector
[src]
Returns the derivation by u
.
pub fn vder(&self, u: f64, v: f64) -> Self::Vector
[src]
Returns the derivation by v
.
pub fn normal(&self, u: f64, v: f64) -> Self::Vector
[src]
Returns the normal vector at (u, v)
.
pub fn parameter_range(&self) -> ((f64, f64), (f64, f64))
[src]
The range of the parameter of the surface.
pub fn inverse(&self) -> Self
[src]
Returns the inverse of the surface.
pub fn include(&self, curve: &Self::Curve) -> bool
[src]
Returns whether the curve curve
is included in the surface self
.
Implementations on Foreign Types
impl Surface for ()
[src]
Implementation for the test of topological methods.
type Point = ()
type Vector = ()
type Curve = ()
pub fn subs(&self, f64, f64) -> <() as Surface>::Point
[src]
pub fn uder(&self, f64, f64) -> <() as Surface>::Vector
[src]
pub fn vder(&self, f64, f64) -> <() as Surface>::Vector
[src]
pub fn normal(&self, f64, f64) -> <() as Surface>::Vector
[src]
pub fn parameter_range(&self) -> ((f64, f64), (f64, f64))
[src]
pub fn inverse(&self)
[src]
pub fn include(&self, &()) -> bool
[src]
Implementors
impl Surface for BSplineSurface<Vector2>
[src]
type Point = Point2
type Vector = Vector2
type Curve = BSplineCurve<Vector2>
pub fn subs(&self, u: f64, v: f64) -> Self::Point
[src]
pub fn uder(&self, u: f64, v: f64) -> Self::Vector
[src]
pub fn vder(&self, u: f64, v: f64) -> Self::Vector
[src]
pub fn normal(&self, _: f64, _: f64) -> Self::Vector
[src]
zero identity
pub fn parameter_range(&self) -> ((f64, f64), (f64, f64))
[src]
pub fn inverse(&self) -> Self
[src]
pub fn include(&self, curve: &BSplineCurve<Vector2>) -> bool
[src]
impl Surface for BSplineSurface<Vector3>
[src]
type Point = Point3
type Vector = Vector3
type Curve = BSplineCurve<Vector3>
pub fn subs(&self, u: f64, v: f64) -> Self::Point
[src]
pub fn uder(&self, u: f64, v: f64) -> Self::Vector
[src]
pub fn vder(&self, u: f64, v: f64) -> Self::Vector
[src]
pub fn normal(&self, u: f64, v: f64) -> Self::Vector
[src]
pub fn parameter_range(&self) -> ((f64, f64), (f64, f64))
[src]
pub fn inverse(&self) -> Self
[src]
pub fn include(&self, curve: &BSplineCurve<Vector3>) -> bool
[src]
impl Surface for NURBSSurface<Vector3>
[src]
type Point = Point2
type Vector = Vector2
type Curve = NURBSCurve<Vector3>
pub fn subs(&self, u: f64, v: f64) -> Self::Point
[src]
pub fn uder(&self, u: f64, v: f64) -> Self::Vector
[src]
pub fn vder(&self, u: f64, v: f64) -> Self::Vector
[src]
pub fn normal(&self, _: f64, _: f64) -> Self::Vector
[src]
zero identity