Difference between revisions of "CSC111 Programs for Week 10 2015"

From dftwiki3
Jump to: navigation, search
(Created page with "--~~~~ ---- <br /> =Skeleton Program for Processing Images= <br /> The program below will work with this image, named "catGlasses.gif". It should be located in the same direc...")
 
Line 2: Line 2:
 
----
 
----
 
<br />
 
<br />
=Skeleton Program for Processing Images=
+
=Skeleton Program for Displaying an Image=
 
<br />
 
<br />
 
The program below will work with this image, named "catGlasses.gif".  It should be located in the same directory where the program is saved.
 
The program below will work with this image, named "catGlasses.gif".  It should be located in the same directory where the program is saved.
Line 51: Line 51:
 
</source>
 
</source>
 
<br />
 
<br />
 +
=Skeleton Program for Processing an Image=
 +
<br />
 +
<source lang="python">
 +
# pixelProcessingSkel.py
 +
# D. Thiebaut
 +
# Simple skeleton program for processing
 +
# the pixels of an image
 +
 +
from graphics import *
 +
 +
# image geometry
 +
# 424x18
 +
# make the window the same geometry
 +
WIDTH  = 424
 +
HEIGHT = 418
 +
IMAGEFILENAME = "catGlasses.gif"
 +
 +
#----------------------------------------------------------------
 +
def waitForClick( win, message ):
 +
    """ waitForClick: stops the GUI and displays a message. 
 +
    Returns when the user clicks the window. The message is erased."""
 +
 +
    # wait for user to click mouse to start
 +
    startMsg = Text( Point( win.getWidth()/2, win.getHeight()-15 ), message )
 +
    startMsg.draw( win )    # display message
 +
    win.getMouse()          # wait
 +
    startMsg.undraw()      # erase
 +
 +
def makeRed( win, img ):
 +
    """ set the red component of all the pixels to 255, the
 +
    maximum value.
 +
    """
 +
    global WIDTH, HEIGHT
 +
    for x in range( WIDTH ):
 +
        for y in range( HEIGHT ):
 +
            red, green, blue = img.getPixel( x, y )
 +
            img.setPixel( x, y, color_rgb(255, green, blue ) )
 +
           
 +
def main():
 +
 +
    win = GraphWin( "Image Editor", WIDTH, HEIGHT )
 +
 +
    img = Image( Point(WIDTH//2, HEIGHT//2), IMAGEFILENAME )
 +
    img.draw( win )
 +
 +
    makeRed( win, img )
 +
   
 +
    waitForClick( win, "click to close" )
 +
 +
    win.close()
 +
 +
main()
 +
</source>
 +
<br />
 +
<br />
 +
<br />
 +
[[Category:CSC111]][[Category:Python]]

Revision as of 06:16, 6 April 2015

--D. Thiebaut (talk) 05:48, 6 April 2015 (EDT)



Skeleton Program for Displaying an Image


The program below will work with this image, named "catGlasses.gif". It should be located in the same directory where the program is saved.

CatGlasses.gif


# imageProcessingSkel.py
# D. Thiebaut
# A skeleton program to start doing image processing
# in Python

from graphics import *

# image geometry
# 424x18
# make the window the same geometry
WIDTH  = 424
HEIGHT = 418
IMAGEFILENAME = "catGlasses.gif"

#----------------------------------------------------------------
def waitForClick( win, message ):
    """ waitForClick: stops the GUI and displays a message.  
    Returns when the user clicks the window. The message is erased."""

    # wait for user to click mouse to start
    startMsg = Text( Point( win.getWidth()/2, win.getHeight()-15 ), message )
    startMsg.draw( win )    # display message
    win.getMouse()          # wait
    startMsg.undraw()       # erase

def main():
    # open the window
    win = GraphWin( "Image Editor", WIDTH, HEIGHT )

    # open the cat image
    cat = Image( Point(WIDTH//2, HEIGHT//2), IMAGEFILENAME )
    cat.draw( win )

    waitForClick( win, "click to close" )

    win.close()

main()


Skeleton Program for Processing an Image


# pixelProcessingSkel.py
# D. Thiebaut
# Simple skeleton program for processing
# the pixels of an image

from graphics import *

# image geometry
# 424x18
# make the window the same geometry
WIDTH  = 424
HEIGHT = 418
IMAGEFILENAME = "catGlasses.gif"

#----------------------------------------------------------------
def waitForClick( win, message ):
    """ waitForClick: stops the GUI and displays a message.  
    Returns when the user clicks the window. The message is erased."""

    # wait for user to click mouse to start
    startMsg = Text( Point( win.getWidth()/2, win.getHeight()-15 ), message )
    startMsg.draw( win )    # display message
    win.getMouse()          # wait
    startMsg.undraw()       # erase

def makeRed( win, img ):
    """ set the red component of all the pixels to 255, the
    maximum value.
    """
    global WIDTH, HEIGHT
    for x in range( WIDTH ):
        for y in range( HEIGHT ):
            red, green, blue = img.getPixel( x, y )
            img.setPixel( x, y, color_rgb(255, green, blue ) )
            
def main():

    win = GraphWin( "Image Editor", WIDTH, HEIGHT )

    img = Image( Point(WIDTH//2, HEIGHT//2), IMAGEFILENAME )
    img.draw( win )

    makeRed( win, img )
    
    waitForClick( win, "click to close" )

    win.close()

main()