pub struct Application { /* private fields */ }Expand description
Coherent application boundary backed by explicitly selected providers.
Implementations§
Source§impl Application
impl Application
Draw the edges of request.meshes with hidden-line removal.
A refusal that names a mesh keeps it in
ApplicationErrorSource::HiddenLines.
Every input mesh hidden_lines would refuse,
in request order, without drawing.
Sourcepub fn visible_faces(
&self,
request: &VisibleFaceRequest<'_>,
options: &ExecutionOptions,
) -> Result<VisibleFaceOutcome, ApplicationError>
pub fn visible_faces( &self, request: &VisibleFaceRequest<'_>, options: &ExecutionOptions, ) -> Result<VisibleFaceOutcome, ApplicationError>
Visible face regions of request.meshes in the view’s image plane
(ADR 0094).
Source§impl Application
impl Application
Sourcepub fn portable() -> Result<Self, ApplicationBuildError>
pub fn portable() -> Result<Self, ApplicationBuildError>
Build the supported pure-Rust provider set explicitly.
pub fn descriptor(&self) -> &IntegrationDescriptor
pub fn validate_mesh( &self, mesh: &TriMesh, tolerance: Tolerance, ) -> Result<MeshHealth, ApplicationError>
pub fn measure_mesh( &self, mesh: &TriMesh, tolerance: Tolerance, ) -> Result<MeshMeasurements, ApplicationError>
pub fn boolean( &self, subject: &TriMesh, tool: &TriMesh, operator: BooleanOperator, options: &ExecutionOptions, ) -> Result<BooleanOutcome, ApplicationError>
pub fn subtract_many( &self, subject: &TriMesh, tools: &[TriMesh], options: &ExecutionOptions, ) -> Result<BooleanOutcome, ApplicationError>
Sourcepub fn union_many(
&self,
solids: &[TriMesh],
options: &ExecutionOptions,
) -> Result<BooleanOutcome, ApplicationError>
pub fn union_many( &self, solids: &[TriMesh], options: &ExecutionOptions, ) -> Result<BooleanOutcome, ApplicationError>
Union many solids in one batch.
Providers may choose the reduction order; boolmesh reduces in a
balanced tree rather than folding left, which is materially faster
as the operand count grows.
pub fn section_mesh( &self, mesh: &TriMesh, frame: Frame3, limits: SectionLimits, options: &ExecutionOptions, ) -> Result<SectionOutcome, ApplicationError>
Sourcepub fn section_mesh_request(
&self,
mesh: &TriMesh,
request: &SectionRequest,
options: &ExecutionOptions,
) -> Result<PlaneSection, ApplicationError>
pub fn section_mesh_request( &self, mesh: &TriMesh, request: &SectionRequest, options: &ExecutionOptions, ) -> Result<PlaneSection, ApplicationError>
Section a closed oriented mesh, reporting faces that lie in the plane
as regions with a side and cut curves as transversal crossings only
(ADR 0091). The provider must implement section_request.
pub fn nearest_mesh_hit( &self, mesh: &TriMesh, ray: &Ray3, tolerance: Tolerance, ) -> Result<Option<RayHit3>, ApplicationError>
pub fn extrude_profile_exact( &self, profile: &Profile, direction: Vec3, depth: Scalar, tolerance: Tolerance, ) -> Result<ExactBRep, ApplicationError>
Trait Implementations§
Source§impl Clone for Application
impl Clone for Application
Source§fn clone(&self) -> Application
fn clone(&self) -> Application
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreAuto Trait Implementations§
impl !Freeze for Application
impl !RefUnwindSafe for Application
impl !UnwindSafe for Application
impl Send for Application
impl Sync for Application
impl Unpin for Application
impl UnsafeUnpin for Application
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
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
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> ⓘ
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> ⓘ
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