Struct Graphics

Source
pub struct Graphics { /* private fields */ }

Implementations§

Source§

impl Graphics

Source

pub fn save(&mut self)

Examples found in repository?
examples/readme.rs (line 45)
25    fn draw(&mut self, sketch: &mut Sketch, gfx: &mut Graphics) {
26        gfx.fill(Color {
27            r: 1.0,
28            g: 0.33,
29            b: 0.66,
30            a: 1.0,
31        });
32
33        let t = sketch.get_time_since_start().as_secs_scalar();
34        let x = 1.5 * t.cos();
35        let y = (2.0 * t).sin();
36
37        let size = Point::from(sketch.get_size().to_tuple());
38        let center = sketch.get_center();
39        let pos = center.to_vector() + Vector::new(x, y) * 100.0;
40
41        gfx.stroke(colors::BLACK);
42        gfx.stroke_weight(2.0);
43        gfx.square(sketch.get_mouse_position(), 20.0);
44
45        gfx.save();
46            gfx.stroke(colors::BLUE);
47            gfx.anchor_mode(AnchorMode::Center);
48            gfx.rotate(Angle::radians(x * PI));
49            gfx.translate(pos);
50            gfx.square(Point::zero(), 10.0 + 20.0 * x.abs());
51        gfx.restore();
52
53        gfx.fill(colors::BLUE);
54        gfx.square( size - sketch.get_mouse_position().to_vector(), 20.0);
55    }
Source

pub fn restore(&mut self)

Examples found in repository?
examples/readme.rs (line 51)
25    fn draw(&mut self, sketch: &mut Sketch, gfx: &mut Graphics) {
26        gfx.fill(Color {
27            r: 1.0,
28            g: 0.33,
29            b: 0.66,
30            a: 1.0,
31        });
32
33        let t = sketch.get_time_since_start().as_secs_scalar();
34        let x = 1.5 * t.cos();
35        let y = (2.0 * t).sin();
36
37        let size = Point::from(sketch.get_size().to_tuple());
38        let center = sketch.get_center();
39        let pos = center.to_vector() + Vector::new(x, y) * 100.0;
40
41        gfx.stroke(colors::BLACK);
42        gfx.stroke_weight(2.0);
43        gfx.square(sketch.get_mouse_position(), 20.0);
44
45        gfx.save();
46            gfx.stroke(colors::BLUE);
47            gfx.anchor_mode(AnchorMode::Center);
48            gfx.rotate(Angle::radians(x * PI));
49            gfx.translate(pos);
50            gfx.square(Point::zero(), 10.0 + 20.0 * x.abs());
51        gfx.restore();
52
53        gfx.fill(colors::BLUE);
54        gfx.square( size - sketch.get_mouse_position().to_vector(), 20.0);
55    }
Source

pub fn fill<C>(&mut self, color: C)
where C: Into<Color>,

Examples found in repository?
examples/readme.rs (lines 26-31)
25    fn draw(&mut self, sketch: &mut Sketch, gfx: &mut Graphics) {
26        gfx.fill(Color {
27            r: 1.0,
28            g: 0.33,
29            b: 0.66,
30            a: 1.0,
31        });
32
33        let t = sketch.get_time_since_start().as_secs_scalar();
34        let x = 1.5 * t.cos();
35        let y = (2.0 * t).sin();
36
37        let size = Point::from(sketch.get_size().to_tuple());
38        let center = sketch.get_center();
39        let pos = center.to_vector() + Vector::new(x, y) * 100.0;
40
41        gfx.stroke(colors::BLACK);
42        gfx.stroke_weight(2.0);
43        gfx.square(sketch.get_mouse_position(), 20.0);
44
45        gfx.save();
46            gfx.stroke(colors::BLUE);
47            gfx.anchor_mode(AnchorMode::Center);
48            gfx.rotate(Angle::radians(x * PI));
49            gfx.translate(pos);
50            gfx.square(Point::zero(), 10.0 + 20.0 * x.abs());
51        gfx.restore();
52
53        gfx.fill(colors::BLUE);
54        gfx.square( size - sketch.get_mouse_position().to_vector(), 20.0);
55    }
Source

pub fn no_fill(&mut self)

Source

pub fn stroke_weight(&mut self, weight: f32)

