Package | Class | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## greenfoot
Class GreenfootImage

    java.lang.Object
      greenfoot.GreenfootImage

    public class GreenfootImage

extends java.lang.Object

An image to be shown on screen. The image may be loaded from an image file and/or drawn by using various drawing methods.

Version:
  2.6
Author:
  Poul Henriksen

Constructor Summary
`GreenfootImage(GreenfootImage image)` Create a GreenfootImage from another GreenfootImage.
`GreenfootImage(int width, int height)` Create an empty (transparent) image with the specified size.
`GreenfootImage(java.lang.String filename)` Create an image from an image file.
`GreenfootImage(java.lang.String string, int size, java.awt.Color foreground, java.awt.Color background)` Creates an image with the given string drawn as text using the given font size, with the given foreground color on the given background color.
`GreenfootImage(java.lang.String string, int size, java.awt.Color foreground, java.awt.Color background, java.awt.Color outline)` Creates an image with the given string drawn as text using the given font size, with the given foreground color on the given background color.

Method Summary
`void` | `clear()` Clears the image.
`void` | `drawImage(GreenfootImage image, int x, int y)` Draws the given Image onto this image
`void` | `drawLine(int x1, int y1, int x2, int y2)` Draw a line, using the current drawing color, between the points `(x1, y1)` and `(x2, y2)`.
`void` | `drawOval(int x, int y, int width, int height)` Draw an oval bounded by the specified rectangle with the current drawing color.
`void` | `drawPolygon(int[] xPoints, int[] yPoints, int nPoints)` Draws a closed polygon defined by arrays of x and y coordinates.
`void` | `drawRect(int x, int y, int width, int height)` Draw the outline of the specified rectangle.
`void` | `drawShape(java.awt.Shape shape)` Draw a shape directly on the image.
`void` | `drawString(java.lang.String string, int x, int y)` Draw the text given by the specified string, using the current font and color.
`void` | `fill()` Fill the entire image with the current drawing color.
`void` | `fillOval(int x, int y, int width, int height)` Fill an oval bounded by the specified rectangle with the current drawing color.
`void` | `fillPolygon(int[] xPoints, int[] yPoints, int nPoints)` Fill a closed polygon defined by arrays of x and y coordinates.
`void` | `fillRect(int x, int y, int width, int height)` Fill the specified rectangle.
`void` | `fillShape(java.awt.Shape shape)` Draw a filled shape directly on the image.
`java.awt.image.BufferedImage` | `getAwtImage()` Returns the java.awt.image.BufferedImage that backs this GreenfootImage.
`java.awt.Color` | `getColor()` Return the current drawing color.
`java.awt.Color` | `getColorAt(int x, int y)` Return the color at the given pixel.
`java.awt.Font` | `getFont()` Get the current font.
`int` | `getHeight()` Return the height of the image.
`int` | `getTransparency()` Return the current transparency of the image.
`int` | `getWidth()` Return the width of the image.
`void` | `mirrorHorizontally()` Mirrors the image horizontally (the left of the image becomes the right, and vice versa).
`void` | `mirrorVertically()` Mirrors the image vertically (the top of the image becomes the bottom, and vice versa).
`void` | `rotate(int degrees)` Rotates this image around the center.
`void` | `scale(int width, int height)` Scales this image to a new size.
`void` | `setColor(java.awt.Color color)` Set the current drawing color.
`void` | `setColorAt(int x, int y, java.awt.Color color)` Sets the given pixel to the given color.
`void` | `setFont(java.awt.Font f)` Set the current font.
`void` | `setTransparency(int t)` Set the transparency of the image.
`java.lang.String` | `toString()` Return a text representation of the image.

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

Constructor Detail

### GreenfootImage

    public GreenfootImage(java.lang.String filename)
                   throws java.lang.IllegalArgumentException

  Create an image from an image file. Supported file formats are JPEG, GIF and PNG.

  The file name may be an absolute path, or a base name for a file located in the project directory.

  Parameters:
    `filename` - Typically the name of a file in the images directory within the project directory.
  Throws:
    `java.lang.IllegalArgumentException` - If the image can not be loaded.

### GreenfootImage

    public GreenfootImage(int width,
                          int height)

  Create an empty (transparent) image with the specified size.

  Parameters:
    `width` - The width of the image in pixels.
    `height` - The height of the image in pixels.

### GreenfootImage

    public GreenfootImage(GreenfootImage image)
                   throws java.lang.IllegalArgumentException

  Create a GreenfootImage from another GreenfootImage.

  Throws:
    `java.lang.IllegalArgumentException`

