shapes/
main.rs

1use termi_graphics::{pixel_art::{PixelColors,Screen,Canvas},
2                    shapes::{square,line,rectangle,triangle},
3                    animation::Animation};
4
5
6fn main(){
7    let mut vecan = Vec::new();
8    let mut shape1 = Vec::new();
9    //one way to make a smily face
10    shape1.push(vec![2,2,0,2,2]);
11    shape1.push(vec![2,2,0,2,2]);
12    shape1.push(vec![0,0,0,0,0]);
13    shape1.push(vec![0,0,1,0,0]);
14    shape1.push(vec![8,0,0,0,8]);
15    shape1.push(vec![8,8,8,8,8]);
16    //another
17    let shape2 =square(2,PixelColors::Blue).unwrap() ;
18    let shape3 =line(5,PixelColors::White,false).unwrap();
19    let shape4 =square(1,PixelColors::Red).unwrap();
20    let shape5 =rectangle(9,10,PixelColors::Magenta).unwrap();
21    let shape6 =triangle(9,PixelColors::Magenta).unwrap();
22    let mut vecer = Vec::new();
23    vecer.push(vec![8,0,0,0,8]);
24    let mut canvas1 = Canvas::new(30,30,PixelColors::Black).unwrap(); 
25    let mut screen1 = Screen::new(35,35,PixelColors::Black).unwrap();
26    screen1.attach_pixels(&shape1,1,1).unwrap();
27    let mut screen2 = Screen::new(35,35,PixelColors::Black).unwrap();
28    canvas1.attach(&shape5,8,8).unwrap();
29    canvas1.attach(&shape2,10,10).unwrap();
30    canvas1.attach(&shape2,13,10).unwrap();
31    canvas1.attach(&shape4,12,13).unwrap();
32    canvas1.attach(&vecer,10,14).unwrap();
33    canvas1.attach(&shape3,10,15).unwrap();
34    canvas1.attach(&shape6,16,16).unwrap();
35    screen2.attach(&canvas1,0,0);
36
37    &vecan.push(screen1);
38    &vecan.push(screen2);
39    let mut animation = Animation::new(vecan,15,10);
40    animation.play();
41}