pub struct FaceBasedSurfaceModelProcessor;Expand description
Handles IfcFaceBasedSurfaceModel: FbsmFaces (SET of IfcConnectedFaceSet)
-> Face[] -> FaceBound -> PolyLoop, or AdvancedFace[] -> FaceSurface.
Implementations§
Trait Implementations§
Source§impl GeometryProcessor for FaceBasedSurfaceModelProcessor
impl GeometryProcessor for FaceBasedSurfaceModelProcessor
Source§fn process(
&self,
entity: &DecodedEntity,
decoder: &mut EntityDecoder<'_>,
_schema: &IfcSchema,
quality: TessellationQuality,
) -> Result<Mesh>
fn process( &self, entity: &DecodedEntity, decoder: &mut EntityDecoder<'_>, _schema: &IfcSchema, quality: TessellationQuality, ) -> Result<Mesh>
Process entity into mesh. Read more
Source§fn process_in_rtc_frame(
&self,
entity: &DecodedEntity,
decoder: &mut EntityDecoder<'_>,
_schema: &IfcSchema,
quality: TessellationQuality,
rtc_file_units: (f64, f64, f64),
) -> Option<Result<Mesh>>
fn process_in_rtc_frame( &self, entity: &DecodedEntity, decoder: &mut EntityDecoder<'_>, _schema: &IfcSchema, quality: TessellationQuality, rtc_file_units: (f64, f64, f64), ) -> Option<Result<Mesh>>
Process a raw-coordinate item in an element-local RTC frame. Read more
Source§fn supported_types(&self) -> Vec<IfcType>
fn supported_types(&self) -> Vec<IfcType>
Get supported IFC types
Source§fn take_bool_failures(&self) -> Vec<BoolFailure>
fn take_bool_failures(&self) -> Vec<BoolFailure>
Drain the boolean / CSG failures this processor recorded while meshing. Read more
Source§fn bool_failure_count(&self) -> usize
fn bool_failure_count(&self) -> usize
Number of
BoolFailure records currently buffered (without draining).
#4083 (double-count half): lets crate::GeometryRouter::process_representation_item
snapshot a before/after delta around ONE item’s uncached build, so a CSG
diagnostic can be attributed to that item’s item_dedup_key. Default:
0 — matches Self::take_bool_failures’s “most processors record
nothing” default. Overridden by
crate::processors::BooleanClippingProcessor.Source§fn truncate_bool_failures_to(&self, _since: usize)
fn truncate_bool_failures_to(&self, _since: usize)
Discard every
BoolFailure recorded after index since (a prior
Self::bool_failure_count). #4083 (double-count half): the router
calls this when a racing sibling router already claimed this item’s
item_dedup_key for its own diagnostic, so THIS router’s redundant
record of the same logical operation never reaches
Self::take_bool_failures. Default: no-op, matching the 0 default
above (nothing buffered, nothing to discard).Auto Trait Implementations§
impl Freeze for FaceBasedSurfaceModelProcessor
impl RefUnwindSafe for FaceBasedSurfaceModelProcessor
impl Send for FaceBasedSurfaceModelProcessor
impl Sync for FaceBasedSurfaceModelProcessor
impl Unpin for FaceBasedSurfaceModelProcessor
impl UnwindSafe for FaceBasedSurfaceModelProcessor
Blanket Implementations§
§impl<U> As for U
impl<U> As for U
§fn as_<T>(self) -> Twhere
T: CastFrom<U>,
fn as_<T>(self) -> Twhere
T: CastFrom<U>,
Casts
self to type T. The semantics of numeric casting with the as operator are followed, so <T as As>::as_::<U> can be used in the same way as T as U for numeric conversions. Read moreSource§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
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more§impl<T> Pointable for T
impl<T> Pointable for T
§impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
§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 more§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).§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.§fn from_subset(element: &SS) -> SP
fn from_subset(element: &SS) -> SP
The inclusion map: converts
self to the equivalent element of its superset.