Skip to main content

Scene

Struct Scene 

Source
pub struct Scene {
    pub shapes: Vec<DrawShape>,
    pub images: Vec<ImageDraw>,
    pub texts: Vec<TextDraw>,
    pub shadow_draws: Vec<ShadowDraw>,
    pub hits: Vec<HitRegion>,
    pub effect_layers: Vec<EffectLayer>,
    pub backdrop_layers: Vec<BackdropLayer>,
    pub next_z: usize,
    pub node_index: HashMap<NodeId, HitRegion>,
}

Fields§

§shapes: Vec<DrawShape>§images: Vec<ImageDraw>§texts: Vec<TextDraw>§shadow_draws: Vec<ShadowDraw>§hits: Vec<HitRegion>§effect_layers: Vec<EffectLayer>§backdrop_layers: Vec<BackdropLayer>§next_z: usize§node_index: HashMap<NodeId, HitRegion>

Implementations§

Source§

impl Scene

Source

pub fn new() -> Self

Source

pub fn push_shape( &mut self, rect: Rect, brush: Brush, shape: Option<RoundedCornerShape>, clip: Option<Rect>, blend_mode: BlendMode, )

Source

pub fn push_shape_with_geometry( &mut self, rect: Rect, local_rect: Rect, quad: [[f32; 2]; 4], brush: Brush, shape: Option<RoundedCornerShape>, clip: Option<Rect>, blend_mode: BlendMode, )

Source

pub fn push_image( &mut self, rect: Rect, image: ImageBitmap, alpha: f32, color_filter: Option<ColorFilter>, clip: Option<Rect>, src_rect: Option<Rect>, blend_mode: BlendMode, )

Source

pub fn push_image_with_geometry( &mut self, rect: Rect, local_rect: Rect, quad: [[f32; 2]; 4], image: ImageBitmap, alpha: f32, color_filter: Option<ColorFilter>, clip: Option<Rect>, src_rect: Option<Rect>, blend_mode: BlendMode, )

Source

pub fn push_text( &mut self, node_id: NodeId, rect: Rect, text: Rc<AnnotatedString>, color: Color, text_style: TextStyle, font_size: f32, scale: f32, layout_options: TextLayoutOptions, clip: Option<Rect>, )

Source

pub fn push_hit( &mut self, node_id: NodeId, rect: Rect, shape: Option<RoundedCornerShape>, click_actions: Vec<ClickAction>, pointer_inputs: Vec<Rc<dyn Fn(PointerEvent)>>, hit_clip: Option<Rect>, )

Source

pub fn push_shadow_draw(&mut self, draw: ShadowDraw)

Trait Implementations§

Source§

impl Default for Scene

Source§

fn default() -> Self

Returns the “default value” for a type. Read more
Source§

impl RenderScene for Scene

Source§

type HitTarget = HitRegion

Source§

fn clear(&mut self)

Source§

fn hit_test(&self, x: f32, y: f32) -> Vec<Self::HitTarget>

Performs hit testing at the given coordinates. Returns hit targets ordered by z-index (top-to-bottom).
Source§

fn find_target(&self, node_id: NodeId) -> Option<Self::HitTarget>

Finds a hit target by NodeId with fresh geometry from the current scene. Read more
Source§

fn hit_test_nodes(&self, x: f32, y: f32) -> Vec<usize>

Returns NodeIds of all hit regions at the given coordinates. This is a convenience method equivalent to hit_test().map(|h| h.node_id()).

Auto Trait Implementations§

§

impl Freeze for Scene

§

impl !RefUnwindSafe for Scene

§

impl !Send for Scene

§

impl !Sync for Scene

§

impl Unpin for Scene

§

impl UnsafeUnpin for Scene

§

impl !UnwindSafe for Scene

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> Downcast<T> for T

Source§

fn downcast(&self) -> &T

Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

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

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
Source§

impl<T> Upcast<T> for T

Source§

fn upcast(&self) -> Option<&T>