|
@@ -20,10 +20,10 @@ fn main() {
|
|
|
)
|
|
|
.get_matches();
|
|
|
|
|
|
- let img = matches.value_of("INPUT").unwrap();
|
|
|
+ let img_path = matches.value_of("INPUT").unwrap();
|
|
|
|
|
|
let opengl = OpenGL::V3_2;
|
|
|
- let mut window: PistonWindow = WindowSettings::new("Oculante", [800, 800])
|
|
|
+ let mut window: PistonWindow = WindowSettings::new("Oculante", [1000, 800])
|
|
|
.exit_on_esc(true)
|
|
|
.graphics_api(opengl)
|
|
|
.build()
|
|
@@ -35,7 +35,7 @@ fn main() {
|
|
|
|
|
|
match Texture::from_path(
|
|
|
&mut window.create_texture_context(),
|
|
|
- &img,
|
|
|
+ &img_path,
|
|
|
Flip::None,
|
|
|
&tx_settings,
|
|
|
) {
|
|
@@ -45,19 +45,23 @@ fn main() {
|
|
|
let mut scale = 1.0;
|
|
|
let mut drag = false;
|
|
|
let mut events = Events::new(EventSettings::new().lazy(true));
|
|
|
-
|
|
|
+ let mut reset = false;
|
|
|
+ // let mut glyphs = window.load_font("OpenSans-Regular.ttf").unwrap();
|
|
|
|
|
|
while let Some(e) = events.next(&mut window) {
|
|
|
|
|
|
|
|
|
- if let Some(Button::Mouse(_)) = e.press_args() {
|
|
|
- drag = true;
|
|
|
- }
|
|
|
+ if let Some(Button::Mouse(_)) = e.press_args() {drag = true;}
|
|
|
+ if let Some(Button::Mouse(_)) = e.release_args() {drag = false;}
|
|
|
|
|
|
- if let Some(Button::Mouse(_)) = e.release_args() {
|
|
|
- drag = false;
|
|
|
+ if let Some(Button::Keyboard(key)) = e.press_args() {
|
|
|
+ if key == Key::R {
|
|
|
+ reset = true;
|
|
|
+ }
|
|
|
+ println!("Pressed keyboard key '{:?}'", key);
|
|
|
};
|
|
|
|
|
|
+
|
|
|
e.mouse_scroll(|d| {
|
|
|
if d[1] > 0.0 {
|
|
|
scale += 0.2;
|
|
@@ -75,15 +79,28 @@ fn main() {
|
|
|
println!("Resized '{}, {}'", args.window_size[0], args.window_size[1])
|
|
|
});
|
|
|
|
|
|
-
|
|
|
- if let Some(args) = e.render_args() {
|
|
|
- window.draw_2d(&e, |c, gfx, _device| {
|
|
|
- clear([0.2; 4], gfx);
|
|
|
- // c.trans(111.0,1.0);
|
|
|
- let transform = c.transform.trans(offset.0, offset.1).scale(scale, scale);
|
|
|
- image(&texture, transform, gfx);
|
|
|
- });
|
|
|
- }
|
|
|
+ window.draw_2d(&e, |c, gfx, _device| {
|
|
|
+ clear([0.2; 4], gfx);
|
|
|
+ // c.trans(111.0,1.0);
|
|
|
+ if reset {
|
|
|
+ println!("reset");
|
|
|
+ offset = (0.0,0.0);
|
|
|
+ scale = 1.0;
|
|
|
+ reset = false;
|
|
|
+ }
|
|
|
+ let transform = c.transform.trans(offset.0, offset.1).scale(scale, scale);
|
|
|
+
|
|
|
+ image(&texture, transform, gfx);
|
|
|
+
|
|
|
+ // text::Text::new_color([0.8, 0.8, 1.0, 1.0], 32).draw(
|
|
|
+ // "sdsdsdsd",
|
|
|
+ // &mut glyphs,
|
|
|
+ // &c.draw_state,
|
|
|
+ // c.transform.trans(10.0, 20.0), gfx
|
|
|
+ // ).unwrap();
|
|
|
+
|
|
|
+ });
|
|
|
+
|
|
|
|
|
|
|
|
|
|