2D Graphics. Shape Models, Drawing, Selection using Java. CS d Graphics 1

Size: px
Start display at page:

Download "2D Graphics. Shape Models, Drawing, Selection using Java. CS d Graphics 1"

Transcription

1 2D Graphics Shape Models, Drawing, Selection using Java 1

2 Graphic Models vs. Images Computer Graphics: the creation, storage, and manipulation of images and their models Model: a mathematical representation of an image containing the important properties of an object (location, size, orientation, color, texture, etc.) in data structures Rendering: Using the properties of the model to create an image to display on the screen Image: the rendered model Model Rendering Image 2

3 Implementing Direct Manipulation Objectives: draw a shape on the screen at specified position, size, orientation perhaps draw many copies, each different from the others test when a rendered shape is selected could be a filled or outlined polygon or a polyline selections that just miss the shape should snap to shape Tasks: create a model of the shape Now: what we did in X, in Java draw it Later: 2D transformations choose a selection paradigm implement shape hit tests and/or inside tests (with snapping) respond to events 3

4 Example Shape Models An array of points: {P 1, P 2,, P n Can be open, closed, filled Java has primitive shapes built in: Lines, Ellipses, Rectangles Tools for building others: CubicCurves, Paths, drawpolygon, drawpolyline, fillpolygon 4

5 SimpleDraw: Drawing in Java package twod_graphics; import javax.swing.*; import java.awt.*; import java.awt.geom.path2d; public class SimpleDraw { public static void main(string[] args) { JFrame f = new JFrame("SimpleDraw"); // jframe is the app window f.setdefaultcloseoperation(jframe.exit_on_close); f.setsize(400, 400); // window size f.setcontentpane(new Canvas()); // add canvas to jframe f.setvisible(true); // show the window // JComponent is a base class for custom components class Canvas extends JComponent { // custom graphics drawing public void paintcomponent(graphics g) { 5

6 SimpleDraw: Drawing in Java package twod_graphics; import javax.swing.*; import java.awt.*; import java.awt.geom.path2d; public class SimpleDraw { // JComponent is a base class for custom components class Canvas extends JComponent { // custom graphics drawing public void paintcomponent(graphics g) { super.paintcomponent(g); Graphics2D g2 = (Graphics2D) g; g2.setstroke(new BasicStroke(32)); g2.setcolor(color.blue); g2.drawline(0, 0, getwidth(), getheight()); // draw line g2.setcolor(color.red); g2.drawline(getwidth(), 0, 0, getheight()); g2.setcolor(color.yellow); g2.setstroke(new BasicStroke(1)); g2.draw(new Star()); // cast to get 2D drawing methods // 32 pixel thick stroke // make it blue 6

7 SimpleDraw: Drawing in Java package twod_graphics; import javax.swing.*; import java.awt.*; import java.awt.geom.path2d; public class SimpleDraw { class Canvas extends JComponent { class Star extends Path2D.Double { public Star() { super(wind_even_odd); this.moveto(0, 0); this.lineto(-1.5, 5); this.lineto(-7, 5); this.lineto(-2.5, 8); this.lineto(-4.2, 13); this.lineto(0, 10); this.lineto(4.2, 13); this.lineto(2.5, 8); this.lineto(7, 5); this.lineto(1.5, 5); this.lineto(0, 0); How do you get the star where you want it and the size you want? 7

8 Selection Paradigms Click selection different for filled and outlined shapes Rubberband rectangle Lasso (see Ch 14 of text) 8

9 Closest Shape to Mouse Test check distance from every line segment of every shape to mouse position (can be optimized ) check distance from mouse to line segment using vector projection ClosestPointDemo.java 9

10 Mouse Inside Filled-Shape Test Is a point inside or outside a polygon? P1 P3 P4 P2 Java Shapes have a contains(point2d p) method 10

11 MouseEventDemo (1/4) import javax.swing.jframe; import javax.swing.jcomponent; import java.awt.event.*; import java.awt.*; public class MouseEventDemo { public static void main(string[] args) { JFrame f = new JFrame("MouseEventDemo"); // jframe is the app window f.setdefaultcloseoperation(jframe.exit_on_close); f.setsize(400, 400); // window size f.setcontentpane(new Canvas()); // add canvas to jframe f.setvisible(true); // show the window Same as before, except for imports. 11

12 MouseEventDemo (2/4) class Canvas extends JComponent { 12 private Color colour = Color.GRAY; private int x; private int y; private int size = 50; Canvas() { // add listeners this.addmouselistener(new MListener()); this.addmousemotionlistener(new MMListener()); // custom graphics drawing public void paintcomponent(graphics g) { super.paintcomponent(g); Graphics2D g2 = (Graphics2D) g; g2.setcolor(colour); g2.filloval(this.x - this.size / 2, this.y - this.size / 2, this.size, this.size); private class MListener implements MouseListener { private class MMListener implements MouseMotionListener { Updated when appropriate events are received. Each listener defines a group of events that we care about. Same function as XSelectInput. What do we do when we receive an event?

13 MouseEventDemo (3/4) private class MMListener implements MouseMotionListener public void mousedragged(mouseevent arg0) { System.out.format("drag %d,%d\n", arg0.getx(), arg0.gety()); x = arg0.getx(); y = arg0.gety(); repaint(); A mouse motion listener is interested in two kinds of events: mouse moved and mouse public void mousemoved(mouseevent arg0) { System.out.format("move %d,%d\n", arg0.getx(), arg0.gety()); x = arg0.getx(); y = arg0.gety(); repaint(); 13

14 MouseEventDemo (4/4) private class MListener implements MouseListener public void mouseclicked(mouseevent arg0) { System.out.format("click %d,%d count %d\n", arg0.getx(), arg0.gety(), arg0.getclickcount()); if (arg0.getclickcount() == 2) // double click Canvas.this.colour = Color.PINK; else Canvas.this.colour = Color.GREEN; public void mouseentered(mouseevent arg0) { System.out.format("enter %d,%d\n", arg0.getx(), arg0.gety()); Canvas.this.colour = Color.BLACK; public void mouseexited(mouseevent arg0) public void mousepressed(mouseevent arg0) { public void mousereleased(mouseevent arg0) { System.out.format("release %d,%d\n", arg0.getx(), arg0.gety()); colour = Color.BLUE; repaint();

public class Application extends JFrame implements ChangeListener, WindowListener, MouseListener, MouseMotionListener {

public class Application extends JFrame implements ChangeListener, WindowListener, MouseListener, MouseMotionListener { Application.java import javax.swing.*; import java.awt.geom.*; import java.awt.event.*; import javax.swing.event.*; import java.util.*; public class Application extends JFrame implements ChangeListener,

More information

Using A Frame for Output

Using A Frame for Output Eventos Roteiro Frames Formatting Output Event Handling Entering Data Using Fields in a Frame Creating a Data Entry Field Using a Field Reading Data in an Event Handler Handling Multiple Button Events

More information

Java Mouse and Keyboard Methods

Java Mouse and Keyboard Methods 7 Java Mouse and Keyboard Methods 7.1 Introduction The previous chapters have discussed the Java programming language. This chapter investigates event-driven programs. Traditional methods of programming

More information

Fondamenti di Java. Introduzione alla costruzione di GUI (graphic user interface)

Fondamenti di Java. Introduzione alla costruzione di GUI (graphic user interface) Fondamenti di Java Introduzione alla costruzione di GUI (graphic user interface) component - container - layout Un Container contiene [0 o +] Components Il Layout specifica come i Components sono disposti

More information

Event-Driven Programming

Event-Driven Programming Event-Driven Programming Lecture 4 Jenny Walter Fall 2008 Simple Graphics Program import acm.graphics.*; import java.awt.*; import acm.program.*; public class Circle extends GraphicsProgram { public void

More information

core 2 Handling Mouse and Keyboard Events

core 2 Handling Mouse and Keyboard Events core Web programming Handling Mouse and Keyboard Events 1 2001-2003 Marty Hall, Larry Brown http:// Agenda General event-handling strategy Handling events with separate listeners Handling events by implementing

More information

5.17 GUI. Xiaoyi Jiang Informatik I Grundlagen der Programmierung

5.17 GUI. Xiaoyi Jiang Informatik I Grundlagen der Programmierung AWT vs. Swing AWT (Abstract Window Toolkit; Package java.awt) Benutzt Steuerelemente des darunterliegenden Betriebssystems Native Code (direkt für die Maschine geschrieben, keine VM); schnell Aussehen

More information

CS 335 Lecture 06 Java Programming GUI and Swing

CS 335 Lecture 06 Java Programming GUI and Swing CS 335 Lecture 06 Java Programming GUI and Swing Java: Basic GUI Components Swing component overview Event handling Inner classes and anonymous inner classes Examples and various components Layouts Panels

More information

Construction of classes with classes

Construction of classes with classes (November 13, 2014 Class hierarchies 1 ) Construction of classes with classes Classes can be built on existing classes through attributes of object types. Example: I A class PairOfDice can be constructed

More information

DIA Creating Charts and Diagrams

DIA Creating Charts and Diagrams DIA Creating Charts and Diagrams Dia is a vector-based drawing tool similar to Win32 OS Visio. It is suitable for graphical languages such as dataflow diagrams, entity-relationship diagrams, organization

More information

The following four software tools are needed to learn to program in Java:

The following four software tools are needed to learn to program in Java: Getting Started In this section, we ll see Java in action. Some demo programs will highlight key features of Java. Since we re just getting started, these programs are intended only to pique your interest.

More information

Event processing in Java: what happens when you click?

Event processing in Java: what happens when you click? Event processing in Java: what happens when you click? Alan Dix In the HCI book chapter 8 (fig 8.5, p. 298), notification-based user interface programming is described. Java uses this paradigm and you

More information

Remote Method Invocation

Remote Method Invocation Goal of RMI Remote Method Invocation Implement distributed objects. Have a program running on one machine invoke a method belonging to an object whose execution is performed on another machine. Remote

More information

Providing Information (Accessors)

Providing Information (Accessors) Providing Information (Accessors) C++ allows you to declare a method as const. As a result the compiler warns you if statements in the method change the object s state. Java has no such facility, and so

More information

WPF Shapes. WPF Shapes, Canvas, Dialogs 1

WPF Shapes. WPF Shapes, Canvas, Dialogs 1 WPF Shapes WPF Shapes, Canvas, Dialogs 1 Shapes are elements WPF Shapes, Canvas, Dialogs 2 Shapes draw themselves, no invalidation or repainting needed when shape moves, window is resized, or shape s properties

More information

Working With Animation: Introduction to Flash

Working With Animation: Introduction to Flash Working With Animation: Introduction to Flash With Adobe Flash, you can create artwork and animations that add motion and visual interest to your Web pages. Flash movies can be interactive users can click

More information

Extending Desktop Applications to the Web

Extending Desktop Applications to the Web Extending Desktop Applications to the Web Arno Puder San Francisco State University Computer Science Department 1600 Holloway Avenue San Francisco, CA 94132 arno@sfsu.edu Abstract. Web applications have

More information

Lab 1A. Create a simple Java application using JBuilder. Part 1: make the simplest Java application Hello World 1. Start Jbuilder. 2.

Lab 1A. Create a simple Java application using JBuilder. Part 1: make the simplest Java application Hello World 1. Start Jbuilder. 2. Lab 1A. Create a simple Java application using JBuilder In this lab exercise, we ll learn how to use a Java integrated development environment (IDE), Borland JBuilder 2005, to develop a simple Java application

More information

GUI Components: Part 2

GUI Components: Part 2 GUI Components: Part 2 JComboBox and Using an Anonymous Inner Class for Event Handling A combo box (or drop-down list) enables the user to select one item from a list. Combo boxes are implemented with

More information

INTRODUCTION TO COMPUTER PROGRAMMING. Richard Pierse. Class 7: Object-Oriented Programming. Introduction

INTRODUCTION TO COMPUTER PROGRAMMING. Richard Pierse. Class 7: Object-Oriented Programming. Introduction INTRODUCTION TO COMPUTER PROGRAMMING Richard Pierse Class 7: Object-Oriented Programming Introduction One of the key issues in programming is the reusability of code. Suppose that you have written a program

More information

Animazione in Java. Animazione in Java. Problemi che possono nascere, e loro soluzione. Marco Ronchetti Lezione 1

Animazione in Java. Animazione in Java. Problemi che possono nascere, e loro soluzione. Marco Ronchetti Lezione 1 Animazione in Java Problemi che possono nascere, e loro soluzione Animazione in Java Application MyFrame (JFrame) ClockPanel (JPanel) 1 public class ClockPanel extends JPanel { public ClockPanel void paintcomponent(graphics

More information

// Correntista. //Conta Corrente. package Banco; public class Correntista { String nome, sobrenome; int cpf;

// Correntista. //Conta Corrente. package Banco; public class Correntista { String nome, sobrenome; int cpf; // Correntista public class Correntista { String nome, sobrenome; int cpf; public Correntista(){ nome = "zé"; sobrenome = "Pereira"; cpf = 123456; public void setnome(string n){ nome = n; public void setsobrenome(string

More information

Adobe Illustrator CS5 Part 1: Introduction to Illustrator

Adobe Illustrator CS5 Part 1: Introduction to Illustrator CALIFORNIA STATE UNIVERSITY, LOS ANGELES INFORMATION TECHNOLOGY SERVICES Adobe Illustrator CS5 Part 1: Introduction to Illustrator Summer 2011, Version 1.0 Table of Contents Introduction...2 Downloading

More information

Welcome to CorelDRAW, a comprehensive vector-based drawing and graphic-design program for the graphics professional.

Welcome to CorelDRAW, a comprehensive vector-based drawing and graphic-design program for the graphics professional. Workspace tour Welcome to CorelDRAW, a comprehensive vector-based drawing and graphic-design program for the graphics professional. In this tutorial, you will become familiar with the terminology and workspace

More information

There are some important differences between an applet and a standalone Java application, including the following:

There are some important differences between an applet and a standalone Java application, including the following: JAVA - APPLET BASICS Copyright tutorialspoint.com An applet is a Java program that runs in a Web browser. An applet can be a fully functional Java application because it has the entire Java API at its

More information

QUICK REFERENCE: ADOBE ILLUSTRATOR CS2 AND CS3 SECTION 1: CS3 TOOL BOX: PAGE 2 SECTION 2: CS2 TOOL BOX: PAGE 11

QUICK REFERENCE: ADOBE ILLUSTRATOR CS2 AND CS3 SECTION 1: CS3 TOOL BOX: PAGE 2 SECTION 2: CS2 TOOL BOX: PAGE 11 QUICK REFERENCE, ADOBE ILLUSTRATOR, PAGE 1 QUICK REFERENCE: ADOBE ILLUSTRATOR CS2 AND CS3 CS2 SECTION 1: CS3 TOOL BOX: PAGE 2 SECTION 2: CS2 TOOL BOX: PAGE 11 SECTION 3: GENERAL CONCEPTS: PAGE 14 SELECTING

More information

11. Applets, normal window applications, packaging and sharing your work

11. Applets, normal window applications, packaging and sharing your work 11. Applets, normal window applications, packaging and sharing your work In this chapter Converting Full Screen experiments into normal window applications, Packaging and sharing applications packaging

More information

The Abstract Windowing Toolkit. Java Foundation Classes. Swing. In April 1997, JavaSoft announced the Java Foundation Classes (JFC).

The Abstract Windowing Toolkit. Java Foundation Classes. Swing. In April 1997, JavaSoft announced the Java Foundation Classes (JFC). The Abstract Windowing Toolkit Since Java was first released, its user interface facilities have been a significant weakness The Abstract Windowing Toolkit (AWT) was part of the JDK form the beginning,

More information

How to Convert an Application into an Applet.

How to Convert an Application into an Applet. How to Convert an Application into an Applet. A java application contains a main method. An applet is a java program part of a web page and runs within a browser. I am going to show you three different

More information

CPIT-285 Computer Graphics

CPIT-285 Computer Graphics Department of Information Technology B.S.Information Technology ABET Course Binder CPIT-85 Computer Graphics Prepared by Prof. Alhasanain Muhammad Albarhamtoushi Page of Sunday December 4 0 : PM Cover

More information

Interactive Programs and Graphics in Java

Interactive Programs and Graphics in Java Interactive Programs and Graphics in Java Alark Joshi Slide credits: Sami Rollins Announcements Lab 1 is due today Questions/concerns? SVN - Subversion Versioning and revision control system 1. allows

More information

Tutorial Reference Manual. Java WireFusion 4.1

Tutorial Reference Manual. Java WireFusion 4.1 Tutorial Reference Manual Java WireFusion 4.1 Contents INTRODUCTION...1 About this Manual...2 REQUIREMENTS...3 User Requirements...3 System Requirements...3 SHORTCUTS...4 DEVELOPMENT ENVIRONMENT...5 Menu

More information

Programming with Java GUI components

Programming with Java GUI components Programming with Java GUI components Java includes libraries to provide multi-platform support for Graphic User Interface objects. The multi-platform aspect of this is that you can write a program on a

More information

ART 170: Web Design 1

ART 170: Web Design 1 Banner Design Project Overview & Objectives Everyone will design a banner for a veterinary clinic. Objective Summary of the Project General objectives for the project in its entirety are: Design a banner

More information

Mouse Event Handling (cont.)

Mouse Event Handling (cont.) GUI Components: Part II Mouse Event Handling (cont.) Each mouse event-handling method receives a MouseEvent object that contains information about the mouse event that occurred, including the x- and y-coordinates

More information

Callbacks. Callbacks Copyright 2007 by Ken Slonneger 1

Callbacks. Callbacks Copyright 2007 by Ken Slonneger 1 Callbacks Callbacks refer to a mechanism in which a library or utility class provides a service to clients that are unknown to it when it is defined. Suppose, for example, that a server class creates a

More information

MiniDraw Introducing a framework... and a few patterns

MiniDraw Introducing a framework... and a few patterns MiniDraw Introducing a framework... and a few patterns What is it? [Demo] 2 1 What do I get? MiniDraw helps you building apps that have 2D image based graphics GIF files Optimized repainting Direct manipulation

More information

Adobe Illustrator CS5

Adobe Illustrator CS5 What is Illustrator? Adobe Illustrator CS5 An Overview Illustrator is a vector drawing program. It is often used to draw illustrations, cartoons, diagrams, charts and logos. Unlike raster images that store

More information

Canterbury Maps Quick Start - Drawing and Printing Tools

Canterbury Maps Quick Start - Drawing and Printing Tools Canterbury Maps Canterbury Maps Quick Start - Drawing and Printing Tools Quick Start Guide Standard GIS Viewer 2 Canterbury Maps Quick Start - Drawing and Printing Tools Introduction This document will

More information

Click on various options: Publications by Wizard Publications by Design Blank Publication

Click on various options: Publications by Wizard Publications by Design Blank Publication Click on various options: Publications by Wizard Publications by Design Blank Publication Select the Blank Publications Tab: Choose a blank full page Click on Create New Page Insert > Page Select the number

More information

Graphical User Interfaces

Graphical User Interfaces M14_REGE1813_02_SE_C14.qxd 2/10/10 3:43 PM Page 822 Chapter14 Graphical User Interfaces 14.1 GUI Basics Graphical Input and Output with Option Panes Working with Frames Buttons, Text Fields, and Labels

More information

The Virtual Pest as a Java Applet Shannon McGinnis Tosolt, Nov. 2002

The Virtual Pest as a Java Applet Shannon McGinnis Tosolt, Nov. 2002 The Virtual Pest as a Java Applet Shannon McGinnis Tosolt, Nov. 2002 Introduction This document describes the steps necessary to convert the Virtual Pest Javascript assignment to a Java applet. It discusses

More information

Understand the Sketcher workbench of CATIA V5.

Understand the Sketcher workbench of CATIA V5. Chapter 1 Drawing Sketches in Learning Objectives the Sketcher Workbench-I After completing this chapter you will be able to: Understand the Sketcher workbench of CATIA V5. Start a new file in the Part

More information

What s New V 11. Preferences: Parameters: Layout/ Modifications: Reverse mouse scroll wheel zoom direction

What s New V 11. Preferences: Parameters: Layout/ Modifications: Reverse mouse scroll wheel zoom direction What s New V 11 Preferences: Reverse mouse scroll wheel zoom direction Assign mouse scroll wheel Middle Button as Fine tune Pricing Method (Manufacturing/Design) Display- Display Long Name Parameters:

More information

Simple Line Drawing. Description of the Simple Line Drawing program

Simple Line Drawing. Description of the Simple Line Drawing program Simple Line Drawing Description of the Simple Line Drawing program JPT Techniques Creating and using the ColorView Creating and using the TextAreaView Creating and using the BufferedPanel with graphics

More information

Swing. A Quick Tutorial on Programming Swing Applications

Swing. A Quick Tutorial on Programming Swing Applications Swing A Quick Tutorial on Programming Swing Applications 1 MVC Model View Controller Swing is based on this design pattern It means separating the implementation of an application into layers or components:

More information

m ac romed ia Fi r e wo r k s Curriculum Guide

m ac romed ia Fi r e wo r k s Curriculum Guide m ac romed ia Fi r e wo r k s Curriculum Guide 1997 1998 Macromedia, Inc. All rights reserved. Macromedia, the Macromedia logo, Dreamweaver, Director, Fireworks, Flash, Fontographer, FreeHand, and Xtra

More information

How To Program In Java (Ipt) With A Bean And An Animated Object In A Powerpoint (For A Powerbook)

How To Program In Java (Ipt) With A Bean And An Animated Object In A Powerpoint (For A Powerbook) Graphic Interface Programming II Applets and Beans and animation in Java IT Uppsala universitet Applets Small programs embedded in web pages

More information

GUIs with Swing. Principles of Software Construction: Objects, Design, and Concurrency. Jonathan Aldrich and Charlie Garrod Fall 2012

GUIs with Swing. Principles of Software Construction: Objects, Design, and Concurrency. Jonathan Aldrich and Charlie Garrod Fall 2012 GUIs with Swing Principles of Software Construction: Objects, Design, and Concurrency Jonathan Aldrich and Charlie Garrod Fall 2012 Slides copyright 2012 by Jeffrey Eppinger, Jonathan Aldrich, William

More information

LAB4 Making Classes and Objects

LAB4 Making Classes and Objects LAB4 Making Classes and Objects Objective The main objective of this lab is class creation, how its constructer creation, object creation and instantiation of objects. We will use the definition pane to

More information

Tutorial Creating Vector Graphics

Tutorial Creating Vector Graphics Tutorial Creating Vector Graphics This tutorial will guide you through the creation of your own vector graphic and show you how best to meet the specific criteria for our print process. We recommend designing

More information

Java is commonly used for deploying applications across a network. Compiled Java code

Java is commonly used for deploying applications across a network. Compiled Java code Module 5 Introduction to Java/Swing Java is commonly used for deploying applications across a network. Compiled Java code may be distributed to different machine architectures, and a native-code interpreter

More information

Graphic Design Studio Guide

Graphic Design Studio Guide Graphic Design Studio Guide This guide is distributed with software that includes an end-user agreement, this guide, as well as the software described in it, is furnished under license and may be used

More information

Instructions for Creating a Poster for Arts and Humanities Research Day Using PowerPoint

Instructions for Creating a Poster for Arts and Humanities Research Day Using PowerPoint Instructions for Creating a Poster for Arts and Humanities Research Day Using PowerPoint While it is, of course, possible to create a Research Day poster using a graphics editing programme such as Adobe

More information

Analysis Of Source Lines Of Code(SLOC) Metric

Analysis Of Source Lines Of Code(SLOC) Metric Analysis Of Source Lines Of Code(SLOC) Metric Kaushal Bhatt 1, Vinit Tarey 2, Pushpraj Patel 3 1,2,3 Kaushal Bhatt MITS,Datana Ujjain 1 kaushalbhatt15@gmail.com 2 vinit.tarey@gmail.com 3 pushpraj.patel@yahoo.co.in

More information

Homework/Program #5 Solutions

Homework/Program #5 Solutions Homework/Program #5 Solutions Problem #1 (20 points) Using the standard Java Scanner class. Look at http://natch3z.blogspot.com/2008/11/read-text-file-using-javautilscanner.html as an exampleof using the

More information

Doña Ana County, NM Map Help

Doña Ana County, NM Map Help Doña Ana County, NM Map Help Map Features Introduction 1. Toolbar 2. Zoom Control Buttons 3. Map/Legend Tabs 4. Layer Control 5. Parcel Search Tools 6. Selected Feature Attributes Toolbar The map toolbar

More information

History OOP languages Year Language 1967 Simula-67 1983 Smalltalk

History OOP languages Year Language 1967 Simula-67 1983 Smalltalk History OOP languages Intro 1 Year Language reported dates vary for some languages... design Vs delievered 1957 Fortran High level programming language 1958 Lisp 1959 Cobol 1960 Algol Structured Programming

More information

Mobile App Tutorial Animation with Custom View Class and Animated Object Bouncing and Frame Based Animation

Mobile App Tutorial Animation with Custom View Class and Animated Object Bouncing and Frame Based Animation Mobile App Tutorial Animation with Custom View Class and Animated Object Bouncing and Frame Based Animation Description of View Based Animation and Control-Model-View Design process In mobile device programming,

More information

Image Processing and Computer Graphics. Rendering Pipeline. Matthias Teschner. Computer Science Department University of Freiburg

Image Processing and Computer Graphics. Rendering Pipeline. Matthias Teschner. Computer Science Department University of Freiburg Image Processing and Computer Graphics Rendering Pipeline Matthias Teschner Computer Science Department University of Freiburg Outline introduction rendering pipeline vertex processing primitive processing

More information

Recipes4Success. Animate a Rocket Ship. Frames 6 - Drawing Tools

Recipes4Success. Animate a Rocket Ship. Frames 6 - Drawing Tools Recipes4Success You can use the drawing tools and path animation tools in Frames to create illustrated cartoons. In this Recipe, you will draw and animate a rocket ship. 2014. All Rights Reserved. This

More information

Overview of the Adobe Flash Professional CS6 workspace

Overview of the Adobe Flash Professional CS6 workspace Overview of the Adobe Flash Professional CS6 workspace In this guide, you learn how to do the following: Identify the elements of the Adobe Flash Professional CS6 workspace Customize the layout of the

More information

Graphic Design with Gimp

Graphic Design with Gimp Graphic Design with Gimp Author: Jake Harries, Acces Space and Andrej Arh, Rizom Maribor, 2012 Licence: Creative commons OVERVIEW: learning the basics of digital image manipulation using GIMP This learning

More information

A Short Introduction to Computer Graphics

A Short Introduction to Computer Graphics A Short Introduction to Computer Graphics Frédo Durand MIT Laboratory for Computer Science 1 Introduction Chapter I: Basics Although computer graphics is a vast field that encompasses almost any graphical

More information

Introduction to Computer Graphics

Introduction to Computer Graphics Introduction to Computer Graphics Torsten Möller TASC 8021 778-782-2215 torsten@sfu.ca www.cs.sfu.ca/~torsten Today What is computer graphics? Contents of this course Syllabus Overview of course topics

More information

1 Hour, Closed Notes, Browser open to Java API docs is OK

1 Hour, Closed Notes, Browser open to Java API docs is OK CSCI 143 Exam 2 Name 1 Hour, Closed Notes, Browser open to Java API docs is OK A. Short Answer For questions 1 5 credit will only be given for a correct answer. Put each answer on the appropriate line.

More information

Lession: 2 Animation Tool: Synfig Card or Page based Icon and Event based Time based Pencil: Synfig Studio: Getting Started: Toolbox Canvas Panels

Lession: 2 Animation Tool: Synfig Card or Page based Icon and Event based Time based Pencil: Synfig Studio: Getting Started: Toolbox Canvas Panels Lession: 2 Animation Tool: Synfig In previous chapter we learn Multimedia and basic building block of multimedia. To create a multimedia presentation using these building blocks we need application programs

More information

Two-Dimensional Arrays Java Programming 2 Lesson 12

Two-Dimensional Arrays Java Programming 2 Lesson 12 Two-Dimensional Arrays Java Programming 2 Lesson 12 More About Arrays Working With Two-Dimensional Arrays A two-dimensional array is like a grid of rows and columns, such as these Post Office boxes: It

More information

Introduction to Java Applets (Deitel chapter 3)

Introduction to Java Applets (Deitel chapter 3) Introduction to Java Applets (Deitel chapter 3) 1 2 Plan Introduction Sample Applets from the Java 2 Software Development Kit Simple Java Applet: Drawing a String Drawing Strings and Lines Adding Floating-Point

More information

MovieClip, Button, Graphic, Motion Tween, Classic Motion Tween, Shape Tween, Motion Guide, Masking, Bone Tool, 3D Tool

MovieClip, Button, Graphic, Motion Tween, Classic Motion Tween, Shape Tween, Motion Guide, Masking, Bone Tool, 3D Tool 1 CEIT 323 Lab Worksheet 1 MovieClip, Button, Graphic, Motion Tween, Classic Motion Tween, Shape Tween, Motion Guide, Masking, Bone Tool, 3D Tool Classic Motion Tween Classic tweens are an older way of

More information

WFP Liberia Country Office

WFP Liberia Country Office 1 Oscar Gobbato oscar.gobbato@wfp.org oscar.gobbato@libero.it WFP Liberia Country Office GIS training - Summary Objectives 1 To introduce to participants the basic concepts and techniques in using Geographic

More information

Logo Design Studio Pro Guide

Logo Design Studio Pro Guide Logo Design Studio Pro Guide This guide is distributed with software that includes an end-user agreement, this guide, as well as the software described in it, is furnished under license and may be used

More information

Window's Paint Tools

Window's Paint Tools Window's Paint Tools The selection of Paint tools. Left click the mouse button on anyone of these will switch on that function. With the chosen function the colour in the bottom left hand box is in use,

More information

Software Design: Figures

Software Design: Figures Software Design: Figures Today ColorPicker Layout Manager Observer Pattern Radio Buttons Prelimiary Discussion Exercise 5 ColorPicker They don't teach you the facts of death, Your mum and dad. They give

More information

SE 360 Advances in Software Development Object Oriented Development in Java. Polymorphism. Dr. Senem Kumova Metin

SE 360 Advances in Software Development Object Oriented Development in Java. Polymorphism. Dr. Senem Kumova Metin SE 360 Advances in Software Development Object Oriented Development in Java Polymorphism Dr. Senem Kumova Metin Modified lecture notes of Dr. Hüseyin Akcan Inheritance Object oriented programming languages

More information

10. THERM DRAWING TIPS

10. THERM DRAWING TIPS 10. THERM DRAWING TIPS 10.1. Drawing Tips The THERM User's Manual describes in detail how to draw cross-sections in THERM. This section of the NFRC Simualation Training Manual presents some additional

More information

Essentials of the Java(TM) Programming Language, Part 1

Essentials of the Java(TM) Programming Language, Part 1 Essentials of the Java(TM) Programming Language, Part 1 http://developer.java.sun.com/developer...ining/programming/basicjava1/index.html Training Index Essentials of the Java TM Programming Language:

More information

TOON BOOM HARMONY 12.1 - Essentials Edition - Paperless Animation Guide

TOON BOOM HARMONY 12.1 - Essentials Edition - Paperless Animation Guide TOON BOOM HARMONY 12.1 - Essentials Edition - Paperless Animation Guide Legal Notices Toon Boom Animation Inc. 4200 Saint-Laurent, Suite 1020 Montreal, Quebec, Canada H2W 2R2 Tel: +1 514 278 8666 Fax:

More information

Fireworks CS4 Tutorial Part 1: Intro

Fireworks CS4 Tutorial Part 1: Intro Fireworks CS4 Tutorial Part 1: Intro This Adobe Fireworks CS4 Tutorial will help you familiarize yourself with this image editing software and help you create a layout for a website. Fireworks CS4 is the

More information

Section 6 Spring 2013

Section 6 Spring 2013 Print Your Name You may use one page of hand written notes (both sides) and a dictionary. No i-phones, calculators or any other type of non-organic computer. Do not take this exam if you are sick. Once

More information

Graphic Design. Background: The part of an artwork that appears to be farthest from the viewer, or in the distance of the scene.

Graphic Design. Background: The part of an artwork that appears to be farthest from the viewer, or in the distance of the scene. Graphic Design Active Layer- When you create multi layers for your images the active layer, or the only one that will be affected by your actions, is the one with a blue background in your layers palette.

More information

Flash Tutorial Part I

Flash Tutorial Part I Flash Tutorial Part I This tutorial is intended to give you a basic overview of how you can use Flash for web-based projects; it doesn t contain extensive step-by-step instructions and is therefore not

More information

GUI Development: Goals. User Interface Programming in C#: Basics and Events. C# Materials

GUI Development: Goals. User Interface Programming in C#: Basics and Events. C# Materials GUI Development: Goals User Interface Programming in C#: Basics and Events Chris North CS 3724: HCI 1. General GUI programming concepts GUI components, layouts Event-based programming Graphics Direct Manipulation,

More information

Object Oriented Software Design

Object Oriented Software Design Object Oriented Software Design Introduction to Java - II Giuseppe Lipari http://retis.sssup.it/~lipari Scuola Superiore Sant Anna Pisa October 28, 2010 G. Lipari (Scuola Superiore Sant Anna) Introduction

More information

How Scala Improved Our Java

How Scala Improved Our Java How Scala Improved Our Java Sam Reid PhET Interactive Simulations University of Colorado http://spot.colorado.edu/~reids/ PhET Interactive Simulations Provides free, open source educational science simulations

More information

Java SE 6 Update 10. la piattaforma Java per le RIA. Corrado De Bari. Sun Microsystems Italia Spa. Software & Java Ambassador

Java SE 6 Update 10. la piattaforma Java per le RIA. Corrado De Bari. Sun Microsystems Italia Spa. Software & Java Ambassador Java SE 6 Update 10 & JavaFX: la piattaforma Java per le RIA Corrado De Bari Software & Java Ambassador Sun Microsystems Italia Spa 1 Agenda What's news in Java Runtime Environment JavaFX Technology Key

More information

Tutorial for Tracker and Supporting Software By David Chandler

Tutorial for Tracker and Supporting Software By David Chandler Tutorial for Tracker and Supporting Software By David Chandler I use a number of free, open source programs to do video analysis. 1. Avidemux, to exerpt the video clip, read the video properties, and save

More information

Geocortex HTML 5 Viewer Manual

Geocortex HTML 5 Viewer Manual 1 FAQ Nothing Happens When I Print? How Do I Search? How Do I Find Feature Information? How Do I Print? How can I Email A Map? How Do I See the Legend? How Do I Find the Coordinates of a Location? How

More information

Sample Turtle Programs

Sample Turtle Programs Sample Turtle Programs Sample 1: Drawing a square This program draws a square. Default values are used for the turtle s pen color, pen width, body color, etc. import galapagos.*; /** * This sample program

More information

Introducing Variance into the Java Programming Language DRAFT

Introducing Variance into the Java Programming Language DRAFT Introducing Variance into the Java Programming Language A Quick Tutorial DRAFT Christian Plesner Hansen Peter von der Ahé Erik Ernst Mads Torgersen Gilad Bracha June 3, 2003 1 Introduction Notice: This

More information

http://school-maths.com Gerrit Stols

http://school-maths.com Gerrit Stols For more info and downloads go to: http://school-maths.com Gerrit Stols Acknowledgements GeoGebra is dynamic mathematics open source (free) software for learning and teaching mathematics in schools. It

More information

Lecture Notes, CEng 477

Lecture Notes, CEng 477 Computer Graphics Hardware and Software Lecture Notes, CEng 477 What is Computer Graphics? Different things in different contexts: pictures, scenes that are generated by a computer. tools used to make

More information

Image Processing. In this chapter: ImageObserver ColorModel ImageProducer ImageConsumer ImageFilter

Image Processing. In this chapter: ImageObserver ColorModel ImageProducer ImageConsumer ImageFilter 12 In this chapter: ImageObserver ColorModel ImageProducer ImageConsumer ImageFilter Image Processing The image processing parts of Java are buried within the java.awt.image package. The package consists

More information

Create a Poster Using Publisher

Create a Poster Using Publisher Contents 1. Introduction 1. Starting Publisher 2. Create a Poster Template 5. Aligning your images and text 7. Apply a background 12. Add text to your poster 14. Add pictures to your poster 17. Add graphs

More information

Object Oriented Software Design

Object Oriented Software Design Object Oriented Software Design Introduction to Java - II Giuseppe Lipari http://retis.sssup.it/~lipari Scuola Superiore Sant Anna Pisa September 14, 2011 G. Lipari (Scuola Superiore Sant Anna) Introduction

More information

Essentials of the Java Programming Language

Essentials of the Java Programming Language Essentials of the Java Programming Language A Hands-On Guide by Monica Pawlan 350 East Plumeria Drive San Jose, CA 95134 USA May 2013 Part Number TBD v1.0 Sun Microsystems. Inc. All rights reserved If

More information

Using C# for Graphics and GUIs Handout #2

Using C# for Graphics and GUIs Handout #2 Using C# for Graphics and GUIs Handout #2 Learning Objectives: C# Arrays Global Variables Your own methods Random Numbers Working with Strings Drawing Rectangles, Ellipses, and Lines Start up Visual Studio

More information

Autodesk Fusion 360 Badge Guide: Design an F1 in Schools Trophy

Autodesk Fusion 360 Badge Guide: Design an F1 in Schools Trophy Autodesk Fusion 360 Badge Guide: Design an F1 in Schools Trophy Abstract: Gain basic understanding of creating 3D models in Fusion 360 by designing an F1 in Schools trophy. This badge may be claimed by

More information

3D Viewer. user's manual 10017352_2

3D Viewer. user's manual 10017352_2 EN 3D Viewer user's manual 10017352_2 TABLE OF CONTENTS 1 SYSTEM REQUIREMENTS...1 2 STARTING PLANMECA 3D VIEWER...2 3 PLANMECA 3D VIEWER INTRODUCTION...3 3.1 Menu Toolbar... 4 4 EXPLORER...6 4.1 3D Volume

More information