PyGame Unit ?

Size: px
Start display at page:

Download "PyGame Unit ?"

Transcription

1 PyGame Unit ? 1.1 Introduction to PyGame

2 Text Book for Python Module Making Games With Python and PyGame By Al Swiegert Easily found on the Internet:

3 PyGame 1-1 Introduction to PyGame

4 Your Wait is Over We are finally here. PyGame is fun. You won t truly know whether or not you like programming until we dig into PyGame. Let s get started!!!

5 Objectives By the end of this unit you will be able to: Download and Install PyGame Describe and modify the PyGame version of Hello World. Define the primary parts of the game loop: Events Game State Drawing on the screen

6 Downloading PyGame PyGame Website PyGame Download PyGame Documentation PyGame Tutorial

7 Hello World In PyGame 1. import pygame, sys 2. from pygame.locals import * pygame.init() 5. DISPLAYSURF = pygame.display.set_mode((400, 300)) 6. pygame.display.set_caption('hello World!') 7. while True: # main game loop 8. for event in pygame.event.get(): 9. if event.type == QUIT: 10. pygame.quit() 11. sys.exit() 12. pygame.display.update()

8 PyGame Window for Hello World

9 Decomposing Hello World

10 Import Statement (Hello World) 1. import pygame, sys Importing the pygame and sys modules so we can use their functions. Normally to call a function in an imported module you use: modulename.functionname() 2. from pygame.locals import * Allows you skip the modulename.

11 Hello World (initialize) 4. pygame.init() Must call pygame.init() after the imports to use PyGame.

12 PyGame.display.set_mode (Surface Object) DISPLAYSURF = pygame.display.set_mode((400, 300)) The generated pygame.surface object is stored in the DISPLAYSURF variable. All visible images must be placed on DISPLAYSURF This screen is: 400 pixels wide 300 pixels tall

13 PyGame.display.set_mode (Surface Object) DISPLAYSURF = pygame.display.set_mode((400, 300)) The set_mode() function must be called with a tuple Must have the double parenthesis: ((400, 300)) If you use single parenthesis, you will get an error like this: TypeError: argument 1 must be 2-item sequence, not int.

14 Hello World (Set the Caption) 6. pygame.display.set_caption('hello!') Hello! will now display in the title bar of the game window.

15 Game State Game state - a set of values for all the variables in a game program. Examples include: player s health and position the health and position of any enemies which marks have been made on a board Who s turn it is

16 Hello World (Game Loops and Game States) 7. while True: # main game loop 8. for event in pygame.event.get(): Game Loop Loops until the game ends. Does three things: Handles Events Updates game state Draws the game state on the screen. Three things covered in next slides.

17 Hello World (Events) 8. for event in pygame.event.get(): Event When users interact with a program, programs interact with each other, the passage of time, etc. pygame.event.get() Returns a list of events that have occurred since the last time we called this function.

18 The QUIT Event for event in pygame.event.get(): if event.type == QUIT: pygame.quit() sys.exit() QUIT is a PyGame constant The QUIT event type is generated when the user closes the screen. (Continued)

19 pygame.quit() function. for event in pygame.event.get(): if event.type == QUIT: pygame.quit() sys.exit() The pygame.quit() function stops the PyGame process. The sys.exit() function should always be called just after pygame.quit()

20 pygame.display.update() pygame.display.update() function - draws the Surface object returned by pygame.display.set_mode() to the screen This object is in the DISPLAYSURF variable). Since the Surface object hasn t changed, the same black image is redrawn to the screen each time pygame.display.update() is called.

21 Reading / Exercises Read the Making Games with Python and PyGame textbook PP pg1-1-1.py pg1-1-3.py pg1-1-3.py

22 PyGame 1-2 Pixels, Surface objects, Color objects, and Rect objects

23 Objectives By the end of this unit you will be able to work with PyGame: Surface objects. Colors and transparency Rect objects

24 Pixels Pixel Little square dots on your computer screen. Each pixel starts off as black but can be changed by the program.

25 Cartesian Coordinates Used to position items on the screen. Represented as (x, y) Have students identify the coordinates of specific squares on the image to the right. Cartesian coordinates (Image courtesy of Al Sweigart Making Games with Python and Pygame )

26 The Surface Object Surface objects - objects that represent a rectangular 2D image. Display Surface - object returned by: pygame.display.set_mode() Often your program will draw several different things to a Surface object. Once you are done drawing everything on the display Surface object for a given loop iteration, it can be drawn to the screen using pygame.display.update()

27 Frames Frame One iteration of the game loop. just like a still image on a paused DVD is called. Animation A series of still images (frames) played in sequence to simulate movement.

28 Colors RGB The amount of Red, Green and Blue in a given color. Produces a broad array of color possibilities. Values between 0 (no color) and 255 (fully saturated). Red (255, 0, 0) Green (0, 255, 0) Blue (0, 0, 255) White (255, 255, 255) Black (0, 0, 0) Purple (128, 0, 128) What do the parenthesis around the values mean???

29 Transparent Colors (RGBA) Alpha Value - a measure of how opaque (not transparent) a color is. Alpha Value of 255 = full intensity Alpha Value of 128 = half intensity (50% transparent) Alpha Value of 64 = ¼ intensity (75% transparent) Tuple for Green - (0, 255, 0) To make it fifty percent transparent, add a fourth integer: (0, 255, 0, 128)

