pub struct Thread;Expand description
Puts an ISO metric or an NPT pipe thread on the round face face — a
shaft’s or a hole’s, the whole wall it is part of, straight for a metric
thread and tapered 1:16 for a pipe thread — for the operation T. From
one
end of the wall, length far or all of it: from its open end — where a
shaft ends, where a hole was drilled from — or, if both or neither are
open, from one of them; from the other if reversed.
Recorded, it is the part’s cosmetic thread thread(T) (see
threads()), which drawings and the viewer read; the solid is left as it is. Modelled, its profile is
swept along its helix and cut out of the solid (see crate::thread),
which is replaced by thread(T); the cut faces are named
thread(T,c0,q) .. thread(T,c3,q) for each quarter turn q, and what
the boolean creates combine(T,...).
Trait Implementations§
impl Copy for Thread
Source§impl<'de> Deserialize<'de> for Thread
impl<'de> Deserialize<'de> for Thread
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>,
Source§impl Editable for Thread
impl Editable for Thread
const INFO: OperationInfo = <Thread as ::geop_core_editor::part_operation::PartOperation>::INFO
Source§type EditingState = FormState<<Thread as PartOperation>::Session>
type EditingState = FormState<<Thread as PartOperation>::Session>
Source§fn new_args(context: &Context<'_>) -> Self::Args
fn new_args(context: &Context<'_>) -> Self::Args
Source§fn presentation(
context: &Context<'_>,
args: &Self::Args,
editing: &Self::EditingState,
) -> Form
fn presentation( context: &Context<'_>, args: &Self::Args, editing: &Self::EditingState, ) -> Form
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)
event.Source§impl ModelOperation for Thread
impl ModelOperation for Thread
Source§fn build(
model: &mut NamedModel,
_: &Reader<'_>,
step: &str,
args: &ThreadArgs,
) -> GeopResult<()>
fn build( model: &mut NamedModel, _: &Reader<'_>, step: &str, args: &ThreadArgs, ) -> GeopResult<()>
Cuts the thread’s profile into the solid: a modelled thread.
Source§impl Operation for Thread
impl Operation for Thread
Source§const KIND: &'static str = <Thread as ::geop_core_editor::part_operation::PartOperation>::KIND
const KIND: &'static str = <Thread as ::geop_core_editor::part_operation::PartOperation>::KIND
Source§type Args = <Thread as PartOperation>::Args
type Args = <Thread as PartOperation>::Args
Source§fn run(ctx: &mut StepContext<'_>, args: &Self::Args) -> __GeopResult<()>
fn run(ctx: &mut StepContext<'_>, args: &Self::Args) -> __GeopResult<()>
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 Thread
impl PartOperation for Thread
Source§fn new_args(_: &Context<'_>) -> ThreadArgs
fn new_args(_: &Context<'_>) -> ThreadArgs
No face yet; M6, recorded, the whole wall.
Source§fn run(ctx: &mut StepContext<'_>, args: &ThreadArgs) -> GeopResult<()>
fn run(ctx: &mut StepContext<'_>, args: &ThreadArgs) -> GeopResult<()>
Modelled, cut into the solid; recorded, one more of the part’s threads.
Source§fn form<'a>(
context: &'a Context<'a>,
args: &ThreadArgs,
_: &FormState<()>,
) -> EditForm<'a, ThreadArgs>
fn form<'a>( context: &'a Context<'a>, args: &ThreadArgs, _: &FormState<()>, ) -> EditForm<'a, ThreadArgs>
The face, picked; the size; how far; which end; whether modelled. The thread drawn as its helix.
const INFO: OperationInfo
Source§type Args = ThreadArgs
type Args = ThreadArgs
Source§type Session = ()
type Session = ()
() for most.