Struct rust_gpu_sdf::operators::Operator
source · pub struct Operator<Op, Sdf> {
pub target: Sdf,
pub op: Op,
}
Expand description
Applies a SignedDistanceOperator
to a SignedDistanceField
.
Fields§
§target: Sdf
§op: Op
Implementations§
source§impl<Dim, Sdf> Operator<TranslateOp<Dim>, Operator<Rotate3dOp, Operator<ScaleOp, Sdf>>>
impl<Dim, Sdf> Operator<TranslateOp<Dim>, Operator<Rotate3dOp, Operator<ScaleOp, Sdf>>>
source§impl<Op, Sdf, const CONDITION: bool> Operator<ConditionalOp<Op, CONDITION>, Sdf>
impl<Op, Sdf, const CONDITION: bool> Operator<ConditionalOp<Op, CONDITION>, Sdf>
pub fn conditional_op(&mut self) -> &mut Op
source§impl<SdfA, SdfB> Operator<DisplaceOp<SdfB>, SdfA>
impl<SdfA, SdfB> Operator<DisplaceOp<SdfB>, SdfA>
source§impl<SdfA, SdfB> Operator<IntersectionOp<SdfB>, SdfA>
impl<SdfA, SdfB> Operator<IntersectionOp<SdfB>, SdfA>
source§impl<Dim, Sdf> Operator<RepeatInfiniteOp<Dim>, Sdf>
impl<Dim, Sdf> Operator<RepeatInfiniteOp<Dim>, Sdf>
source§impl<Dim, Sdf> Operator<RepeatCountOp<Dim>, Sdf>
impl<Dim, Sdf> Operator<RepeatCountOp<Dim>, Sdf>
source§impl<Dim, Sdf> Operator<SidedOp<Dim>, Sdf>
impl<Dim, Sdf> Operator<SidedOp<Dim>, Sdf>
Given an infinitely-thin surface, divide space into interior and exterior based on axis.
source§impl<SdfA, SdfB> Operator<SmoothIntersectionOp<SdfB>, SdfA>
impl<SdfA, SdfB> Operator<SmoothIntersectionOp<SdfB>, SdfA>
source§impl<SdfA, SdfB> Operator<SmoothSubtractionOp<SdfB>, SdfA>
impl<SdfA, SdfB> Operator<SmoothSubtractionOp<SdfB>, SdfA>
source§impl<SdfA, SdfB> Operator<SmoothUnionOp<SdfB>, SdfA>
impl<SdfA, SdfB> Operator<SmoothUnionOp<SdfB>, SdfA>
source§impl<Dim, Sdf> Operator<StretchDistOp<Dim>, Sdf>
impl<Dim, Sdf> Operator<StretchDistOp<Dim>, Sdf>
source§impl<Dim, Sdf> Operator<TranslateOp<Dim>, Sdf>
impl<Dim, Sdf> Operator<TranslateOp<Dim>, Sdf>
pub fn translation(&mut self) -> &mut Dim
source§impl<Sdf> Operator<NormalizeOp, CentralDiffDerivative<Sdf>>
impl<Sdf> Operator<NormalizeOp, CentralDiffDerivative<Sdf>>
source§impl<Sdf> Operator<NormalizeOp, CentralDiffDerivative<Sdf>>
impl<Sdf> Operator<NormalizeOp, CentralDiffDerivative<Sdf>>
source§impl Operator<AxialReflectOp<AXIS_X>, Operator<ReflectOp<Vec2>, Operator<StretchDistOp<Vec2>, Operator<TranslateOp<Vec2>, Operator<SidedOp<Vec2>, EuclideanMetric>>>>>
impl Operator<AxialReflectOp<AXIS_X>, Operator<ReflectOp<Vec2>, Operator<StretchDistOp<Vec2>, Operator<TranslateOp<Vec2>, Operator<SidedOp<Vec2>, EuclideanMetric>>>>>
source§impl Operator<AxialReflectOp<AXIS_XY>, Operator<ReflectOp<Vec2>, Operator<StretchDistOp<Vec2>, Operator<TranslateOp<Vec2>, Operator<SidedOp<Vec2>, EuclideanMetric>>>>>
impl Operator<AxialReflectOp<AXIS_XY>, Operator<ReflectOp<Vec2>, Operator<StretchDistOp<Vec2>, Operator<TranslateOp<Vec2>, Operator<SidedOp<Vec2>, EuclideanMetric>>>>>
source§impl Operator<AxialReflectOp<AXIS_X>, Operator<ReflectOp<Vec2>, Operator<ReflectOp<Vec2>, Operator<StretchDistOp<Vec2>, Operator<TranslateOp<Vec2>, Operator<SidedOp<Vec2>, EuclideanMetric>>>>>>
impl Operator<AxialReflectOp<AXIS_X>, Operator<ReflectOp<Vec2>, Operator<ReflectOp<Vec2>, Operator<StretchDistOp<Vec2>, Operator<TranslateOp<Vec2>, Operator<SidedOp<Vec2>, EuclideanMetric>>>>>>
source§impl Operator<AxialReflectOp<AXIS_XY>, Operator<ReflectOp<Vec2>, Operator<StretchDistOp<Vec2>, Operator<TranslateOp<Vec2>, Operator<SidedOp<Vec2>, EuclideanMetric>>>>>
impl Operator<AxialReflectOp<AXIS_XY>, Operator<ReflectOp<Vec2>, Operator<StretchDistOp<Vec2>, Operator<TranslateOp<Vec2>, Operator<SidedOp<Vec2>, EuclideanMetric>>>>>
source§impl Operator<AxialReflectOp<AXIS_X>, Operator<ReflectOp<Vec2>, Operator<ReflectOp<Vec2>, Operator<ReflectOp<Vec2>, Operator<StretchDistOp<Vec2>, Operator<TranslateOp<Vec2>, Operator<SidedOp<Vec2>, EuclideanMetric>>>>>>>
impl Operator<AxialReflectOp<AXIS_X>, Operator<ReflectOp<Vec2>, Operator<ReflectOp<Vec2>, Operator<ReflectOp<Vec2>, Operator<StretchDistOp<Vec2>, Operator<TranslateOp<Vec2>, Operator<SidedOp<Vec2>, EuclideanMetric>>>>>>>
source§impl Operator<AxialReflectOp<AXIS_XY>, Operator<ReflectOp<Vec2>, Operator<ReflectOp<Vec2>, Operator<StretchDistOp<Vec2>, Operator<TranslateOp<Vec2>, Operator<SidedOp<Vec2>, EuclideanMetric>>>>>>
impl Operator<AxialReflectOp<AXIS_XY>, Operator<ReflectOp<Vec2>, Operator<ReflectOp<Vec2>, Operator<StretchDistOp<Vec2>, Operator<TranslateOp<Vec2>, Operator<SidedOp<Vec2>, EuclideanMetric>>>>>>
Trait Implementations§
source§impl<Op: PartialEq, Sdf: PartialEq> PartialEq<Operator<Op, Sdf>> for Operator<Op, Sdf>
impl<Op: PartialEq, Sdf: PartialEq> PartialEq<Operator<Op, Sdf>> for Operator<Op, Sdf>
source§impl<Op: PartialOrd, Sdf: PartialOrd> PartialOrd<Operator<Op, Sdf>> for Operator<Op, Sdf>
impl<Op: PartialOrd, Sdf: PartialOrd> PartialOrd<Operator<Op, Sdf>> for Operator<Op, Sdf>
1.0.0 · source§fn le(&self, other: &Rhs) -> bool
fn le(&self, other: &Rhs) -> bool
This method tests less than or equal to (for
self
and other
) and is used by the <=
operator. Read more