diff --git a/src/main.rs b/src/main.rs index f30a73b3c55e5f8cc67d4e7c1c6f160c4d578854..5bc65c697e8a5626643e5a0c3763d71b3f43b3df 100644 --- a/src/main.rs +++ b/src/main.rs @@ -11,6 +11,7 @@ use crate::slide::s2_introduction::Introduction; use crate::slide::s3_complexity::Complexity; use crate::slide::s4_automata::Automata; use crate::slide::s5_fractals::Fractals; +use crate::slide::s6_computation::Computation; use crate::slide::Slide; use eframe::egui::style::Margin; use eframe::egui::{Key, Style, TextStyle, Visuals}; @@ -60,6 +61,7 @@ fn create_slides() -> Vec<Box<dyn Slide>> { Box::new(Complexity::default()), Box::new(Automata::default()), Box::new(Fractals::default()), + Box::new(Computation::default()), ] } diff --git a/src/slide.rs b/src/slide.rs index a3620978bbac48ed6100f396863ecb97c8faff22..336300d0e1f764fa77845c4b1dd406ad149b45ac 100644 --- a/src/slide.rs +++ b/src/slide.rs @@ -5,6 +5,7 @@ pub mod s2_introduction; pub mod s3_complexity; pub mod s4_automata; pub mod s5_fractals; +pub mod s6_computation; pub trait Slide { fn show(&mut self, ui: &mut Ui, ctx: &Context); diff --git a/src/slide/s1_title.rs b/src/slide/s1_title.rs index a6a2375db5277e818ddcc58e1278f24b21e27546..acc37a59e9693d07adcd778d78981900fca31d40 100644 --- a/src/slide/s1_title.rs +++ b/src/slide/s1_title.rs @@ -38,10 +38,11 @@ impl Slide for Title { .title_bar(false) .resizable(false) .anchor(Align2::CENTER_CENTER, Vec2::ZERO) + .default_width(400.0) .show(ctx, |ui| { ui.vertical_centered(|ui| { ui.heading("Generative Art"); - ui.label("By: TODO"); + ui.label("By: Finn, Matthew, Nathan, Owen"); }); }); } diff --git a/src/slide/s5_fractals.rs b/src/slide/s5_fractals.rs index 5535ac8703a49996b2933981089b2f04f1272dc7..cc58e7ce087a7df0ba18de16645803ec4d4bba80 100644 --- a/src/slide/s5_fractals.rs +++ b/src/slide/s5_fractals.rs @@ -17,24 +17,20 @@ impl Default for Fractals { code.code = String::from( r###" -fn mandelbrot(x0, y0) -> color { - MAX := 512 - x := 0.0; - y := 0.0; - i := 0; +fn mandelbrot(x0, y0) -> bool { + MAX = 512 + x = 0.0 + y = 0.0 + i = 0 while x^2 + y^2 <= 4 and i < MAX { - x_temp := x^2 - y^2 + x0 + x_temp = x^2 - y^2 + x0 y = 2.0 * x * y + y0 x = x_temp i += 1 } - if i == MAX { - return black; - } else { - return white; - } + return i == MAX } "###, ); diff --git a/src/slide/s6_computation.rs b/src/slide/s6_computation.rs new file mode 100644 index 0000000000000000000000000000000000000000..83365310b0831835ed7455b5159bf01bfe130410 --- /dev/null +++ b/src/slide/s6_computation.rs @@ -0,0 +1,19 @@ +use crate::egui::{Context, Frame, Ui}; +use crate::Slide; +use eframe::egui::style::Margin; + +#[derive(Default)] +pub struct Computation {} + +impl Slide for Computation { + fn show(&mut self, ui: &mut Ui, _ctx: &Context) { + Frame::none().margin(Margin::same(20.0)).show(ui, |ui| { + ui.heading("More Computation-based Art"); + ui.add_space(8.0); + ui.label(" âµ Raytracing"); + ui.label(" âµ Raymarching"); + ui.label(" âµ Particle simulations"); + ui.label(" âµ Fluid simulations"); + }); + } +}