pub enum RefSelectTarget {
Feature,
AssemblyConstraint,
SplineAnchor {
index: usize,
},
Pmi,
PortPoint {
field: PortRefField,
},
Sheet,
Cam,
Instructions {
field: InstructionsRefField,
},
Simulation,
ReplaceRepair,
}Expand description
WHO a finished reference-selection commits to: a history FEATURE’s params
(the original widget) or an ASSEMBLY CONSTRAINT’s inputParams (same modal,
different commit lane — see assembly_ops::begin_ref_select_for_constraint).
Variants§
Feature
AssemblyConstraint
SplineAnchor
ONE SPLINE ANCHOR’s port attachment: path is unused, the picked name
must be a PORT feature id (a click on a port’s drawn sheet), and Finish
writes persistentData.spline.points[index].attachment (see
spline_edit.rs).
Pmi
A PMI annotation’s reference field: feature_id is the annotation id;
Finish writes the picked names into its params through the PMI block
(pmi_ops.rs). Vertex picks are {solid}@x,y,z in WORLD coordinates.
PortPoint
ONE CONNECTION POINT’s reference field: feature_id is the point’s
part-local ADDRESS (J1.VCC) — a connection point is data, not a
feature, so there is no id to carry — and path is the block key the
pick writes (pointRef / directionRef). Finish writes it through
ports_ops::ports_commit_ref, and NOTHING ROLLS: a point resolves at
the tail of the run, so the geometry it may name is what is on screen.
Fields
field: PortRefFieldSheet
A drawing-sheet object’s reference field — a dimension’s anchors, an
ordinate set’s datum or members, a section’s cutting line, a detail’s
centre or rim: feature_id is the object id, the picks are ANCHORS
clicked on the open sheet’s paper (sheet_ops.rs), and nothing rolls.
Cam
A CAM record’s reference field (a setup’s orientation picks and
bodies, an operation’s targets): feature_id is the record id and
path addresses the field from the cam block’s ROOT, a #<id>
segment selecting the array element with that id
(["setups", "#SETUP1", "targets"]). Finish writes it through
cam_ops::cam_commit_refs, and nothing rolls: CAM references name the
finished model, which is what is on screen.
Instructions
A manufacturing-instructions step’s OCCURRENCE field — an insertion
arrow’s part or a callout’s: feature_id is the step id and field
says which row. The pick is a SOLID of the placed assembly; Finish
derives the occurrence (the solid’s name without its member) and writes
it through instructions_ops::instructions_commit_ref, one undo step,
and nothing rolls.
Fields
field: InstructionsRefFieldSimulation
A motion-study CLIP’s parts field: feature_id is the clip id and
path its list field (["occurrences"]). Finish writes the picked
names, as the components that hold them, through
simulation_refs::simulation_commit_refs; nothing rolls.
ReplaceRepair
A REPLACE COMPONENT repair: a held mate’s broken reference, re-aimed
at ONE face or edge picked in the view. feature_id is the mate id
and path is [old reference]. Finish commits nothing itself: it
hands (mate, old ref, pick) to the replace dialog
(EngineState::take_replace_repair_pick), whose repair also
reaches mates inside nested assemblies; nothing rolls.
Trait Implementations§
Source§impl Clone for RefSelectTarget
impl Clone for RefSelectTarget
impl Copy for RefSelectTarget
Source§impl Debug for RefSelectTarget
impl Debug for RefSelectTarget
Source§impl Default for RefSelectTarget
impl Default for RefSelectTarget
impl Eq for RefSelectTarget
Source§impl PartialEq for RefSelectTarget
impl PartialEq for RefSelectTarget
impl StructuralPartialEq for RefSelectTarget
Auto Trait Implementations§
impl Freeze for RefSelectTarget
impl RefUnwindSafe for RefSelectTarget
impl Send for RefSelectTarget
impl Sync for RefSelectTarget
impl Unpin for RefSelectTarget
impl UnsafeUnpin for RefSelectTarget
impl UnwindSafe for RefSelectTarget
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<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key and return true if they are equal.Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
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 moreSource§impl<T> Pipe for Twhere
T: ?Sized,
impl<T> Pipe for Twhere
T: ?Sized,
Source§fn pipe<R>(self, func: impl FnOnce(Self) -> R) -> Rwhere
Self: Sized,
fn pipe<R>(self, func: impl FnOnce(Self) -> R) -> Rwhere
Self: Sized,
Source§fn pipe_ref<'a, R>(&'a self, func: impl FnOnce(&'a Self) -> R) -> Rwhere
R: 'a,
fn pipe_ref<'a, R>(&'a self, func: impl FnOnce(&'a Self) -> R) -> Rwhere
R: 'a,
self and passes that borrow into the pipe function. Read moreSource§fn pipe_ref_mut<'a, R>(&'a mut self, func: impl FnOnce(&'a mut Self) -> R) -> Rwhere
R: 'a,
fn pipe_ref_mut<'a, R>(&'a mut self, func: impl FnOnce(&'a mut Self) -> R) -> Rwhere
R: 'a,
self and passes that borrow into the pipe function. Read moreSource§fn pipe_borrow<'a, B, R>(&'a self, func: impl FnOnce(&'a B) -> R) -> R
fn pipe_borrow<'a, B, R>(&'a self, func: impl FnOnce(&'a B) -> R) -> R
Source§fn pipe_borrow_mut<'a, B, R>(
&'a mut self,
func: impl FnOnce(&'a mut B) -> R,
) -> R
fn pipe_borrow_mut<'a, B, R>( &'a mut self, func: impl FnOnce(&'a mut B) -> R, ) -> R
Source§fn pipe_as_ref<'a, U, R>(&'a self, func: impl FnOnce(&'a U) -> R) -> R
fn pipe_as_ref<'a, U, R>(&'a self, func: impl FnOnce(&'a U) -> R) -> R
self, then passes self.as_ref() into the pipe function.Source§fn pipe_as_mut<'a, U, R>(&'a mut self, func: impl FnOnce(&'a mut U) -> R) -> R
fn pipe_as_mut<'a, U, R>(&'a mut self, func: impl FnOnce(&'a mut U) -> R) -> R
self, then passes self.as_mut() into the pipe
function.Source§fn pipe_deref<'a, T, R>(&'a self, func: impl FnOnce(&'a T) -> R) -> R
fn pipe_deref<'a, T, R>(&'a self, func: impl FnOnce(&'a T) -> R) -> R
self, then passes self.deref() into the pipe function.Source§impl<T> Pointable for T
impl<T> Pointable for T
impl<T> Read<Exclusive, BecauseExclusive> for Twhere
T: ?Sized,
Source§impl<T> Tap for T
impl<T> Tap for T
Source§fn tap_borrow<B>(self, func: impl FnOnce(&B)) -> Self
fn tap_borrow<B>(self, func: impl FnOnce(&B)) -> Self
Borrow<B> of a value. Read moreSource§fn tap_borrow_mut<B>(self, func: impl FnOnce(&mut B)) -> Self
fn tap_borrow_mut<B>(self, func: impl FnOnce(&mut B)) -> Self
BorrowMut<B> of a value. Read moreSource§fn tap_ref<R>(self, func: impl FnOnce(&R)) -> Self
fn tap_ref<R>(self, func: impl FnOnce(&R)) -> Self
AsRef<R> view of a value. Read moreSource§fn tap_ref_mut<R>(self, func: impl FnOnce(&mut R)) -> Self
fn tap_ref_mut<R>(self, func: impl FnOnce(&mut R)) -> Self
AsMut<R> view of a value. Read moreSource§fn tap_deref<T>(self, func: impl FnOnce(&T)) -> Self
fn tap_deref<T>(self, func: impl FnOnce(&T)) -> Self
Deref::Target of a value. Read moreSource§fn tap_deref_mut<T>(self, func: impl FnOnce(&mut T)) -> Self
fn tap_deref_mut<T>(self, func: impl FnOnce(&mut T)) -> Self
Deref::Target of a value. Read moreSource§fn tap_dbg(self, func: impl FnOnce(&Self)) -> Self
fn tap_dbg(self, func: impl FnOnce(&Self)) -> Self
.tap() only in debug builds, and is erased in release builds.Source§fn tap_mut_dbg(self, func: impl FnOnce(&mut Self)) -> Self
fn tap_mut_dbg(self, func: impl FnOnce(&mut Self)) -> Self
.tap_mut() only in debug builds, and is erased in release
builds.Source§fn tap_borrow_dbg<B>(self, func: impl FnOnce(&B)) -> Self
fn tap_borrow_dbg<B>(self, func: impl FnOnce(&B)) -> Self
.tap_borrow() only in debug builds, and is erased in release
builds.Source§fn tap_borrow_mut_dbg<B>(self, func: impl FnOnce(&mut B)) -> Self
fn tap_borrow_mut_dbg<B>(self, func: impl FnOnce(&mut B)) -> Self
.tap_borrow_mut() only in debug builds, and is erased in release
builds.Source§fn tap_ref_dbg<R>(self, func: impl FnOnce(&R)) -> Self
fn tap_ref_dbg<R>(self, func: impl FnOnce(&R)) -> Self
.tap_ref() only in debug builds, and is erased in release
builds.Source§fn tap_ref_mut_dbg<R>(self, func: impl FnOnce(&mut R)) -> Self
fn tap_ref_mut_dbg<R>(self, func: impl FnOnce(&mut R)) -> Self
.tap_ref_mut() only in debug builds, and is erased in release
builds.Source§fn tap_deref_dbg<T>(self, func: impl FnOnce(&T)) -> Self
fn tap_deref_dbg<T>(self, func: impl FnOnce(&T)) -> Self
.tap_deref() only in debug builds, and is erased in release
builds.