Shape

Trait Shape 

Source
pub trait Shape {
    type Brep;

    // Required methods
    fn compute_brep(
        &self,
        services: &mut Services,
        debug_info: &mut DebugInfo,
    ) -> Self::Brep;
    fn bounding_volume(&self) -> Aabb<3>;
}
Expand description

Implemented for all operations from the fj crate

Required Associated Types§

Source

type Brep

The type that is used for the shape’s boundary representation

Required Methods§

Source

fn compute_brep( &self, services: &mut Services, debug_info: &mut DebugInfo, ) -> Self::Brep

Compute the boundary representation of the shape

Source

fn bounding_volume(&self) -> Aabb<3>

Access the axis-aligned bounding box of a shape

If a shape is empty, its Aabb’s min and max points must be equal (but are otherwise not specified).

Implementations on Foreign Types§

Source§

impl Shape for Shape

Source§

type Brep = FaceSet

Source§

fn compute_brep( &self, services: &mut Services, debug_info: &mut DebugInfo, ) -> Self::Brep

Source§

fn bounding_volume(&self) -> Aabb<3>

Source§

impl Shape for Shape2d

Source§

type Brep = Sketch

Source§

fn compute_brep( &self, services: &mut Services, debug_info: &mut DebugInfo, ) -> Self::Brep

Source§

fn bounding_volume(&self) -> Aabb<3>

Source§

impl Shape for Group

Source§

type Brep = FaceSet

Source§

fn compute_brep( &self, services: &mut Services, debug_info: &mut DebugInfo, ) -> Self::Brep

Source§

fn bounding_volume(&self) -> Aabb<3>

Source§

impl Shape for Difference2d

Source§

type Brep = Sketch

Source§

fn compute_brep( &self, services: &mut Services, debug_info: &mut DebugInfo, ) -> Self::Brep

Source§

fn bounding_volume(&self) -> Aabb<3>

Source§

impl Shape for Sketch

Source§

type Brep = Sketch

Source§

fn compute_brep(&self, services: &mut Services, _: &mut DebugInfo) -> Self::Brep

Source§

fn bounding_volume(&self) -> Aabb<3>

Source§

impl Shape for Sweep

Source§

type Brep = Solid

Source§

fn compute_brep( &self, services: &mut Services, debug_info: &mut DebugInfo, ) -> Self::Brep

Source§

fn bounding_volume(&self) -> Aabb<3>

Source§

impl Shape for Transform

Source§

type Brep = FaceSet

Source§

fn compute_brep( &self, services: &mut Services, debug_info: &mut DebugInfo, ) -> Self::Brep

Source§

fn bounding_volume(&self) -> Aabb<3>

Implementors§