30 Drawing Using Transparent Objects 1. Create a Surface object with the convert_alpha() method. For example, the following code creates a Surface object in which transparent colors can be drawn: ALPHA_SURF = DISPLAYSURF.convert_alpha() 1. Once things have been drawn on the Surface object stored in ALPHA_SURF, then it can be blitted (copied) to DISPLAYSURF so it will appear on the screen. Blitting is very important and discussed in greater detail later.

31 Pygame.Color Objects Allow you to create color objects. In this example mycolor is a red object that is 50% transparent. mycolor = pygame.color(255, 0, 0, 128) The mycolor object may be used as a function parameter elsewhere in the program.

32 Rect Objects Two ways to represent rectangular areas in PyGame: A tuple of four integers (x, y, width, height): 1. The x coordinate of the top left corner. OR 2. The y coordinate of the top left corner. 3. The width (in pixels) of the rectangle. 4. Then height (in pixels) of the rectangle. The pygame.rect object

33 The pygame.rect Object #myrect = pygame.rect(x, y, width, height) myrect = pygame.rect(10, 20, 200, 300) print(myrect == (10, 20, 200, 300)) Returns: True

34 Rect Object (Automatically Calculated Coordinates) #myrect = pygame.rect(x, y, width, height) myrect = pygame.rect(10, 20, 200, 300) To retrieve the X coordinate of the right edge of the myrect: myrect.right Returns: (left edge) (width) = 210 Automatically calculates coordinates for other features of the rectangle.

35 Rect Object (Changing an Attribute) myrect = pygame.rect(10, 20, 200, 300) If you reassign the right attribute, all the other attributes are automatically recalculated: myrect.right = 350 print(myrect.left) Returns: 150 myrect is 200 pixels wide. 350 (new right edge) 200 (Width) = 150 (new left edge)

36 Rect Object (Attributes) Attribute myrect.bottom myrect.centerx myrect.width myrect.topleft myrect.midleft Returns or Sets The int value of the Y-coordinate of the bottom side. The int value of the X-coordinate of the center of the rectangle. The int value of the width of the rectangle. A tuple of two ints: (left, top) A tuple of two ints: (left, centery)

37 Reading / Exercises Read the Making Games with Python and PyGame textbook PP Hello World: pg1-2-1.py pg1-2-2.py Rect Object: pg1-2-3.py

38 PyGame 1-3 Primitive Drawing Functions

39 Objectives By the end of this lesson you will be able to: Draw the following shapes using the PyGame primitive drawing functions: Polygons Rectangles Circles Ellipses Color individual pixels using the pygame.pixelarray object.

40 Drawing a Line pygame.draw.line(surface, color, start_point, end_point, width) pygame.draw.line(displaysurf, BLUE, (60, 60), (120, 60), 4)

41 Drawing a Circle pygame.draw.circle(surface, color, center_point, radius, width) pygame.draw.circle(displaysurf, BLUE, (100, 50), 20, 0)

42 Drawing a Rectangle pygame.draw.rect(surface, color, rectangle_tuple, width) pygame.draw.rect(displaysurf, RED, (50, 25, 100, 50), 5)

43 Drawing an Ellipse pygame.draw.ellipse(surface, color, bounding_rectangle, width) pygame.draw.ellipse(displaysurf, RED, (50, 20, 80, 40), 3)

44 Drawing a Polygon pygame.draw.polygon(surface, color, pointlist, width) pygame.draw.polygon(displaysurf, GREEN, ( (146, 0),(291, 106),(236, 277),(56,277), (0, 106))) The last coordinate is unnecessary. A line is automatically drawn from the last point to the first

45 Reading / Exercises Read the Making Games with Python and PyGame textbook PP Primitive Drawing Functions: pg1-3-1.py pg1-3-2.py

PYTHON NOTES (drawing.py and drawstuff.py)

PYTHON NOTES (drawing.py and drawstuff.py) PYTHON NOTES (drawing.py and drawstuff.py) INTRODUCTION TO PROGRAMMING USING PYGAME STEP 1: Importing Modules and Initialization All the Pygame functions that are required to implement features like graphics

More information

There s already a ton of code written called libraries that we can use by importing. One that we use often is random