### GreenfootImage

    public GreenfootImage(java.lang.String string,
                          int size,
                          java.awt.Color foreground,
                          java.awt.Color background)

  Creates an image with the given string drawn as text using the given font size, with the given foreground color on the given background color. If the string has newline characters, it is split into multiple lines which are drawn horizontally-centred.

  Parameters:
    `string` - the string to be drawn
    `size` - the requested height in pixels of each line of text (the actual height may be different by a pixel or so)
    `foreground` - the color of the text. Since Greenfoot 2.2.0, passing null will use black.
    `background` - the color of the image behind the text. Since Greenfoot 2.2.0, passing null with leave the background transparent.
  Since:
    2.0.1

### GreenfootImage

    public GreenfootImage(java.lang.String string,
                          int size,
                          java.awt.Color foreground,
                          java.awt.Color background,
                          java.awt.Color outline)

  Creates an image with the given string drawn as text using the given font size, with the given foreground color on the given background color. If the string has newline characters, it is split into multiple lines which are drawn horizontally-centred.

  Parameters:
    `string` - the string to be drawn
    `size` - the requested height in pixels of each line of text (the actual height may be different by a pixel or so)
    `foreground` - the color of the text. Since Greenfoot 2.2.0, passing null will use black.
    `background` - the color of the image behind the text. Since Greenfoot 2.2.0, passing null with leave the background transparent.
    `outline` - the colour of the outline that will be drawn around the text. Passing null will draw no outline.
  Since:
    2.4.0

Method Detail

### getAwtImage

    public java.awt.image.BufferedImage getAwtImage()

  Returns the java.awt.image.BufferedImage that backs this GreenfootImage. Any changes to the returned image will be reflected in the GreenfootImage.

  Returns:
    The java.awt.image.BufferedImage backing this GreenfootImage
  Since:
    Greenfoot version 1.0.2

### getWidth

    public int getWidth()

  Return the width of the image.

  Returns:
    Width of the image.

### getHeight

    public int getHeight()

  Return the height of the image.

  Returns:
    Height of the image.

### rotate

    public void rotate(int degrees)

  Rotates this image around the center.

  Parameters:
    `degrees` -

### scale

    public void scale(int width,
                      int height)

  Scales this image to a new size.

  Parameters:
    `width` - Width of new image
    `height` - Height of new image

### mirrorVertically

    public void mirrorVertically()

  Mirrors the image vertically (the top of the image becomes the bottom, and vice versa).

### mirrorHorizontally

    public void mirrorHorizontally()

  Mirrors the image horizontally (the left of the image becomes the right, and vice versa).

### fill

    public void fill()

  Fill the entire image with the current drawing color.

### drawImage

    public void drawImage(GreenfootImage image,
                          int x,
                          int y)

  Draws the given Image onto this image

  Parameters:
    `image` - The image to draw onto this one.
    `x` - x-coordinate for drawing the image.
    `y` - y-coordinate for drawing the image.

### setFont

    public void setFont(java.awt.Font f)

  Set the current font. This font will be used for subsequent text operations.

### getFont

    public java.awt.Font getFont()

  Get the current font.

### setColor

    public void setColor(java.awt.Color color)

  Set the current drawing color. This color will be used for subsequent drawing operations.

  Parameters:
    `color` - The color to be used.

### getColor

    public java.awt.Color getColor()

  Return the current drawing color.

  Returns:
    The current color.

### getColorAt

    public java.awt.Color getColorAt(int x,
                                     int y)

  Return the color at the given pixel.

  Throws:
    `java.lang.IndexOutOfBoundsException` - If the pixel location is not within the image bounds.

### setColorAt

    public void setColorAt(int x,
                           int y,
                           java.awt.Color color)

  Sets the given pixel to the given color.

### setTransparency

    public void setTransparency(int t)

  Set the transparency of the image.

  Parameters:
    `t` - A value in the range 0 to 255. 0 is completely transparent (invisible) and 255 is completely opaque (the default).

### getTransparency

    public int getTransparency()

  Return the current transparency of the image.

  Returns:
    A value in the range 0 to 255. 0 is completely transparent (invisible) and 255 is completely opaque (the default).

