SdfCombinationOperations

Trait SdfCombinationOperations 

Source
pub trait SdfCombinationOperations<Scalar: Float + 'static, State: SdfState<Scalar, DIM>, const DIM: usize>: Sdf<Scalar, DIM, State = State> + Sized {
    // Provided methods
    fn add<Rhs>(self, rhs: Rhs) -> Union<Self, Rhs, Scalar, State, DIM>
       where Rhs: Sdf<Scalar, DIM, State = State> { ... }
    fn mul<Rhs>(self, rhs: Rhs) -> Intersection<Self, Rhs, Scalar, State, DIM>
       where Rhs: Sdf<Scalar, DIM, State = State> { ... }
    fn sub<Rhs>(self, rhs: Rhs) -> Difference<Self, Rhs, Scalar, State, DIM>
       where Rhs: Sdf<Scalar, DIM, State = State> { ... }
    fn add_smooth_sigmoid<Rhs>(
        self,
        rhs: Rhs,
        factor: Scalar,
    ) -> SUnionSigmoid<Self, Rhs, Scalar, State, DIM>
       where Rhs: Sdf<Scalar, DIM, State = State> { ... }
    fn add_smooth_exp<Rhs>(
        self,
        rhs: Rhs,
        factor: Scalar,
    ) -> SUnionExponential<Self, Rhs, Scalar, State, DIM>
       where Rhs: Sdf<Scalar, DIM, State = State> { ... }
    fn mul_smooth_exp<Rhs>(
        self,
        rhs: Rhs,
        factor: Scalar,
    ) -> SIntersectionExponential<Self, Rhs, Scalar, State, DIM>
       where Rhs: Sdf<Scalar, DIM, State = State> { ... }
    fn sub_smooth_exp<Rhs>(
        self,
        rhs: Rhs,
        factor: Scalar,
    ) -> SDifferenceExponential<Self, Rhs, Scalar, State, DIM>
       where Rhs: Sdf<Scalar, DIM, State = State> { ... }
}

Provided Methods§

Source

fn add<Rhs>(self, rhs: Rhs) -> Union<Self, Rhs, Scalar, State, DIM>
where Rhs: Sdf<Scalar, DIM, State = State>,

Source

fn mul<Rhs>(self, rhs: Rhs) -> Intersection<Self, Rhs, Scalar, State, DIM>
where Rhs: Sdf<Scalar, DIM, State = State>,

Source

fn sub<Rhs>(self, rhs: Rhs) -> Difference<Self, Rhs, Scalar, State, DIM>
where Rhs: Sdf<Scalar, DIM, State = State>,

Source

fn add_smooth_sigmoid<Rhs>( self, rhs: Rhs, factor: Scalar, ) -> SUnionSigmoid<Self, Rhs, Scalar, State, DIM>
where Rhs: Sdf<Scalar, DIM, State = State>,

Source

fn add_smooth_exp<Rhs>( self, rhs: Rhs, factor: Scalar, ) -> SUnionExponential<Self, Rhs, Scalar, State, DIM>
where Rhs: Sdf<Scalar, DIM, State = State>,

Source

fn mul_smooth_exp<Rhs>( self, rhs: Rhs, factor: Scalar, ) -> SIntersectionExponential<Self, Rhs, Scalar, State, DIM>
where Rhs: Sdf<Scalar, DIM, State = State>,

Source

fn sub_smooth_exp<Rhs>( self, rhs: Rhs, factor: Scalar, ) -> SDifferenceExponential<Self, Rhs, Scalar, State, DIM>
where Rhs: Sdf<Scalar, DIM, State = State>,

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementors§

Source§

impl<T, Scalar: Float + 'static, State: SdfState<Scalar, DIM>, const DIM: usize> SdfCombinationOperations<Scalar, State, DIM> for T
where T: Sdf<Scalar, DIM, State = State> + Sized,