Examples found in repository?
examples/readme.rs (line 42)
25    fn draw(&mut self, sketch: &mut Sketch, gfx: &mut Graphics) {
26        gfx.fill(Color {
27            r: 1.0,
28            g: 0.33,
29            b: 0.66,
30            a: 1.0,
31        });
32
33        let t = sketch.get_time_since_start().as_secs_scalar();
34        let x = 1.5 * t.cos();
35        let y = (2.0 * t).sin();
36
37        let size = Point::from(sketch.get_size().to_tuple());
38        let center = sketch.get_center();
39        let pos = center.to_vector() + Vector::new(x, y) * 100.0;
40
41        gfx.stroke(colors::BLACK);
42        gfx.stroke_weight(2.0);
43        gfx.square(sketch.get_mouse_position(), 20.0);
44
45        gfx.save();
46            gfx.stroke(colors::BLUE);
47            gfx.anchor_mode(AnchorMode::Center);
48            gfx.rotate(Angle::radians(x * PI));
49            gfx.translate(pos);
50            gfx.square(Point::zero(), 10.0 + 20.0 * x.abs());
51        gfx.restore();
52
53        gfx.fill(colors::BLUE);
54        gfx.square( size - sketch.get_mouse_position().to_vector(), 20.0);
55    }
Source

pub fn stroke<C>(&mut self, color: C)
where C: Into<Color>,

Examples found in repository?
examples/readme.rs (line 41)
25    fn draw(&mut self, sketch: &mut Sketch, gfx: &mut Graphics) {
26        gfx.fill(Color {
27            r: 1.0,
28            g: 0.33,
29            b: 0.66,
30            a: 1.0,
31        });
32
33        let t = sketch.get_time_since_start().as_secs_scalar();
34        let x = 1.5 * t.cos();
35        let y = (2.0 * t).sin();
36
37        let size = Point::from(sketch.get_size().to_tuple());
38        let center = sketch.get_center();
39        let pos = center.to_vector() + Vector::new(x, y) * 100.0;
40
41        gfx.stroke(colors::BLACK);
42        gfx.stroke_weight(2.0);
43        gfx.square(sketch.get_mouse_position(), 20.0);
44
45        gfx.save();
46            gfx.stroke(colors::BLUE);
47            gfx.anchor_mode(AnchorMode::Center);
48            gfx.rotate(Angle::radians(x * PI));
49            gfx.translate(pos);
50            gfx.square(Point::zero(), 10.0 + 20.0 * x.abs());
51        gfx.restore();
52
53        gfx.fill(colors::BLUE);
54        gfx.square( size - sketch.get_mouse_position().to_vector(), 20.0);
55    }
Source

pub fn no_stroke(&mut self)

Source

pub fn anchor_mode(&mut self, mode: AnchorMode)

Examples found in repository?
examples/readme.rs (line 47)
25    fn draw(&mut self, sketch: &mut Sketch, gfx: &mut Graphics) {
26        gfx.fill(Color {
27            r: 1.0,
28            g: 0.33,
29            b: 0.66,
30            a: 1.0,
31        });
32
33        let t = sketch.get_time_since_start().as_secs_scalar();
34        let x = 1.5 * t.cos();
35        let y = (2.0 * t).sin();
36
37        let size = Point::from(sketch.get_size().to_tuple());
38        let center = sketch.get_center();
39        let pos = center.to_vector() + Vector::new(x, y) * 100.0;
40
41        gfx.stroke(colors::BLACK);
42        gfx.stroke_weight(2.0);
43        gfx.square(sketch.get_mouse_position(), 20.0);
44
45        gfx.save();
46            gfx.stroke(colors::BLUE);
47            gfx.anchor_mode(AnchorMode::Center);
48            gfx.rotate(Angle::radians(x * PI));
49            gfx.translate(pos);
50            gfx.square(Point::zero(), 10.0 + 20.0 * x.abs());
51        gfx.restore();
52
53        gfx.fill(colors::BLUE);
54        gfx.square( size - sketch.get_mouse_position().to_vector(), 20.0);
55    }
Source

pub fn rotate(&mut self, angle: Angle)

