diff --git a/src/lib.rs b/src/lib.rs index cc74975..a778d97 100644 --- a/src/lib.rs +++ b/src/lib.rs @@ -72,6 +72,10 @@ impl Point3 { pub fn new(x: f64, y: f64, z: f64) -> Point3 { Point3 { x, y, z } } + + pub fn get_x(&self) -> f64 { + self.x + } } impl Add for Point3 { diff --git a/src/main.rs b/src/main.rs index ad45a64..fe3cc87 100644 --- a/src/main.rs +++ b/src/main.rs @@ -1,45 +1,5 @@ use hello::*; fn main() { - let sphere1 = Sphere::new(Point3::new(0.0, 0.0, 0.0), 25.0); - let sphere2 = Sphere::new(Point3::new(1.0, -45.4, 3.55), 2.0); - let sphere3 = Sphere::new(Point3::new(3.0, 2.0, 1.0), 0.5); - - let plane1 = Plane::new(Point3::new(1.0, 2.0, 3.0), Vector3::new(0.0, 1.0, 0.0)); - - let mut v = Vec::new(); - - v.push(Geometry::Sphere(sphere1)); - v.push(Geometry::Plane(plane1)); - v.push(Geometry::Sphere(sphere2)); - v.push(Geometry::Sphere(sphere3)); - - for geo in v { - match geo { - Geometry::Sphere(s) => println!("A Sphere"), - Geometry::Plane(p) => println!("A Plane"), - Geometry::Line(l) => println!("A Line"), - } - } - - let mut lottery = [4, 8, 15, 16, 23, 42]; - - let mut sum = 0; - - for value in lottery { - sum += value; - } - - println!("The sum is {}", sum); - - let mut lottery_string = Vec::new(); - for value in lottery { - lottery_string.push(value.to_string()); - } - - let lottery_string_2: Vec = lottery - .iter() - .filter(|x| **x > 8) - .map(|x| x.to_string()) - .collect(); + let p = Point3::new(0.0, 0.0, 0.0); }