pub struct Shell { /* private fields */ }
Expand description
A 3-dimensional closed shell
Implementations§
Trait Implementations§
source§impl AddHole for Shell
impl AddHole for Shell
source§fn add_blind_hole(
&self,
location: HoleLocation<'_>,
radius: impl Into<Scalar>,
path: impl Into<Vector<3>>,
core: &mut Core
) -> Self
fn add_blind_hole( &self, location: HoleLocation<'_>, radius: impl Into<Scalar>, path: impl Into<Vector<3>>, core: &mut Core ) -> Self
Add a blind hole at the provided location
source§fn add_through_hole(
&self,
[entry_location, exit_location]: [HoleLocation<'_>; 2],
radius: impl Into<Scalar>,
core: &mut Core
) -> Self
fn add_through_hole( &self, [entry_location, exit_location]: [HoleLocation<'_>; 2], radius: impl Into<Scalar>, core: &mut Core ) -> Self
Add a through hole between the provided locations
source§impl AllHalfEdgesWithSurface for Shell
impl AllHalfEdgesWithSurface for Shell
source§impl Approx for &Shell
impl Approx for &Shell
§type Approximation = BTreeSet<FaceApprox>
type Approximation = BTreeSet<FaceApprox>
The approximation of the object
§type Cache = HalfEdgeApproxCache
type Cache = HalfEdgeApproxCache
The cache used to cache approximation results
source§fn approx_with_cache(
self,
tolerance: impl Into<Tolerance>,
cache: &mut Self::Cache,
core: &mut Core
) -> Self::Approximation
fn approx_with_cache( self, tolerance: impl Into<Tolerance>, cache: &mut Self::Cache, core: &mut Core ) -> Self::Approximation
Approximate the object, using the provided cache Read more
source§impl BoundingVerticesOfHalfEdge for Shell
impl BoundingVerticesOfHalfEdge for Shell
source§fn bounding_vertices_of_half_edge(
&self,
half_edge: &Handle<HalfEdge>
) -> Option<CurveBoundary<Vertex>>
fn bounding_vertices_of_half_edge( &self, half_edge: &Handle<HalfEdge> ) -> Option<CurveBoundary<Vertex>>
Determine the bounding vertices of a half-edge Read more
source§impl BoundingVolume<3> for Shell
impl BoundingVolume<3> for Shell
source§impl BuildShell for Shell
impl BuildShell for Shell
source§fn from_vertices_and_indices(
vertices: impl IntoIterator<Item = impl Into<Point<3>>>,
indices: impl IntoIterator<Item = [usize; 3]>,
core: &mut Core
) -> Shell
fn from_vertices_and_indices( vertices: impl IntoIterator<Item = impl Into<Point<3>>>, indices: impl IntoIterator<Item = [usize; 3]>, core: &mut Core ) -> Shell
Build a polyhedron by specifying its vertices and indices
source§fn tetrahedron(
points: [impl Into<Point<3>>; 4],
core: &mut Core
) -> TetrahedronShell
fn tetrahedron( points: [impl Into<Point<3>>; 4], core: &mut Core ) -> TetrahedronShell
Build a tetrahedron from the provided points Read more
source§impl Ord for Shell
impl Ord for Shell
source§impl PartialEq for Shell
impl PartialEq for Shell
source§impl PartialOrd for Shell
impl PartialOrd for Shell
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 moresource§impl ReplaceCurve for Shell
impl ReplaceCurve for Shell
source§fn replace_curve(
&self,
original: &Handle<Curve>,
replacement: Handle<Curve>,
core: &mut Core
) -> ReplaceOutput<Self, Self::BareObject>
fn replace_curve( &self, original: &Handle<Curve>, replacement: Handle<Curve>, core: &mut Core ) -> ReplaceOutput<Self, Self::BareObject>
Replace the curve
source§impl ReplaceHalfEdge for Shell
impl ReplaceHalfEdge for Shell
source§fn replace_half_edge<const N: usize>(
&self,
original: &Handle<HalfEdge>,
replacements: [Handle<HalfEdge>; N],
core: &mut Core
) -> ReplaceOutput<Self, Self::BareObject>
fn replace_half_edge<const N: usize>( &self, original: &Handle<HalfEdge>, replacements: [Handle<HalfEdge>; N], core: &mut Core ) -> ReplaceOutput<Self, Self::BareObject>
Replace the half-edge
source§impl ReplaceVertex for Shell
impl ReplaceVertex for Shell
source§fn replace_vertex(
&self,
original: &Handle<Vertex>,
replacement: Handle<Vertex>,
core: &mut Core
) -> ReplaceOutput<Self, Self::BareObject>
fn replace_vertex( &self, original: &Handle<Vertex>, replacement: Handle<Vertex>, core: &mut Core ) -> ReplaceOutput<Self, Self::BareObject>
Replace the vertex
source§impl SiblingOfHalfEdge for Shell
impl SiblingOfHalfEdge for Shell
source§impl SweepFaceOfShell for Shell
impl SweepFaceOfShell for Shell
source§impl TransformObject for Shell
impl TransformObject for Shell
source§impl UpdateShell for Shell
impl UpdateShell for Shell
source§fn add_faces<T>(
&self,
faces: impl IntoIterator<Item = T>,
core: &mut Core
) -> Self
fn add_faces<T>( &self, faces: impl IntoIterator<Item = T>, core: &mut Core ) -> Self
Add faces to the shell
source§fn update_face<T, R>(
&self,
handle: &Handle<Face>,
update: impl FnOnce(&Handle<Face>, &mut Core) -> R,
core: &mut Core
) -> Self
fn update_face<T, R>( &self, handle: &Handle<Face>, update: impl FnOnce(&Handle<Face>, &mut Core) -> R, core: &mut Core ) -> Self
Update a face of the shell Read more
source§fn remove_face(&self, handle: &Handle<Face>) -> Self
fn remove_face(&self, handle: &Handle<Face>) -> Self
Remove a face from the shell
source§impl Validate for Shell
impl Validate for Shell
source§fn validate(
&self,
config: &ValidationConfig,
errors: &mut Vec<ValidationError>,
geometry: &Geometry
)
fn validate( &self, config: &ValidationConfig, errors: &mut Vec<ValidationError>, geometry: &Geometry )
Validate the object
source§fn validate_and_return_first_error(
&self,
geometry: &Geometry
) -> Result<(), ValidationError>
fn validate_and_return_first_error( &self, geometry: &Geometry ) -> Result<(), ValidationError>
Validate the object using default config and return on first error
impl Eq for Shell
impl StructuralPartialEq for Shell
Auto Trait Implementations§
impl Freeze for Shell
impl !RefUnwindSafe for Shell
impl Send for Shell
impl Sync for Shell
impl Unpin for Shell
impl !UnwindSafe for Shell
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
source§impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
source§fn into_any(self: Box<T>) -> Box<dyn Any>
fn into_any(self: Box<T>) -> Box<dyn Any>
Convert
Box<dyn Trait>
(where Trait: Downcast
) to Box<dyn Any>
. Box<dyn Any>
can
then be further downcast
into Box<ConcreteType>
where ConcreteType
implements Trait
.source§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
Convert
Rc<Trait>
(where Trait: Downcast
) to Rc<Any>
. Rc<Any>
can then be
further downcast
into Rc<ConcreteType>
where ConcreteType
implements Trait
.source§fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
Convert
&Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
generate &Any
’s vtable from &Trait
’s.source§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
Convert
&mut Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
generate &mut Any
’s vtable from &mut Trait
’s.source§impl<T> DowncastSync for T
impl<T> DowncastSync for T
source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
source§impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
source§fn to_subset(&self) -> Option<SS>
fn to_subset(&self) -> Option<SS>
The inverse inclusion map: attempts to construct
self
from the equivalent element of its
superset. Read moresource§fn is_in_subset(&self) -> bool
fn is_in_subset(&self) -> bool
Checks if
self
is actually part of its subset T
(and can be converted to it).source§fn to_subset_unchecked(&self) -> SS
fn to_subset_unchecked(&self) -> SS
Use with care! Same as
self.to_subset
but without any property checks. Always succeeds.source§fn from_subset(element: &SS) -> SP
fn from_subset(element: &SS) -> SP
The inclusion map: converts
self
to the equivalent element of its superset.