Examples found in repository?
examples/readme.rs (line 48)
25    fn draw(&mut self, sketch: &mut Sketch, gfx: &mut Graphics) {
26        gfx.fill(Color {
27            r: 1.0,
28            g: 0.33,
29            b: 0.66,
30            a: 1.0,
31        });
32
33        let t = sketch.get_time_since_start().as_secs_scalar();
34        let x = 1.5 * t.cos();
35        let y = (2.0 * t).sin();
36
37        let size = Point::from(sketch.get_size().to_tuple());
38        let center = sketch.get_center();
39        let pos = center.to_vector() + Vector::new(x, y) * 100.0;
40
41        gfx.stroke(colors::BLACK);
42        gfx.stroke_weight(2.0);
43        gfx.square(sketch.get_mouse_position(), 20.0);
44
45        gfx.save();
46            gfx.stroke(colors::BLUE);
47            gfx.anchor_mode(AnchorMode::Center);
48            gfx.rotate(Angle::radians(x * PI));
49            gfx.translate(pos);
50            gfx.square(Point::zero(), 10.0 + 20.0 * x.abs());
51        gfx.restore();
52
53        gfx.fill(colors::BLUE);
54        gfx.square( size - sketch.get_mouse_position().to_vector(), 20.0);
55    }
Source

pub fn translate<V>(&mut self, by: V)
where V: Into<Vector>,

Examples found in repository?
examples/readme.rs (line 49)
25    fn draw(&mut self, sketch: &mut Sketch, gfx: &mut Graphics) {
26        gfx.fill(Color {
27            r: 1.0,
28            g: 0.33,
29            b: 0.66,
30            a: 1.0,
31        });
32
33        let t = sketch.get_time_since_start().as_secs_scalar();
34        let x = 1.5 * t.cos();
35        let y = (2.0 * t).sin();
36
37        let size = Point::from(sketch.get_size().to_tuple());
38        let center = sketch.get_center();
39        let pos = center.to_vector() + Vector::new(x, y) * 100.0;
40
41        gfx.stroke(colors::BLACK);
42        gfx.stroke_weight(2.0);
43        gfx.square(sketch.get_mouse_position(), 20.0);
44
45        gfx.save();
46            gfx.stroke(colors::BLUE);
47            gfx.anchor_mode(AnchorMode::Center);
48            gfx.rotate(Angle::radians(x * PI));
49            gfx.translate(pos);
50            gfx.square(Point::zero(), 10.0 + 20.0 * x.abs());
51        gfx.restore();
52
53        gfx.fill(colors::BLUE);
54        gfx.square( size - sketch.get_mouse_position().to_vector(), 20.0);
55    }
Source

pub fn rect<P, S>(&mut self, position: P, size: S)
where P: Into<Point>, S: Into<Size>,

Source

pub fn square<P>(&mut self, position: P, size: Scalar)
where P: Into<Point>,

Examples found in repository?
examples/readme.rs (line 43)
25    fn draw(&mut self, sketch: &mut Sketch, gfx: &mut Graphics) {
26        gfx.fill(Color {
27            r: 1.0,
28            g: 0.33,
29            b: 0.66,
30            a: 1.0,
31        });
32
33        let t = sketch.get_time_since_start().as_secs_scalar();
34        let x = 1.5 * t.cos();
35        let y = (2.0 * t).sin();
36
37        let size = Point::from(sketch.get_size().to_tuple());
38        let center = sketch.get_center();
39        let pos = center.to_vector() + Vector::new(x, y) * 100.0;
40
41        gfx.stroke(colors::BLACK);
42        gfx.stroke_weight(2.0);
43        gfx.square(sketch.get_mouse_position(), 20.0);
44
45        gfx.save();
46            gfx.stroke(colors::BLUE);
47            gfx.anchor_mode(AnchorMode::Center);
48            gfx.rotate(Angle::radians(x * PI));
49            gfx.translate(pos);
50            gfx.square(Point::zero(), 10.0 + 20.0 * x.abs());
51        gfx.restore();
52
53        gfx.fill(colors::BLUE);
54        gfx.square( size - sketch.get_mouse_position().to_vector(), 20.0);
55    }

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> Downcast<T> for T

Source§

fn downcast(&self) -> &T

Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T> Instrument for T

Source§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
Source§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
Source§

impl<T> Upcast<T> for T

Source§

fn upcast(&self) -> Option<&T>

Source§

impl<T> WithSubscriber for T

Source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more