[][src]Struct amethyst_ui::UiTransform

pub struct UiTransform {
    pub id: String,
    pub anchor: Anchor,
    pub pivot: Anchor,
    pub stretch: Stretch,
    pub local_x: f32,
    pub local_y: f32,
    pub local_z: f32,
    pub width: f32,
    pub height: f32,
    pub scale_mode: ScaleMode,
    pub opaque: bool,
    pub transparent_target: bool,
    // some fields omitted
}

The UiTransform represents the transformation of a ui element. Values are in pixel and the position is calculated from the bottom left of the screen to the center of the ui element's area.

Fields

id: String

An identifier. Serves no purpose other than to help you distinguish between UI elements.

anchor: Anchor

Indicates where the element sits, relative to the parent (or to the screen, if there is no parent)

pivot: Anchor

Indicates where the element sits, relative to itself

stretch: Stretch

If a child ui element needs to fill its parent this can be used to stretch it to the appropriate size.

local_x: f32

X coordinate, 0 is the left edge of the screen. If scale_mode is set to pixel then the width of the screen in pixel is the right edge. If scale_mode is percent then the right edge is 1.

Centered in the middle of the ui element.

local_y: f32

Y coordinate, 0 is the bottom edge of the screen. If scale_mode is set to pixel then the height of the screen in pixel is the top edge. If scale_mode is percent then the top edge is 1.

Centered in the middle of the ui element.

local_z: f32

Z order, entities with a higher Z order will be rendered on top of entities with a lower Z order.

width: f32

The width of this UI element.

height: f32

The height of this UI element.

scale_mode: ScaleMode

The scale mode indicates if the position is in pixel or is relative (%) (WIP!) to the parent's size.

opaque: bool

Indicates if actions on the ui can go through this element. If set to false, the element will behaves as if it was transparent and will let events go to the next element (for example, the text on a button).

transparent_target: bool

Allows transparent (opaque = false) transforms to still be targeted by the events that pass through them.

Implementations

impl UiTransform[src]

pub fn new(
    id: String,
    anchor: Anchor,
    pivot: Anchor,
    x: f32,
    y: f32,
    z: f32,
    width: f32,
    height: f32
) -> UiTransform
[src]

Creates a new UiTransform. By default, it is considered opaque.

pub fn position_inside_local(&self, x: f32, y: f32) -> bool[src]

Checks if the input position is in the UiTransform rectangle. Uses local coordinates (ignores layouting).

pub fn position_inside(&self, x: f32, y: f32) -> bool[src]

Checks if the input position is in the UiTransform rectangle.

pub fn into_percent(self) -> Self[src]

Renders this UI element by evaluating transform as a percentage of the parent size, rather than rendering it with pixel units.

pub fn into_transparent(self) -> Self[src]

Sets the opaque variable to false, allowing ui events to go through this ui element.

pub fn with_stretch(self, stretch: Stretch) -> Self[src]

Adds stretching to this ui element so it can fill its parent.

pub fn pixel_x(&self) -> f32[src]

Returns the global x coordinate of this UiTransform as computed by the UiTransformSystem.

pub fn pixel_y(&self) -> f32[src]

Returns the global y coordinate of this UiTransform as computed by the UiTransformSystem.

pub fn global_z(&self) -> f32[src]

Returns the global z order of this UiTransform as computed by the UiTransformSystem.

pub fn pixel_width(&self) -> f32[src]

Returns the width of this UiTransform (in pixels) as computed by the UiTransformSystem.

pub fn pixel_height(&self) -> f32[src]

Returns the height of this UiTransform (in pixels) as computed by the UiTransformSystem.

Trait Implementations

impl Clone for UiTransform[src]

impl Component for UiTransform[src]

type Storage = FlaggedStorage<Self, DenseVecStorage<Self>>

Associated storage type for this component.

impl Debug for UiTransform[src]

impl<'de> Deserialize<'de> for UiTransform[src]

impl Serialize for UiTransform[src]

Auto Trait Implementations

impl RefUnwindSafe for UiTransform

impl Send for UiTransform

impl Sync for UiTransform

impl Unpin for UiTransform

impl UnwindSafe for UiTransform

Blanket Implementations

impl<S, D, Swp, Dwp, T> AdaptInto<D, Swp, Dwp, T> for S where
    D: AdaptFrom<S, Swp, Dwp, T>,
    Dwp: WhitePoint,
    Swp: WhitePoint,
    T: Component + Float
[src]

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Any for T where
    T: Any

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> Clone for T where
    T: Clone
[src]

impl<T> Config for T where
    T: for<'a> Deserialize<'a> + Serialize
[src]

impl<T> DeserializeOwned for T where
    T: for<'de> Deserialize<'de>, 
[src]

impl<T> Event for T where
    T: Send + Sync + 'static, 

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> Resource for T where
    T: Any + Send + Sync

impl<T> Same<T> for T

type Output = T

Should always be Self

impl<T> Serialize for T where
    T: Serialize + ?Sized
[src]

impl<T> SetParameter for T

impl<SS, SP> SupersetOf<SS> for SP where
    SS: SubsetOf<SP>, 

impl<T> Supports<T> for T

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.

impl<V, T> VZip<V> for T where
    V: MultiLane<T>,