Skip to main content

ParametricSurface

Trait ParametricSurface 

Source
pub trait ParametricSurface: Send + Sync {
    // Required method
    fn evaluate(&self, u: f32, v: f32) -> Vec3;

    // Provided methods
    fn normal(&self, u: f32, v: f32) -> Vec3 { ... }
    fn color(&self, _u: f32, _v: f32) -> Vec4 { ... }
}
Expand description

A parametric surface defined by a function f(u,v) → position.

Required Methods§

Source

fn evaluate(&self, u: f32, v: f32) -> Vec3

Evaluate the surface position at parameters (u, v) ∈ [0, 1]².

Provided Methods§

Source

fn normal(&self, u: f32, v: f32) -> Vec3

Surface normal at (u, v), computed via finite differences if not overridden.

Source

fn color(&self, _u: f32, _v: f32) -> Vec4

Optional color at (u, v).

Implementors§