Crate spottedcat

Crate spottedcat 

Source
Expand description

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

§Example

use spottedcat::{Context, Spot, Image, DrawOption, 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 = DrawOption::default();
        opts.position = [spottedcat::Pt(100.0), spottedcat::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() {
    spottedcat::run::<MyApp>(spottedcat::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
Unified options for drawing images and text.
Image
Handle to an image resource.
InputManager
Pt
Text
Text handle for drawing text to the screen.
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
mouse_button_down
mouse_button_pressed
mouse_button_pressed_position
mouse_button_released
run
Runs the application with the specified Spot type.
set_text_input_enabled
switch_scene
Switches to a new scene of the specified type.
text_input
text_input_enabled
window_size