pub struct ImportStl;Expand description
Adds the mesh of the STL file file to the part: its triangles as
faces, joined where they share corners, and the triangles that lie in
one plane made one face (see BodySpec::of_triangles and
BodySpec::merged). A solid named import_stl(I) for the operation
I where every edge is shared by two triangles, a sheet otherwise;
each face, edge and vertex named import_stl(I,fK), eK, vK in the
order the merged mesh has them. Corners at the very same coordinates are
one; the file is read in either form, text (ASCII STL) or binary.
Trait Implementations§
impl Copy for ImportStl
Source§impl<'de> Deserialize<'de> for ImportStl
impl<'de> Deserialize<'de> for ImportStl
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Source§impl Editable for ImportStl
impl Editable for ImportStl
const INFO: OperationInfo = <ImportStl as ::geop_core_editor::part_operation::PartOperation>::INFO
Source§type EditingState = FormState<<ImportStl as PartOperation>::Session>
type EditingState = FormState<<ImportStl as PartOperation>::Session>
What the editor keeps about a step while it is edited, beyond its
arguments, starting from the default whenever a step is opened.
Source§fn new_args(context: &Context<'_>) -> Self::Args
fn new_args(context: &Context<'_>) -> Self::Args
The arguments of a new step: sensible defaults, taking the part it
is inserted into into account.
Source§fn presentation(
context: &Context<'_>,
args: &Self::Args,
editing: &Self::EditingState,
) -> Form
fn presentation( context: &Context<'_>, args: &Self::Args, editing: &Self::EditingState, ) -> Form
What the editor shows while the step is edited. Never fails: an
editor needs the form most exactly when the arguments do not build,
so whatever is wrong is said in it.
Source§fn process_user_event(
context: &Context<'_>,
args: &Self::Args,
editing: &Self::EditingState,
event: Event,
) -> (Self::Args, Self::EditingState)
fn process_user_event( context: &Context<'_>, args: &Self::Args, editing: &Self::EditingState, event: Event, ) -> (Self::Args, Self::EditingState)
The step’s arguments and editing state after
event.Source§impl ModelOperation for ImportStl
impl ModelOperation for ImportStl
Source§fn build(
model: &mut NamedModel,
reader: &Reader<'_>,
step: &str,
args: &ImportStlArgs,
) -> GeopResult<()>
fn build( model: &mut NamedModel, reader: &Reader<'_>, step: &str, args: &ImportStlArgs, ) -> GeopResult<()>
Builds the step
step — what everything it makes is named after —
into model, reading whatever else it builds on through reader,
so the step is rebuilt when that changes.Source§impl Operation for ImportStl
impl Operation for ImportStl
Source§const KIND: &'static str = <ImportStl as ::geop_core_editor::part_operation::PartOperation>::KIND
const KIND: &'static str = <ImportStl as ::geop_core_editor::part_operation::PartOperation>::KIND
The name programs store its steps under.
Source§type Args = <ImportStl as PartOperation>::Args
type Args = <ImportStl as PartOperation>::Args
What a step of the operation is given. It is saved with the program,
so it names targets and elements, never holds their internal ids.
Source§fn run(ctx: &mut StepContext<'_>, args: &Self::Args) -> __GeopResult<()>
fn run(ctx: &mut StepContext<'_>, args: &Self::Args) -> __GeopResult<()>
Declares what the step produces, through
ctx (see
StepContext::produce): cheap, since it runs in every run. What
takes work is done in the makes, which run only when what they read
changed.Source§impl PartOperation for ImportStl
impl PartOperation for ImportStl
Source§fn new_args(_: &Context<'_>) -> ImportStlArgs
fn new_args(_: &Context<'_>) -> ImportStlArgs
No file yet.
Source§fn form<'a>(
context: &'a Context<'a>,
args: &ImportStlArgs,
_: &FormState<()>,
) -> EditForm<'a, ImportStlArgs>
fn form<'a>( context: &'a Context<'a>, args: &ImportStlArgs, _: &FormState<()>, ) -> EditForm<'a, ImportStlArgs>
The file: an STL file of the workspace, chosen in its explorer, or one added from elsewhere.
const INFO: OperationInfo
Source§type Args = ImportStlArgs
type Args = ImportStlArgs
What a step is given. It is saved with the program, so it names
targets and elements, never holds their internal ids.
Source§type Session = ()
type Session = ()
What the editor keeps while a step is edited besides its arguments
and the visuals selected:
() for most.Source§fn run(ctx: &mut StepContext<'_>, args: &ImportStlArgs) -> GeopResult<()>
fn run(ctx: &mut StepContext<'_>, args: &ImportStlArgs) -> GeopResult<()>
Declares what the step produces, through
ctx (see
StepContext::produce).Source§fn begin_event(session: &mut Self::Session)
fn begin_event(session: &mut Self::Session)
What the session forgets at the start of every event, before the
event is handled: nothing, by default.
impl StructuralPartialEq for ImportStl
Auto Trait Implementations§
impl Freeze for ImportStl
impl RefUnwindSafe for ImportStl
impl Send for ImportStl
impl Sync for ImportStl
impl Unpin for ImportStl
impl UnsafeUnpin for ImportStl
impl UnwindSafe for ImportStl
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