Struct pax_runtime_api::Transform2D
source · pub struct Transform2D {
pub previous: Option<Box<Transform2D>>,
pub rotate: Option<f64>,
pub translate: Option<[f64; 2]>,
pub anchor: Option<[Size; 2]>,
pub align: Option<[Size; 2]>,
pub scale: Option<[f64; 2]>,
}
Expand description
A sugary representation of an Affine transform+, including
anchor
and align
as layout-computed properties.
translate
represents an (x,y) affine translation
scale
represents an (x,y) non-uniform affine scale
rotate
represents a (z) affine rotation (intuitive 2D rotation)
anchor
represents the “(0,0)” point of the render node as it relates to its own bounding box.
By default that’s the top-left of the element, but anchor
allows that
to be offset either by a pixel or percentage-of-element-size
for each of (x,y)
align
the offset of this element’s anchor
as it relates to the element’s parent.
By default this is the top-left corner of the parent container,
but can be set to be any value [0,1] for each of (x,y), representing
the percentage (between 0.0 and 1.0) multiplied by the parent container size.
For example, an align of (0.5, 0.5) will center an element’s anchor
point both vertically
and horizontally within the parent container. Combined with an anchor of (Size::Percent(50.0), Size::Percent(50.0)),
an element will appear fully centered within its parent.
Fields§
§previous: Option<Box<Transform2D>>
§rotate: Option<f64>
§translate: Option<[f64; 2]>
over z axis
anchor: Option<[Size; 2]>
§align: Option<[Size; 2]>
§scale: Option<[f64; 2]>
Implementations§
source§impl Transform2D
impl Transform2D
sourcepub fn align(x: Size, y: Size) -> Self
pub fn align(x: Size, y: Size) -> Self
Describe alignment within parent bounding box, as a starting point before affine transformations are applied
sourcepub fn anchor(x: Size, y: Size) -> Self
pub fn anchor(x: Size, y: Size) -> Self
Describe alignment of the (0,0) position of this element as it relates to its own bounding box
pub fn default_wrapped() -> Rc<RefCell<dyn PropertyInstance<Self>>>
Trait Implementations§
source§impl Clone for Transform2D
impl Clone for Transform2D
source§fn clone(&self) -> Transform2D
fn clone(&self) -> Transform2D
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read more