pub enum Position {
Absolute(CoordPoint),
RelativeTo {
reference_index: usize,
offset: CoordPoint,
},
RelativeToComponent {
designator: String,
offset: CoordPoint,
},
RelativeToPad {
component: String,
pad: String,
offset: CoordPoint,
},
RelativeToEdge {
edge: BoardEdge,
offset: CoordPoint,
},
BoardCenter {
offset: CoordPoint,
},
}Expand description
Position specification for PCB primitives. Supports absolute coordinates and relative positioning.
Variants§
Absolute(CoordPoint)
Absolute position with X,Y coordinates.
RelativeTo
Relative to another primitive by index.
RelativeToComponent
Relative to a component by designator.
RelativeToPad
Relative to a pad on a component.
RelativeToEdge
Relative to board edge.
BoardCenter
Center of board.
Fields
§
offset: CoordPointImplementations§
Source§impl Position
impl Position
Sourcepub fn at(point: CoordPoint) -> Self
pub fn at(point: CoordPoint) -> Self
Create an absolute position from a point.
Sourcepub fn relative_to_component(designator: &str, dx: Coord, dy: Coord) -> Self
pub fn relative_to_component(designator: &str, dx: Coord, dy: Coord) -> Self
Create a position relative to a component.
Trait Implementations§
Auto Trait Implementations§
impl Freeze for Position
impl RefUnwindSafe for Position
impl Send for Position
impl Sync for Position
impl Unpin for Position
impl UnwindSafe for Position
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
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>
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