There s already a ton of code written called libraries that we can use by importing. One that we use often is random There s already a ton of code written called libraries that we can use by importing. One that we use often is random import random print random.randint(2, 22) Random frequently used methods Name Use random.randint(a,

More information

Pyganim Documentation

Pyganim Documentation Pyganim Documentation Release 0.9.0 Al Sweigart Oct 30, 2017 Contents 1 Installation 3 1.1 Background Information......................................... 3 1.2 Installation................................................

More information

pygame Lecture #5 (Examples: fruitgame)

pygame Lecture #5 (Examples: fruitgame) pygame Lecture #5 (Examples: fruitgame) MOUSE INPUT IN PYGAME I. Detecting Mouse Input in pygame In addition to waiting for a keyboard event to precipitate some action, pygame allows us to wait for a mouse

More information

Introduction to Game Programming Lesson 4 Lecture Notes

Introduction to Game Programming Lesson 4 Lecture Notes Introduction to Game Programming Lesson 4 Lecture Notes Learning Objectives: Following this lecture, the student should be able to: Define frame rate List the factors that affect the amount of time a game

More information

Multimedia-Programmierung Übung 5

Multimedia-Programmierung Übung 5 Multimedia-Programmierung Übung 5 Ludwig-Maximilians-Universität München Sommersemester 2009 Ludwig-Maximilians-Universität München Multimedia-Programmierung 5-1 Today Sprite animations in Advanced collision

More information

Multimedia-Programmierung Übung 6

Multimedia-Programmierung Übung 6 Multimedia-Programmierung Übung 6 Ludwig-Maximilians-Universität München Sommersemester 2018 Ludwig-Maximilians-Universität München Multimedia-Programmierung 6-1 Today Sprites, Sprite Groups and Sprite

More information

Introduction to Game Programming Lesson 5 Lecture Notes, Part 1: The draw Module

Introduction to Game Programming Lesson 5 Lecture Notes, Part 1: The draw Module Introduction to Game Programming Lesson 5 Lecture Notes, Part 1: The draw Module Learning Objectives: Following this lecture, the student should be able to: Draw a line with pygame, using all parameters

More information

CS 140 Final Exam Review Problems

CS 140 Final Exam Review Problems This is a cumulative final exam, so please review all of the practice problems as well as your quizzes and exam. There is some material that you haven t been tested on yet (images, strings, and lists),

More information

slide 1 gaius Python Classes you can use theclass keyword to create your own classes here is a tiny example of a class

slide 1 gaius Python Classes you can use theclass keyword to create your own classes here is a tiny example of a class Python Classes slide 1 you can use theclass keyword to create your own classes here is a tiny example of a class Python Classes slide 2 tinyclass.py #!/usr/bin/python import math class vector: def init

More information

mith College Computer Science CSC103 How Computers Work Week 7 Fall 2017 Dominique Thiébaut

mith College Computer Science CSC103 How Computers Work Week 7 Fall 2017 Dominique Thiébaut mith College Computer Science CSC103 How Computers Work Week 7 Fall 2017 Dominique Thiébaut dthiebaut@smith.edu Important Review Does the animation leave a trace? Are the moving objects move without a

More information

An Introduction to Processing

An Introduction to Processing An Introduction to Processing Creating static drawings Produced by: Mairead Meagher Dr. Siobhán Drohan Department of Computing and Mathematics http://www.wit.ie/ Topics list Coordinate System in Computing.

More information

Multimedia-Programmierung Übung 7

Multimedia-Programmierung Übung 7 Multimedia-Programmierung Übung 7 Ludwig-Maximilians-Universität München Sommersemester 2013 Ludwig-Maximilians-Universität München Multimedia-Programmierung 7-1 Today Sprite animations in Advanced collision

More information

CISC 1600 Lecture 3.1 Introduction to Processing

CISC 1600 Lecture 3.1 Introduction to Processing CISC 1600 Lecture 3.1 Introduction to Processing Topics: Example sketches Drawing functions in Processing Colors in Processing General Processing syntax Processing is for sketching Designed to allow artists

More information

Structured Programming Using C++ Lecture 10 : Graphics Programming with the Dark GDK Library. Dr. Amal Khalifa. Lecture Contents:

Structured Programming Using C++ Lecture 10 : Graphics Programming with the Dark GDK Library. Dr. Amal Khalifa. Lecture Contents: Structured Programming Using C++ Lecture 10 : Graphics Programming with the Dark GDK Library Dr. Amal Khalifa Lecture Contents: the Dark GDK Library The Screen Coordinate System Basic Graphics Shapes Colors

More information

Programming Fundamentals

Programming Fundamentals Programming Fundamentals Lecture 03 Introduction to Löve 2D Edirlei Soares de Lima Computer Graphics Concepts What is a pixel? In digital imaging, a pixel is a single

More information

To specify the dimensions of the drawing canvas use the size statement: ! size( 300, 400 );

To specify the dimensions of the drawing canvas use the size statement: ! size( 300, 400 ); Study Guide We have examined three main topics: drawing static pictures, drawing simple moving pictures, and manipulating images. The Final Exam will be concerned with each of these three topics. Each

More information

pygame Lecture #2 (Examples: movingellipse, bouncingball, planets, bouncingballgravity)

pygame Lecture #2 (Examples: movingellipse, bouncingball, planets, bouncingballgravity) pygame Lecture #2 (Examples: movingellipse, bouncingball, planets, bouncingballgravity) MOVEMENT IN PYGAME I. Realizing the screen is getting redrawn many times. Let's take a look at the key portion of

More information

Multimedia-Programmierung Übung 7

Multimedia-Programmierung Übung 7 Multimedia-Programmierung Übung 7 Ludwig-Maximilians-Universität München Sommersemester 2017 Today Particles Sound Illustrated with + Physics Users have specific expectations For example, if something

More information

Video Games. Writing Games with Pygame

Video Games. Writing Games with Pygame Video Games Writing Games with Pygame Special thanks to Scott Shawcroft, Ryan Tucker, and Paul Beck for their work on these slides. Except where otherwise noted, this work is licensed under: http://creativecommons.org/licenses/by-nc-sa/3.0

More information

mith College Computer Science CSC103 How Computers Work Week 6 Fall 2017 Dominique Thiébaut

mith College Computer Science CSC103 How Computers Work Week 6 Fall 2017 Dominique Thiébaut mith College Computer Science CSC103 How Computers Work Week 6 Fall 2017 Dominique Thiébaut dthiebaut@smith.edu Ben Fry on Processing... http://www.youtube.com/watch?&v=z-g-cwdnudu An Example Mouse 2D

More information

EXCODE. Code An App From Scratch

EXCODE. Code An App From Scratch 3 EXCODE Code An App From Scratch Course Overview Weeks 1-2 Learning Python Weeks 3-5 Creating your game Week 6 Presenting the games Get the course notes exeterentrepreneurs.com/excode-content exeterentrepreneurs.com/excode-content/

More information

+ Inheritance. Sometimes we need to create new more specialized types that are similar to types we have already created.

+ Inheritance. Sometimes we need to create new more specialized types that are similar to types we have already created. + Inheritance + Inheritance Classes that we design in Java can be used to model some concept in our program. For example: Pokemon a = new Pokemon(); Pokemon b = new Pokemon() Sometimes we need to create

More information

GETTING STARTED WITH RASPBERRY PI

GETTING STARTED WITH RASPBERRY PI GETTING STARTED WITH RASPBERRY PI Workshop Handout Created by Furtherfield Commissioned by Southend Education Trust GETTING STARTED WITH RASPBERRY PI INTRODUCTION Introduce Raspberry Pi and answer some

More information

CHAPTER 1. Command Arguments Description Example. Prints something to the console. A value can be text in quotes or a variable name.

CHAPTER 1. Command Arguments Description Example. Prints something to the console. A value can be text in quotes or a variable name. GAME PROGRAMMING L LINE These are the tokens from the end of each chapter of Game Programming, the L Line I ve recombined these charts into one handy document you can and use as a reference. Thanks to

More information

Drawing a Circle. 78 Chapter 5. geometry.pyde. def setup(): size(600,600) def draw(): ellipse(200,100,20,20) Listing 5-1: Drawing a circle

Drawing a Circle. 78 Chapter 5. geometry.pyde. def setup(): size(600,600) def draw(): ellipse(200,100,20,20) Listing 5-1: Drawing a circle 5 Transforming Shapes with Geometry In the teahouse one day Nasrudin announced he was selling his house. When the other patrons asked him to describe it, he brought out a brick. It s just a collection

More information

[ the academy_of_code] Senior Beginners

[ the academy_of_code] Senior Beginners [ the academy_of_code] Senior Beginners 1 Drawing Circles First step open Processing Open Processing by clicking on the Processing icon (that s the white P on the blue background your teacher will tell

More information

c.def (pronounced SEE-def) Language Reference Manual

c.def (pronounced SEE-def) Language Reference Manual c.def (pronounced SEE-def) Macromedia Flash TM animation language Language Reference Manual Dennis Rakhamimov (dr524@columbia.edu), Group Leader Eric Poirier (edp29@columbia.edu) Charles Catanach (cnc26@columbia.edu)

More information

PyGame Sprites. an excellent turorial exists for PyGame sprites here kai.vm.bytemark.co.uk/ piman/writing/spritetutorial.shtml.

PyGame Sprites. an excellent turorial exists for PyGame sprites here  kai.vm.bytemark.co.uk/ piman/writing/spritetutorial.shtml. PyGame Sprites slide 1 an excellent turorial exists for PyGame sprites here http:// kai.vm.bytemark.co.uk/ piman/writing/spritetutorial.shtml. these notes are derived from this tutorial and the examples

More information

CS 2110 Fall Instructions. 1 Installing the code. Homework 4 Paint Program. 0.1 Grading, Partners, Academic Integrity, Help

CS 2110 Fall Instructions. 1 Installing the code. Homework 4 Paint Program. 0.1 Grading, Partners, Academic Integrity, Help CS 2110 Fall 2012 Homework 4 Paint Program Due: Wednesday, 12 November, 11:59PM In this assignment, you will write parts of a simple paint program. Some of the functionality you will implement is: 1. Freehand

More information

In this lecture we will briefly examine a few new controls, introduce the concept of scope, random numbers, and drawing simple graphics.

In this lecture we will briefly examine a few new controls, introduce the concept of scope, random numbers, and drawing simple graphics. Additional Controls, Scope, Random Numbers, and Graphics CS109 In this lecture we will briefly examine a few new controls, introduce the concept of scope, random numbers, and drawing simple graphics. Combo

More information

EXAMINATIONS 2017 TRIMESTER 2

EXAMINATIONS 2017 TRIMESTER 2 EXAMINATIONS 2017 TRIMESTER 2 CGRA 151 INTRODUCTION TO COMPUTER GRAPHICS Time Allowed: TWO HOURS CLOSED BOOK Permitted materials: Silent non-programmable calculators or silent programmable calculators

More information

ACS-1805 Introduction to Programming (with App Inventor)

ACS-1805 Introduction to Programming (with App Inventor) ACS-1805 Introduction to Programming (with App Inventor) Chapter 8 Creating Animated Apps 10/25/2018 1 What We Will Learn The methods for creating apps with simple animations objects that move Including

More information

Student Outcomes. Lesson Notes. Classwork. Opening Exercise (3 minutes)

Student Outcomes. Lesson Notes. Classwork. Opening Exercise (3 minutes) Student Outcomes Students solve problems related to the distance between points that lie on the same horizontal or vertical line Students use the coordinate plane to graph points, line segments and geometric

More information

Generating Vectors Overview

Generating Vectors Overview Generating Vectors Overview Vectors are mathematically defined shapes consisting of a series of points (nodes), which are connected by lines, arcs or curves (spans) to form the overall shape. Vectors can

More information

Nets and Drawings for Visualizing Geometry. Unit 1 Lesson 1

Nets and Drawings for Visualizing Geometry. Unit 1 Lesson 1 Nets and Drawings for Visualizing Geometry Unit 1 Lesson 1 Students will be able to: Represent three-dimensional figures using nets. Make isometric and orthographic drawings. Key Vocabulary: Net Isometric

More information

2 Multimedia Programming with Python and Pygame

2 Multimedia Programming with Python and Pygame 2 Multimedia Programming with Python and Pygame 2.1 Introduction to Python 2.2 SDL/Pygame: Multimedia/Game Framework for Python 2.3 SDL: Background of Pygame Literature: www.pygame.org kidscancode.org/blog/2015/09/pygame_install/

More information

Graphics Reference (graphics.py v5)

Graphics Reference (graphics.py v5) Graphics Reference (graphics.py v5) 1 Overview The package graphics.py is a simple object oriented graphics library designed to make it very easy for novice programmers to experiment with computer graphics

More information

Bridging Graphics. Lori Scarlatos, January 2007

Bridging Graphics. Lori Scarlatos, January 2007 Bridging Graphics Lori Scarlatos January 2007 Introduction Computer graphics have one clear advantage over other types of programs: with computer graphics you can literally see whether your program is

More information

Solution Notes. COMP 151: Terms Test

Solution Notes. COMP 151: Terms Test Family Name:.............................. Other Names:............................. ID Number:............................... Signature.................................. Solution Notes COMP 151: Terms

More information

CISC 1600, Lab 2.1: Processing

CISC 1600, Lab 2.1: Processing CISC 1600, Lab 2.1: Processing Prof Michael Mandel 1 Getting set up For this lab, we will be using Sketchpad, a site for building processing sketches online using processing.js. 1.1. Go to http://cisc1600.sketchpad.cc

More information

Introduction to Processing

Introduction to Processing Processing Introduction to Processing Processing is a programming environment that makes writing programs easier. It contains libraries and functions that make interacting with the program simple. The

More information

Chapter 3. Texture mapping. Learning Goals: Assignment Lab 3: Implement a single program, which fulfills the requirements:

Chapter 3. Texture mapping. Learning Goals: Assignment Lab 3: Implement a single program, which fulfills the requirements: Chapter 3 Texture mapping Learning Goals: 1. To understand texture mapping mechanisms in VRT 2. To import external textures and to create new textures 3. To manipulate and interact with textures 4. To

More information

EXAMINATIONS 2016 TRIMESTER 2

EXAMINATIONS 2016 TRIMESTER 2 EXAMINATIONS 2016 TRIMESTER 2 CGRA 151 INTRODUCTION TO COMPUTER GRAPHICS Time Allowed: TWO HOURS CLOSED BOOK Permitted materials: Silent non-programmable calculators or silent programmable calculators

More information

(0,0) (600, 400) CS109. PictureBox and Timer Controls

(0,0) (600, 400) CS109. PictureBox and Timer Controls CS109 PictureBox and Timer Controls Let s take a little diversion and discuss how to draw some simple graphics. Graphics are not covered in the book, so you ll have to use these notes (or the built-in

More information

THE JAVASCRIPT ARTIST 15/10/2016

THE JAVASCRIPT ARTIST 15/10/2016 THE JAVASCRIPT ARTIST 15/10/2016 Objectives Learn how to program with JavaScript in a fun way! Understand the basic blocks of what makes a program. Make you confident to explore more complex features of

More information

a. Nothing. b. The game will run faster. c. The game will run slower. 5. What does this code do?

a. Nothing. b. The game will run faster. c. The game will run slower. 5. What does this code do? 142-253 Computer Programming: Pygame Exercises BSc in Digital Media, PSUIC Semester 1, 2016-2017 Aj. Andrew Davison CoE, PSU Hat Yai Campus E-mail: ad@fivedots.coe.psu.ac.th Basics 1. What is the game

More information

Graphical User Interfaces

Graphical User Interfaces Graphical User Interfaces CSC 1051 Data Structures and Algorithms I Dr. Mary-Angela Papalaskari Department of Computing Sciences Villanova University Outline Pixels & bits & colors JavaFX Introduction

More information

The figures below are all prisms. The bases of these prisms are shaded, and the height (altitude) of each prism marked by a dashed line:

The figures below are all prisms. The bases of these prisms are shaded, and the height (altitude) of each prism marked by a dashed line: Prisms Most of the solids you ll see on the Math IIC test are prisms or variations on prisms. A prism is defined as a geometric solid with two congruent bases that lie in parallel planes. You can create

More information

Sprites and collisions

Sprites and collisions Sprites and collisions slide 1 sprites are created and normally placed into a list and referred to as a group you can then test for a collision between another sprite by: spritecollide(sprite, group, dokill)

More information

University of Cincinnati. P5.JS: Getting Started. p5.js

University of Cincinnati. P5.JS: Getting Started. p5.js p5.js P5.JS: Getting Started Matthew Wizinsky University of Cincinnati School of Design HTML + CSS + P5.js File Handling & Management Environment Canvas Coordinates Syntax Drawing Variables Mouse Position

More information

Paint/Draw Tools. Foreground color. Free-form select. Select. Eraser/Color Eraser. Fill Color. Color Picker. Magnify. Pencil. Brush.

Paint/Draw Tools. Foreground color. Free-form select. Select. Eraser/Color Eraser. Fill Color. Color Picker. Magnify. Pencil. Brush. Paint/Draw Tools There are two types of draw programs. Bitmap (Paint) Uses pixels mapped to a grid More suitable for photo-realistic images Not easily scalable loses sharpness if resized File sizes are

More information

Animations involving numbers

Animations involving numbers 136 Chapter 8 Animations involving numbers 8.1 Model and view The examples of Chapter 6 all compute the next picture in the animation from the previous picture. This turns out to be a rather restrictive

More information

Paint Tutorial (Project #14a)

Paint Tutorial (Project #14a) Paint Tutorial (Project #14a) In order to learn all there is to know about this drawing program, go through the Microsoft Tutorial (below). (Do not save this to your folder.) Practice using the different

More information

""" idea.py simplest possible pygame display demonstrates IDEA / ALTER model Andy Harris, 5/06 """

 idea.py simplest possible pygame display demonstrates IDEA / ALTER model Andy Harris, 5/06 """ idea.py simplest possible pygame display demonstrates IDEA / ALTER model Andy Harris, 5/06 """ #I - Import and initialize import pygame pygame.init() #D - Display configuration screen = pygame.display.set_mode((640,

More information

SPRINGBOARD UNIT 5 GEOMETRY

SPRINGBOARD UNIT 5 GEOMETRY SPRINGBOARD UNIT 5 GEOMETRY 5.1 Area and Perimeter Perimeter the distance around an object. To find perimeter, add all sides. Area the amount of space inside a 2 dimensional object. Measurements for area

More information

1 Getting started with Processing

1 Getting started with Processing cisc3665, fall 2011, lab I.1 / prof sklar. 1 Getting started with Processing Processing is a sketch programming tool designed for use by non-technical people (e.g., artists, designers, musicians). For

More information

CISC 1600, Lab 3.1: Processing

CISC 1600, Lab 3.1: Processing CISC 1600, Lab 3.1: Processing Prof Michael Mandel 1 Getting set up For this lab, we will be using OpenProcessing, a site for building processing sketches online using processing.js. 1.1. Go to https://www.openprocessing.org/class/57767/

More information

We will start our journey into Processing with creating static images using commands available in Processing:

We will start our journey into Processing with creating static images using commands available in Processing: Processing Notes Chapter 1: Starting Out We will start our journey into Processing with creating static images using commands available in Processing: rect( ) line ( ) ellipse() triangle() NOTE: to find

More information

Graphical User Interfaces

Graphical User Interfaces Graphical User Interfaces CSC 1051 Data Structures and Algorithms I Dr. Mary-Angela Papalaskari Department of Computing Sciences Villanova University Course website: http://www.csc.villanova.edu/~map/1051/

More information

Graphical User Interfaces

Graphical User Interfaces Graphical User Interfaces CSC 1051 Data Structures and Algorithms I Dr. Mary-Angela Papalaskari Department of Computing Sciences Villanova University Course website: http://www.csc.villanova.edu/~map/1051/

More information

1 Getting started with Processing

1 Getting started with Processing cis3.5, spring 2009, lab II.1 / prof sklar. 1 Getting started with Processing Processing is a sketch programming tool designed for use by non-technical people (e.g., artists, designers, musicians). For

More information

CS177 Recitation. Graphics. Python Programming, 2/e 1

CS177 Recitation. Graphics. Python Programming, 2/e 1 CS177 Recitation Graphics Python Programming, 2/e 1 Objectives To be familiar with the various graphic objects available in the graphics library. To understand the fundamental concepts of computer graphics,

More information

DigiPen Institute of Technology

DigiPen Institute of Technology DigiPen Institute of Technology Presents Session Four: Game Design Elements DigiPen Institute of Technology 5001 150th Ave NE, Redmond, WA 98052 Phone: (425) 558-0299 www.digipen.edu 2005 DigiPen (USA)

More information

The Processing language. Arduino and Processing.

The Processing language. Arduino and Processing. IAT267 Introduc/on to Technological Systems Lecture 8 The Processing language. Arduino and Processing. 1 Course Project All teams submibed very interes/ng proposals One requirement for the project is to

More information

Creating Vector Shapes Week 2 Assignment 1. Illustrator Defaults

Creating Vector Shapes Week 2 Assignment 1. Illustrator Defaults Illustrator Defaults Before we begin, we are going to make sure that all of us are using the same settings within our application. For this class, we will always want to make sure that our application

More information

http://creativecommons.org/licenses/by/4.0/ A worksheet by Andrew Hague Flappy Wormy is based on work in Al Sweigart s Invent with Python: a free e-book. Al has written a really great series on creating

More information

the gamedesigninitiative at cornell university Lecture 16 Color and Textures

the gamedesigninitiative at cornell university Lecture 16 Color and Textures Lecture 6 Color and Textures Take Away For Today Image color and composition What is RGB model for images? What does alpha represent? How does alpha composition work? Graphics primitives How do primitives

More information

1. Complete these exercises to practice creating user functions in small sketches.

1. Complete these exercises to practice creating user functions in small sketches. Lab 6 Due: Fri, Nov 4, 9 AM Consult the Standard Lab Instructions on LEARN for explanations of Lab Days ( D1, D2, D3 ), the Processing Language and IDE, and Saving and Submitting. Rules: Do not use the

More information

Appendix F: Java Graphics

Appendix F: Java Graphics Appendix F: Java Graphics CS 121 Department of Computer Science College of Engineering Boise State University August 21, 2017 Appendix F: Java Graphics CS 121 1 / 15 Topics Graphics and Images Coordinate

More information

PGE Introduction. PGE is a Predictive physics Game Engine it operates by predicting the time of next collision rather than using aframe based approach

PGE Introduction. PGE is a Predictive physics Game Engine it operates by predicting the time of next collision rather than using aframe based approach PGE Introduction slide 1 PGE is a Predictive physics Game Engine it operates by predicting the time of next collision rather than using aframe based approach PGE Screen and world coordinates 1m x 1m slide

More information

mith College Computer Science Week 10 CSC111 Spring 2015 Dominique Thiébaut

mith College Computer Science Week 10 CSC111 Spring 2015 Dominique Thiébaut mith College Computer Science Week 10 CSC111 Spring 2015 Dominique Thiébaut dthiebaut@smith.edu Next Few Lectures Image Processing with Nested For-Loops Lists can be Used to Solve Many Problems (Chap.

More information

the gamedesigninitiative at cornell university Lecture 17 Color and Textures

the gamedesigninitiative at cornell university Lecture 17 Color and Textures Lecture 7 Color and Textures Take Away For Today Image color and composition What is RGB model for images? What does alpha represent? How does alpha composition work? Graphics primitives How do primitives

More information

8/19/2018. Web Development & Design Foundations with HTML5. Learning Objectives (1 of 2) Learning Objectives (2 of 2) Horizontal Rule Element

8/19/2018. Web Development & Design Foundations with HTML5. Learning Objectives (1 of 2) Learning Objectives (2 of 2) Horizontal Rule Element Web Development & Design Foundations with HTML5 Ninth Edition Chapter 4 Visual Elements and Graphics Learning Objectives (1 of 2) 4.1 Create and format lines and borders on web pages 4.2 Apply the image

More information

City of La Crosse Online Mapping Website Help Document

City of La Crosse Online Mapping Website Help Document City of La Crosse Online Mapping Website Help Document This document was created to assist in using the new City of La Crosse online mapping sites. When the website is first opened, a map showing the City

More information

Appendix F: Java Graphics

Appendix F: Java Graphics Appendix F: Java Graphics CS 121 Department of Computer Science College of Engineering Boise State University August 21, 2017 Appendix F: Java Graphics CS 121 1 / 1 Topics Graphics and Images Coordinate

More information

Making Games With Python & Pygame By Al Sweigart READ ONLINE

Making Games With Python & Pygame By Al Sweigart READ ONLINE Making Games With Python & Pygame By Al Sweigart READ ONLINE pick any language and figure out what it is you value/need from into Pygame if you'd like to learn Game Development with Python. What this leaves

More information

Please cite as: PDST, Leaving Certificate Computer Science, Python Workshop, Dublin, 2018

Please cite as: PDST, Leaving Certificate Computer Science, Python Workshop, Dublin, 2018 Please cite as: PDST, Leaving Certificate Computer Science, Python Workshop, Dublin, 2018 Python Programming Page ii Table of Contents Section 1 Getting Started 1 Hello World 2 Language Syntax... 3 Basic

More information

The Official E-Portfolio Tutorial Guide

The Official E-Portfolio Tutorial Guide School of Education Last Updated: January 2009 The Official E-Portfolio Tutorial Guide Includes Instructions For: -Setting Up Dreamweaver -Editing Images Using Photoshop -Creating & Inserting Evidence

More information

CMSC 425: Lecture 4 More about OpenGL and GLUT Tuesday, Feb 5, 2013

CMSC 425: Lecture 4 More about OpenGL and GLUT Tuesday, Feb 5, 2013 CMSC 425: Lecture 4 More about OpenGL and GLUT Tuesday, Feb 5, 2013 Reading: See any standard reference on OpenGL or GLUT. Basic Drawing: In the previous lecture, we showed how to create a window in GLUT,

More information

Three-Dimensional Figures

Three-Dimensional Figures Three-Dimensional Figures The number of coins created by the U.S. Mint changes each year. In the year 2000, there were about 28 billion coins created and about half of them were pennies!.1 Whirlygigs for

More information

PROBLEM SOLVING AND PYTHON PROGRAMMING LABORATORY

PROBLEM SOLVING AND PYTHON PROGRAMMING LABORATORY (A CHRISITIAN MINORITY INSTITUTION) JAISAKTHI EDUCATIONAL TRUST ACCREDITED BY NATIONAL BOARD OF ACCREDITATION (NBA) AN ISO 9001:2000 CERTIFIED INSTITUTION Bangalore Trunk Road,Varadharajapuram,Nasarathpettai,

More information

Guided Problem Solving

Guided Problem Solving -1 Guided Problem Solving GPS Student Page 57, Exercises 1 1: Match each rule with the correct translation. A. (x, y) (x, y 1 ) I. P(, 1) P (3, ) B. (x, y) (x 1 3, y) II. Q(3, 0) Q (3, ) C. (x, y) (x 1,

More information

Programming Proverbs

Programming Proverbs Programming Proverbs slide 1 9. Get the syntax correct now, not later. Henry F. Ledgard, Programming Proverbs: Principles of Good Programming with Numerous Examples to Improve Programming Style and Proficiency,

More information

CREATING DESMOS ETOOLS

CREATING DESMOS ETOOLS CREATING DESMOS ETOOLS Table of Contents Using Desmos... 3 Creating & Using a Desmos Account (Top Black Bar)... 4 Domain/Range & Axis Labels & Zoom: (Right side Icons)... 6 Adding Items in the List Tray:

More information

Output models Drawing Rasterization Color models

Output models Drawing Rasterization Color models Output models Drawing Rasterization olor models Fall 2004 6.831 UI Design and Implementation 1 Fall 2004 6.831 UI Design and Implementation 2 omponents Graphical objects arranged in a tree with automatic

More information

Class #1. introduction, functions, variables, conditionals

Class #1. introduction, functions, variables, conditionals Class #1 introduction, functions, variables, conditionals what is processing hello world tour of the grounds functions,expressions, statements console/debugging drawing data types and variables decisions

More information

2.6 Graphics SIMPLE DRAWINGS 9/9/16 74

2.6 Graphics SIMPLE DRAWINGS 9/9/16 74 2.6 Graphics SIMPLE DRAWINGS 9/9/16 74 Drawing Simple Graphics To help you create simple drawings, we have included a graphics module with the book that is a simplified version of Python s more complex

More information

GETTING STARTED WITH PYGAME ON THE RASPBERRY PI

GETTING STARTED WITH PYGAME ON THE RASPBERRY PI GETTING STARTED WITH PYGAME ON THE RASPBERRY PI Worksheet And Cheat Sheet.technoisaledcation.co.k This resorce is copyright TechnoVisal Limited 2017 bt permission is gien to freely copy for edcational

More information

Interaction Design A.A. 2017/2018

Interaction Design A.A. 2017/2018 Corso di Laurea Magistrale in Design, Comunicazione Visiva e Multimediale - Sapienza Università di Roma Interaction Design A.A. 2017/2018 5 Basics of Processing Francesco Leotta, Andrea Marrella Last update

More information

1. Create a map of the layer and attribute that needs to be queried

1. Create a map of the layer and attribute that needs to be queried Single Layer Query 1. Create a map of the layer and attribute that needs to be queried 2. Choose the desired Select Type. This can be changed from the Map menu at the far top or from the Select Type Icon

More information

Processing Assignment Write- Ups

Processing Assignment Write- Ups Processing Assignment Write- Ups Exercise 1-1 Processing is not an elaborate series of points like connect the dots or is it? Can t be cause I got it all wrong when I mapped out each and every point that

More information

Scripting Tutorial - Lesson 9: Graphical Shape Numbers

Scripting Tutorial - Lesson 9: Graphical Shape Numbers Home TI-Nspire Authoring TI-Nspire Scripting HQ Scripting Tutorial - Lesson 9 Scripting Tutorial - Lesson 9: Graphical Shape Numbers Download supporting files for this tutorial Texas Instruments TI-Nspire

More information

Polygons and Angles: Student Guide

Polygons and Angles: Student Guide Polygons and Angles: Student Guide You are going to be using a Sphero to figure out what angle you need the Sphero to move at so that it can draw shapes with straight lines (also called polygons). The

More information

Introduction to Google SketchUp

Introduction to Google SketchUp Introduction to Google SketchUp When initially opening SketchUp, it will be useful to select the Google Earth Modelling Meters option from the initial menu. If this menu doesn t appear, the same option

More information

Pygame In a Few Minutes

Pygame In a Few Minutes Pygame In a Few Minutes By: Paul W. Yost Updated: 22 January 2016 Using Pygame: To use pygame, it must be imported and then initialized. import pygame pygame.init() # load the module # must be initialized

More information

Data Visualization (DSC 530/CIS )

Data Visualization (DSC 530/CIS ) Data Visualization (DSC 530/CIS 602-02) Web Programming Dr. David Koop 2 What languages do we use on the Web? 3 Languages of the Web HTML CSS SVG JavaScript - Versions of Javascript: ES6, ES2015, ES2017

More information

append() function, 66 appending, 65, 97, 296 applications (apps; programs), defined, 2, 296

append() function, 66 appending, 65, 97, 296 applications (apps; programs), defined, 2, 296 Index Note: Page numbers followed by f, n, or t indicate figures, notes, and tables, respectively. Symbols += (addition and assignment operator), 100, 187 + (addition operator), \ (backslash), 240 / (division

More information

Smoother Graphics Taking Control of Painting the Screen

Smoother Graphics Taking Control of Painting the Screen It is very likely that by now you ve tried something that made your game run rather slow. Perhaps you tried to use an image with a transparent background, or had a gazillion objects moving on the window

More information

(Refer Slide Time: 00:02:00)

(Refer Slide Time: 00:02:00) Computer Graphics Prof. Sukhendu Das Dept. of Computer Science and Engineering Indian Institute of Technology, Madras Lecture - 18 Polyfill - Scan Conversion of a Polygon Today we will discuss the concepts

More information