Crate spottedcat

Crate spottedcat 

Source
Expand description

Spot - A simple 2D graphics library for drawing images.

§Example

use spot::{Context, Spot, Image, ImageDrawOptions, switch_scene};

struct MyApp {
    image: Image,
}

impl Spot for MyApp {
    fn initialize(_context: Context) -> Self {
        let rgba = vec![255u8; 256 * 256 * 4];
        let image = Image::new_from_rgba8(256, 256, &rgba).unwrap();
        Self { image }
    }

    fn draw(&mut self, context: &mut Context) {
        let mut opts = ImageDrawOptions::default();
        opts.position = [spot::Pt(100.0), spot::Pt(100.0)];
        opts.scale = [0.78125, 0.78125];
        self.image.draw(context, opts);
    }

    fn update(&mut self, _context: &mut Context, _dt: std::time::Duration) {}
    fn remove(&self) {}
}

fn main() {
    spot::run::<MyApp>(spot::WindowConfig::default());
}

// Scene switching example:
// switch_scene::<NewScene>();  // Switches to NewScene

Structs§

Bounds
Rectangle bounds for defining sub-regions of images.
Context
Drawing context for managing render commands.
DrawOption
Image
Handle to an image resource.
ImageDrawOptions
Options for drawing images.
InputManager
Pt
Text
Text handle for drawing text to the screen.
TextOptions
WindowConfig

Enums§

DrawAble
Key
MouseButton

Traits§

Spot
Main application trait that must be implemented by your application.

Functions§

cursor_position
get_input
ime_preedit
key_down
key_pressed
key_released
load_font_from_bytes
load_font_from_file
run
Runs the application with the specified Spot type.
switch_scene
Switches to a new scene of the specified type.
text_input