pub struct GridTransform {
pub a: i32,
pub b: i32,
pub c: i32,
pub d: i32,
}Expand description
Integer 2D grid transform (a 2×2 matrix) used for aligning detected grids to a board model.
This represents a linear transform on integer coordinates:
(i', j') = (a*i + b*j, c*i + d*j).
For most calibration targets, valid transforms are the 8 elements of the dihedral group D4
(rotations/reflections on the square grid). Those are provided in GRID_TRANSFORMS_D4.
Fields§
§a: i32§b: i32§c: i32§d: i32Implementations§
Trait Implementations§
Source§impl Clone for GridTransform
impl Clone for GridTransform
Source§fn clone(&self) -> GridTransform
fn clone(&self) -> GridTransform
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for GridTransform
impl Debug for GridTransform
Source§impl<'de> Deserialize<'de> for GridTransform
impl<'de> Deserialize<'de> for GridTransform
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 PartialEq for GridTransform
impl PartialEq for GridTransform
Source§impl Serialize for GridTransform
impl Serialize for GridTransform
impl Copy for GridTransform
impl Eq for GridTransform
impl StructuralPartialEq for GridTransform
Auto Trait Implementations§
impl Freeze for GridTransform
impl RefUnwindSafe for GridTransform
impl Send for GridTransform
impl Sync for GridTransform
impl Unpin for GridTransform
impl UnwindSafe for GridTransform
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,
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
§impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
§fn to_subset(&self) -> Option<SS>
fn to_subset(&self) -> Option<SS>
The inverse inclusion map: attempts to construct
self from the equivalent element of its
superset. Read more§fn is_in_subset(&self) -> bool
fn is_in_subset(&self) -> bool
Checks if
self is actually part of its subset T (and can be converted to it).§fn to_subset_unchecked(&self) -> SS
fn to_subset_unchecked(&self) -> SS
Use with care! Same as
self.to_subset but without any property checks. Always succeeds.§fn from_subset(element: &SS) -> SP
fn from_subset(element: &SS) -> SP
The inclusion map: converts
self to the equivalent element of its superset.