pub struct ImageNode {
pub color: Color,
pub image: Handle<Image>,
pub texture_atlas: Option<TextureAtlas>,
pub flip_x: bool,
pub flip_y: bool,
pub rect: Option<Rect>,
pub image_mode: NodeImageMode,
}
Expand description
A UI Node that renders an image.
Fields§
§color: Color
The tint color used to draw the image.
This is multiplied by the color of each pixel in the image. The field value defaults to solid white, which will pass the image through unmodified.
image: Handle<Image>
Handle to the texture.
This defaults to a TRANSPARENT_IMAGE_HANDLE
, which points to a fully transparent 1x1 texture.
texture_atlas: Option<TextureAtlas>
The (optional) texture atlas used to render the image.
flip_x: bool
Whether the image should be flipped along its x-axis.
flip_y: bool
Whether the image should be flipped along its y-axis.
rect: Option<Rect>
An optional rectangle representing the region of the image to render, instead of rendering
the full image. This is an easy one-off alternative to using a TextureAtlas
.
When used with a TextureAtlas
, the rect
is offset by the atlas’s minimal (top-left) corner position.
image_mode: NodeImageMode
Controls how the image is altered to fit within the layout and how the layout algorithm determines the space to allocate for the image.
Implementations§
Source§impl ImageNode
impl ImageNode
Sourcepub fn solid_color(color: Color) -> Self
pub fn solid_color(color: Color) -> Self
Create a solid color ImageNode
.
This is primarily useful for debugging / mocking the extents of your image.
Sourcepub fn from_atlas_image(image: Handle<Image>, atlas: TextureAtlas) -> Self
pub fn from_atlas_image(image: Handle<Image>, atlas: TextureAtlas) -> Self
Create a ImageNode
from an image, with an associated texture atlas
Sourcepub const fn with_color(self, color: Color) -> Self
pub const fn with_color(self, color: Color) -> Self
Set the color tint
Sourcepub const fn with_flip_x(self) -> Self
pub const fn with_flip_x(self) -> Self
Flip the image along its x-axis
Sourcepub const fn with_flip_y(self) -> Self
pub const fn with_flip_y(self) -> Self
Flip the image along its y-axis
pub const fn with_rect(self, rect: Rect) -> Self
pub const fn with_mode(self, mode: NodeImageMode) -> Self
Trait Implementations§
Source§impl Component for ImageNode
impl Component for ImageNode
Required Components: Node
, ImageNodeSize
, ContentSize
.
A component’s Required Components are inserted whenever it is inserted. Note that this will also insert the required components of the required components, recursively, in depth-first order.
Source§const STORAGE_TYPE: StorageType = bevy_ecs::component::StorageType::Table
const STORAGE_TYPE: StorageType = bevy_ecs::component::StorageType::Table
Source§fn register_required_components(
requiree: ComponentId,
components: &mut Components,
storages: &mut Storages,
required_components: &mut RequiredComponents,
inheritance_depth: u16,
)
fn register_required_components( requiree: ComponentId, components: &mut Components, storages: &mut Storages, required_components: &mut RequiredComponents, inheritance_depth: u16, )
Source§fn register_component_hooks(hooks: &mut ComponentHooks)
fn register_component_hooks(hooks: &mut ComponentHooks)
ComponentHooks
.Source§impl Default for ImageNode
impl Default for ImageNode
Source§fn default() -> Self
fn default() -> Self
A transparent 1x1 image with a solid white tint.
§Warning
This will be invisible by default.
To set this to a visible image, you need to set the texture
field to a valid image handle,
or use Handle<Image>
’s default 1x1 solid white texture (as is done in ImageNode::solid_color
).
Source§impl FromReflect for ImageNodewhere
ImageNode: Any + Send + Sync,
Color: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
Handle<Image>: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
Option<TextureAtlas>: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
bool: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
Option<Rect>: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
NodeImageMode: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
impl FromReflect for ImageNodewhere
ImageNode: Any + Send + Sync,
Color: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
Handle<Image>: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
Option<TextureAtlas>: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
bool: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
Option<Rect>: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
NodeImageMode: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
Source§fn from_reflect(reflect: &dyn PartialReflect) -> Option<Self>
fn from_reflect(reflect: &dyn PartialReflect) -> Option<Self>
Self
from a reflected value.Source§fn take_from_reflect(
reflect: Box<dyn PartialReflect>,
) -> Result<Self, Box<dyn PartialReflect>>
fn take_from_reflect( reflect: Box<dyn PartialReflect>, ) -> Result<Self, Box<dyn PartialReflect>>
Self
using,
constructing the value using from_reflect
if that fails. Read moreSource§impl GetTypeRegistration for ImageNodewhere
ImageNode: Any + Send + Sync,
Color: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
Handle<Image>: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
Option<TextureAtlas>: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
bool: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
Option<Rect>: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
NodeImageMode: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
impl GetTypeRegistration for ImageNodewhere
ImageNode: Any + Send + Sync,
Color: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
Handle<Image>: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
Option<TextureAtlas>: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
bool: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
Option<Rect>: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
NodeImageMode: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
Source§fn get_type_registration() -> TypeRegistration
fn get_type_registration() -> TypeRegistration
TypeRegistration
for this type.Source§fn register_type_dependencies(registry: &mut TypeRegistry)
fn register_type_dependencies(registry: &mut TypeRegistry)
Source§impl PartialReflect for ImageNodewhere
ImageNode: Any + Send + Sync,
Color: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
Handle<Image>: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
Option<TextureAtlas>: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
bool: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
Option<Rect>: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
NodeImageMode: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
impl PartialReflect for ImageNodewhere
ImageNode: Any + Send + Sync,
Color: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
Handle<Image>: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
Option<TextureAtlas>: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
bool: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
Option<Rect>: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
NodeImageMode: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
Source§fn get_represented_type_info(&self) -> Option<&'static TypeInfo>
fn get_represented_type_info(&self) -> Option<&'static TypeInfo>
Source§fn clone_value(&self) -> Box<dyn PartialReflect>
fn clone_value(&self) -> Box<dyn PartialReflect>
Reflect
trait object. Read moreSource§fn try_apply(&mut self, value: &dyn PartialReflect) -> Result<(), ApplyError>
fn try_apply(&mut self, value: &dyn PartialReflect) -> Result<(), ApplyError>
Source§fn reflect_kind(&self) -> ReflectKind
fn reflect_kind(&self) -> ReflectKind
Source§fn reflect_ref(&self) -> ReflectRef<'_>
fn reflect_ref(&self) -> ReflectRef<'_>
Source§fn reflect_mut(&mut self) -> ReflectMut<'_>
fn reflect_mut(&mut self) -> ReflectMut<'_>
Source§fn reflect_owned(self: Box<Self>) -> ReflectOwned
fn reflect_owned(self: Box<Self>) -> ReflectOwned
Source§fn try_into_reflect(
self: Box<Self>,
) -> Result<Box<dyn Reflect>, Box<dyn PartialReflect>>
fn try_into_reflect( self: Box<Self>, ) -> Result<Box<dyn Reflect>, Box<dyn PartialReflect>>
Source§fn try_as_reflect(&self) -> Option<&dyn Reflect>
fn try_as_reflect(&self) -> Option<&dyn Reflect>
Source§fn try_as_reflect_mut(&mut self) -> Option<&mut dyn Reflect>
fn try_as_reflect_mut(&mut self) -> Option<&mut dyn Reflect>
Source§fn into_partial_reflect(self: Box<Self>) -> Box<dyn PartialReflect>
fn into_partial_reflect(self: Box<Self>) -> Box<dyn PartialReflect>
Source§fn as_partial_reflect(&self) -> &dyn PartialReflect
fn as_partial_reflect(&self) -> &dyn PartialReflect
Source§fn as_partial_reflect_mut(&mut self) -> &mut dyn PartialReflect
fn as_partial_reflect_mut(&mut self) -> &mut dyn PartialReflect
Source§fn reflect_partial_eq(&self, value: &dyn PartialReflect) -> Option<bool>
fn reflect_partial_eq(&self, value: &dyn PartialReflect) -> Option<bool>
Source§fn apply(&mut self, value: &(dyn PartialReflect + 'static))
fn apply(&mut self, value: &(dyn PartialReflect + 'static))
Source§fn reflect_hash(&self) -> Option<u64>
fn reflect_hash(&self) -> Option<u64>
Source§fn serializable(&self) -> Option<Serializable<'_>>
fn serializable(&self) -> Option<Serializable<'_>>
Source§fn is_dynamic(&self) -> bool
fn is_dynamic(&self) -> bool
Source§impl Reflect for ImageNodewhere
ImageNode: Any + Send + Sync,
Color: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
Handle<Image>: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
Option<TextureAtlas>: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
bool: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
Option<Rect>: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
NodeImageMode: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
impl Reflect for ImageNodewhere
ImageNode: Any + Send + Sync,
Color: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
Handle<Image>: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
Option<TextureAtlas>: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
bool: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
Option<Rect>: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
NodeImageMode: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
Source§fn as_any_mut(&mut self) -> &mut dyn Any
fn as_any_mut(&mut self) -> &mut dyn Any
&mut dyn Any
. Read moreSource§fn into_reflect(self: Box<Self>) -> Box<dyn Reflect>
fn into_reflect(self: Box<Self>) -> Box<dyn Reflect>
Source§fn as_reflect(&self) -> &dyn Reflect
fn as_reflect(&self) -> &dyn Reflect
Source§fn as_reflect_mut(&mut self) -> &mut dyn Reflect
fn as_reflect_mut(&mut self) -> &mut dyn Reflect
Source§impl Struct for ImageNodewhere
ImageNode: Any + Send + Sync,
Color: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
Handle<Image>: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
Option<TextureAtlas>: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
bool: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
Option<Rect>: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
NodeImageMode: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
impl Struct for ImageNodewhere
ImageNode: Any + Send + Sync,
Color: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
Handle<Image>: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
Option<TextureAtlas>: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
bool: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
Option<Rect>: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
NodeImageMode: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
Source§fn field(&self, name: &str) -> Option<&dyn PartialReflect>
fn field(&self, name: &str) -> Option<&dyn PartialReflect>
name
as a &dyn PartialReflect
.Source§fn field_mut(&mut self, name: &str) -> Option<&mut dyn PartialReflect>
fn field_mut(&mut self, name: &str) -> Option<&mut dyn PartialReflect>
name
as a
&mut dyn PartialReflect
.Source§fn field_at(&self, index: usize) -> Option<&dyn PartialReflect>
fn field_at(&self, index: usize) -> Option<&dyn PartialReflect>
index
as a
&dyn PartialReflect
.Source§fn field_at_mut(&mut self, index: usize) -> Option<&mut dyn PartialReflect>
fn field_at_mut(&mut self, index: usize) -> Option<&mut dyn PartialReflect>
index
as a &mut dyn PartialReflect
.Source§fn name_at(&self, index: usize) -> Option<&str>
fn name_at(&self, index: usize) -> Option<&str>
index
.Source§fn iter_fields(&self) -> FieldIter<'_>
fn iter_fields(&self) -> FieldIter<'_>
Source§fn clone_dynamic(&self) -> DynamicStruct
fn clone_dynamic(&self) -> DynamicStruct
DynamicStruct
.Source§fn get_represented_struct_info(&self) -> Option<&'static StructInfo>
fn get_represented_struct_info(&self) -> Option<&'static StructInfo>
None
if TypeInfo
is not available.Source§impl TypePath for ImageNode
impl TypePath for ImageNode
Source§fn type_path() -> &'static str
fn type_path() -> &'static str
Source§fn short_type_path() -> &'static str
fn short_type_path() -> &'static str
Source§fn type_ident() -> Option<&'static str>
fn type_ident() -> Option<&'static str>
Source§fn crate_name() -> Option<&'static str>
fn crate_name() -> Option<&'static str>
Source§impl Typed for ImageNodewhere
ImageNode: Any + Send + Sync,
Color: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
Handle<Image>: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
Option<TextureAtlas>: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
bool: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
Option<Rect>: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
NodeImageMode: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
impl Typed for ImageNodewhere
ImageNode: Any + Send + Sync,
Color: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
Handle<Image>: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
Option<TextureAtlas>: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
bool: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
Option<Rect>: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
NodeImageMode: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
Auto Trait Implementations§
impl Freeze for ImageNode
impl !RefUnwindSafe for ImageNode
impl Send for ImageNode
impl Sync for ImageNode
impl Unpin for ImageNode
impl !UnwindSafe for ImageNode
Blanket Implementations§
Source§impl<T, U> AsBindGroupShaderType<U> for T
impl<T, U> AsBindGroupShaderType<U> for T
Source§fn as_bind_group_shader_type(&self, _images: &RenderAssets<GpuImage>) -> U
fn as_bind_group_shader_type(&self, _images: &RenderAssets<GpuImage>) -> U
T
ShaderType
for self
. When used in AsBindGroup
derives, it is safe to assume that all images in self
exist.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
Source§impl<C> Bundle for Cwhere
C: Component,
impl<C> Bundle for Cwhere
C: Component,
fn component_ids( components: &mut Components, storages: &mut Storages, ids: &mut impl FnMut(ComponentId), )
unsafe fn from_components<T, F>(ctx: &mut T, func: &mut F) -> C
Source§fn register_required_components(
components: &mut Components,
storages: &mut Storages,
required_components: &mut RequiredComponents,
)
fn register_required_components( components: &mut Components, storages: &mut Storages, required_components: &mut RequiredComponents, )
Bundle
.Source§fn get_component_ids(
components: &Components,
ids: &mut impl FnMut(Option<ComponentId>),
)
fn get_component_ids( components: &Components, ids: &mut impl FnMut(Option<ComponentId>), )
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
Source§fn into_any(self: Box<T>) -> Box<dyn Any>
fn into_any(self: Box<T>) -> Box<dyn Any>
Box<dyn Trait>
(where Trait: Downcast
) to Box<dyn Any>
. Box<dyn Any>
can
then be further downcast
into Box<ConcreteType>
where ConcreteType
implements Trait
.Source§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
Rc<Trait>
(where Trait: Downcast
) to Rc<Any>
. Rc<Any>
can then be
further downcast
into Rc<ConcreteType>
where ConcreteType
implements Trait
.Source§fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
&Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
generate &Any
’s vtable from &Trait
’s.Source§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
&mut Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
generate &mut Any
’s vtable from &mut Trait
’s.Source§impl<T> DowncastSync for T
impl<T> DowncastSync for T
Source§impl<C> DynamicBundle for Cwhere
C: Component,
impl<C> DynamicBundle for Cwhere
C: Component,
fn get_components(self, func: &mut impl FnMut(StorageType, OwningPtr<'_>))
Source§impl<T> DynamicTypePath for Twhere
T: TypePath,
impl<T> DynamicTypePath for Twhere
T: TypePath,
Source§fn reflect_type_path(&self) -> &str
fn reflect_type_path(&self) -> &str
TypePath::type_path
.Source§fn reflect_short_type_path(&self) -> &str
fn reflect_short_type_path(&self) -> &str
Source§fn reflect_type_ident(&self) -> Option<&str>
fn reflect_type_ident(&self) -> Option<&str>
TypePath::type_ident
.Source§fn reflect_crate_name(&self) -> Option<&str>
fn reflect_crate_name(&self) -> Option<&str>
TypePath::crate_name
.Source§fn reflect_module_path(&self) -> Option<&str>
fn reflect_module_path(&self) -> Option<&str>
Source§impl<T> DynamicTyped for Twhere
T: Typed,
impl<T> DynamicTyped for Twhere
T: Typed,
Source§fn reflect_type_info(&self) -> &'static TypeInfo
fn reflect_type_info(&self) -> &'static TypeInfo
Typed::type_info
.Source§impl<T> FromWorld for Twhere
T: Default,
impl<T> FromWorld for Twhere
T: Default,
Source§fn from_world(_world: &mut World) -> T
fn from_world(_world: &mut World) -> T
Creates Self
using default()
.
Source§impl<S> GetField for Swhere
S: Struct,
impl<S> GetField for Swhere
S: Struct,
Source§impl<T> GetPath for T
impl<T> GetPath for T
Source§fn reflect_path<'p>(
&self,
path: impl ReflectPath<'p>,
) -> Result<&(dyn PartialReflect + 'static), ReflectPathError<'p>>
fn reflect_path<'p>( &self, path: impl ReflectPath<'p>, ) -> Result<&(dyn PartialReflect + 'static), ReflectPathError<'p>>
path
. Read moreSource§fn reflect_path_mut<'p>(
&mut self,
path: impl ReflectPath<'p>,
) -> Result<&mut (dyn PartialReflect + 'static), ReflectPathError<'p>>
fn reflect_path_mut<'p>( &mut self, path: impl ReflectPath<'p>, ) -> Result<&mut (dyn PartialReflect + 'static), ReflectPathError<'p>>
path
. Read moreSource§fn path<'p, T>(
&self,
path: impl ReflectPath<'p>,
) -> Result<&T, ReflectPathError<'p>>where
T: Reflect,
fn path<'p, T>(
&self,
path: impl ReflectPath<'p>,
) -> Result<&T, ReflectPathError<'p>>where
T: Reflect,
path
. Read moreSource§fn path_mut<'p, T>(
&mut self,
path: impl ReflectPath<'p>,
) -> Result<&mut T, ReflectPathError<'p>>where
T: Reflect,
fn path_mut<'p, T>(
&mut self,
path: impl ReflectPath<'p>,
) -> Result<&mut T, ReflectPathError<'p>>where
T: Reflect,
path
. Read moreSource§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
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 more