### fillRect

    public void fillRect(int x,
                         int y,
                         int width,
                         int height)

  Fill the specified rectangle. The left and right edges of the rectangle are at `x` and `x + width - 1`. The top and bottom edges are at `y` and `y + height - 1`. The resulting rectangle covers an area `width` pixels wide by `height` pixels tall. The rectangle is filled using the current color.

  Parameters:
    `x` - the x coordinate of the rectangle to be filled.
    `y` - the y coordinate of the rectangle to be filled.
    `width` - the width of the rectangle to be filled.
    `height` - the height of the rectangle to be filled.

### clear

    public void clear()

  Clears the image.

### drawRect

    public void drawRect(int x,
                         int y,
                         int width,
                         int height)

  Draw the outline of the specified rectangle. The left and right edges of the rectangle are at `x` and `x + width`. The top and bottom edges are at `y` and `y + height`. The rectangle is drawn using the current color.

  Parameters:
    `x` - the x coordinate of the rectangle to be drawn.
    `y` - the y coordinate of the rectangle to be drawn.
    `width` - the width of the rectangle to be drawn.
    `height` - the height of the rectangle to be drawn.

### drawString

    public void drawString(java.lang.String string,
                           int x,
                           int y)

  Draw the text given by the specified string, using the current font and color. The baseline of the leftmost character is at position ( x , y ).

  Parameters:
    `string` - the string to be drawn.
    `x` - the x coordinate.
    `y` - the y coordinate.

### drawShape

    public void drawShape(java.awt.Shape shape)

  Draw a shape directly on the image. Shapes are specified by the shape interface.

  Parameters:
    `shape` - the shape to be drawn.

### fillShape

    public void fillShape(java.awt.Shape shape)

  Draw a filled shape directly on the image. Shapes are specified by the shape interface.

  Parameters:
    `shape` - the shape to be filled.

### fillOval

    public void fillOval(int x,
                         int y,
                         int width,
                         int height)

  Fill an oval bounded by the specified rectangle with the current drawing color.

  Parameters:
    `x` - the x coordinate of the upper left corner of the oval to be filled.
    `y` - the y coordinate of the upper left corner of the oval to be filled.
    `width` - the width of the oval to be filled.
    `height` - the height of the oval to be filled.

### drawOval

    public void drawOval(int x,
                         int y,
                         int width,
                         int height)

  Draw an oval bounded by the specified rectangle with the current drawing color.

  Parameters:
    `x` - the x coordinate of the upper left corner of the oval to be drawn.
    `y` - the y coordinate of the upper left corner of the oval to be drawn.
    `width` - the width of the oval to be drawn.
    `height` - the height of the oval to be drawn.

### fillPolygon

    public void fillPolygon(int[] xPoints,
                            int[] yPoints,
                            int nPoints)

  Fill a closed polygon defined by arrays of x and y coordinates.

  This method draws the polygon defined by `nPoint` line segments, where the first `nPoint - 1` line segments are line segments from `(xPoints[i - 1], yPoints[i - 1])` to `(xPoints[i], yPoints[i])`, for 1 ≤ i ≤ `nPoints`. The figure is automatically closed by drawing a line connecting the final point to the first point, if those points are different.

  The area inside the polygon is defined using an even-odd fill rule, also known as the alternating rule.

  Parameters:
    `xPoints` - an array of `x` coordinates.
    `yPoints` - an array of `y` coordinates.
    `nPoints` - the total number of points.

### drawPolygon

    public void drawPolygon(int[] xPoints,
                            int[] yPoints,
                            int nPoints)

  Draws a closed polygon defined by arrays of x and y coordinates. Each pair of (x, y) coordinates defines a point.

  This method draws the polygon defined by `nPoint` line segments, where the first `nPoint - 1` line segments are line segments from `(xPoints[i - 1], yPoints[i - 1])` to `(xPoints[i], yPoints[i])`, for 1 ≤ i ≤ `nPoints`. The figure is automatically closed by drawing a line connecting the final point to the first point, if those points are different.

  Parameters:
    `xPoints` - an array of `x` coordinates.
    `yPoints` - an array of `y` coordinates.
    `nPoints` - the total number of points.

### drawLine

    public void drawLine(int x1,
                         int y1,
                         int x2,
                         int y2)

  Draw a line, using the current drawing color, between the points `(x1, y1)` and `(x2, y2)`.

  Parameters:
    `x1` - the first point's x coordinate.
    `y1` - the first point's y coordinate.
    `x2` - the second point's x coordinate.
    `y2` - the second point's y coordinate.

### toString

    public java.lang.String toString()

  Return a text representation of the image.

  Overrides:
    `toString` in class `java.lang.Object`

Package | Class | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

Greenfoot homepage