Package se.egy.graphics
Class GL2DCanvas
java.lang.Object
java.awt.Component
java.awt.Canvas
se.egy.graphics.GL2DCanvas
- All Implemented Interfaces:
ImageObserver
,MenuContainer
,Serializable
,Accessible
- Direct Known Subclasses:
GL2DWindow
En utvidgning av
Canvas
för att rendera grafik till enklare 2D-spel.
För att lägga in i en JFrame som omsluter Canvasen
GL2DCanvas gl2dCanvas = new GL2DCanvas(800, 576);
JFrame jf = new JFrame("TEST Canvas");
jf.add(gl2dCanvas);
jf.setResizable(false);
jf.pack();
jf.setLocationRelativeTo(null);
jf.setVisible(true);
canvas.initRenderingMode();
* För att lägga in i en JFrame som en komponent som inte upptar hela fönstret.
GL2DCanvas gl2dCanvas = new GL2DCanvas(800, 576);
JFrame jf = new JFrame("TEST Canvas");
jf.add(gl2dCanvas);
jf.setLayout(null);
jf.setSize(1200, 960);
jf.setLocationRelativeTo(null);
jf.setVisible(true);
canvas.initRenderingMode();
- Author:
- Henrik Bygren
- See Also:
-
Nested Class Summary
Nested classes/interfaces inherited from class java.awt.Component
Component.BaselineResizeBehavior
-
Field Summary
Fields inherited from class java.awt.Component
BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT
Fields inherited from interface java.awt.image.ImageObserver
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH
-
Constructor Summary
ConstructorsConstructorDescriptionGL2DCanvas
(int width, int height) Konstruerar enCanvas
för rendering av grafik.GL2DCanvas
(int width, int height, Color bgColor) Konstruerar enCanvas
för rendering av grafik. -
Method Summary
Modifier and TypeMethodDescriptionvoid
Startar renderingsläge för öppen rendering.void
cameraMoveTo
(double x, double y) Förflytta cameran till position (x,y).void
Rensar bilden med bakgundsbild eller -färg.Metoden returnerar en grafikbuffert som man kan rendera på.void
Metoden skall anropas efter det att canvasen applicerats på förälderkomponent.void
openRender
(Image img, int x, int y) Renderar en enskild bild.void
openRender
(Collection<? extends Drawable> drawableList) Renderar en ny bild med objekt i enCollection
avDrawable
.void
openRender
(Drawable drawable) Renderar en enskild Drawable.void
openRender
(Drawable[] drawableArray) Renderar en ny bild med objekt i en primitiv array avDrawable
.void
Renderar en enskild bild.void
render
(Collection<? extends Drawable> drawableList) Renderar en ny bild med objekt i enCollection
avDrawable
.void
Renderar en enskild Drawable.void
Renderar en ny bild med objekt i en primitiv array avDrawable
.void
setBackground
(Color color) Ändrar ritytans bakgrund till vald färg.void
setBackground
(Image image) Ändrar ritytans bakgrund till vald bild.void
setBackground
(String pathToImage) Ändrar ritytans bakgrund till vald bild.void
setBackground
(Drawable background) Ändrar ritytans bakgrund till vald Drawable.void
show()
Gör grafikbufferten synlig.Methods inherited from class java.awt.Canvas
addNotify, createBufferStrategy, createBufferStrategy, getAccessibleContext, getBufferStrategy, paint, update
Methods inherited from class java.awt.Component
action, add, addComponentListener, addFocusListener, addHierarchyBoundsListener, addHierarchyListener, addInputMethodListener, addKeyListener, addMouseListener, addMouseMotionListener, addMouseWheelListener, addPropertyChangeListener, addPropertyChangeListener, applyComponentOrientation, areFocusTraversalKeysSet, bounds, checkImage, checkImage, contains, contains, createImage, createImage, createVolatileImage, createVolatileImage, deliverEvent, disable, dispatchEvent, doLayout, enable, enable, enableInputMethods, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, getAlignmentX, getAlignmentY, getBackground, getBaseline, getBaselineResizeBehavior, getBounds, getBounds, getColorModel, getComponentAt, getComponentAt, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusCycleRootAncestor, getFocusListeners, getFocusTraversalKeys, getFocusTraversalKeysEnabled, getFont, getFontMetrics, getForeground, getGraphics, getGraphicsConfiguration, getHeight, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputContext, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getListeners, getLocale, getLocation, getLocation, getLocationOnScreen, getMaximumSize, getMinimumSize, getMouseListeners, getMouseMotionListeners, getMousePosition, getMouseWheelListeners, getName, getParent, getPreferredSize, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getSize, getToolkit, getTreeLock, getWidth, getX, getY, gotFocus, handleEvent, hasFocus, hide, imageUpdate, inside, invalidate, isBackgroundSet, isCursorSet, isDisplayable, isDoubleBuffered, isEnabled, isFocusable, isFocusCycleRoot, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, isMaximumSizeSet, isMinimumSizeSet, isOpaque, isPreferredSizeSet, isShowing, isValid, isVisible, keyDown, keyUp, layout, list, list, list, list, list, locate, location, lostFocus, minimumSize, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paintAll, postEvent, preferredSize, prepareImage, prepareImage, print, printAll, remove, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removeNotify, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, repaint, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, reshape, resize, resize, revalidate, setBounds, setBounds, setComponentOrientation, setCursor, setDropTarget, setEnabled, setFocusable, setFocusTraversalKeys, setFocusTraversalKeysEnabled, setFont, setForeground, setIgnoreRepaint, setLocale, setLocation, setLocation, setMaximumSize, setMinimumSize, setMixingCutoutShape, setName, setPreferredSize, setSize, setSize, setVisible, show, size, toString, transferFocus, transferFocusBackward, transferFocusUpCycle, validate
-
Constructor Details
-
GL2DCanvas
Konstruerar enCanvas
för rendering av grafik.- Parameters:
width
- Bredden på Canvasheight
- Höjden på CanvasbgColor
- Canvasens bakgrundsfärg.
-
GL2DCanvas
public GL2DCanvas(int width, int height) Konstruerar enCanvas
för rendering av grafik.- Parameters:
width
- Bredden på Canvasheight
- Höjden på Canvas
-
-
Method Details
-
initRenderingMode
public void initRenderingMode()Metoden skall anropas efter det att canvasen applicerats på förälderkomponent. -
render
Renderar en ny bild med objekt i enCollection
avDrawable
. Exempelvis kanArrayList
ochLinkedList
användas som parameter till metoden.- Parameters:
drawableList
-Collection
med objekt som implementerat Drawable- See Also:
-
render
Renderar en ny bild med objekt i en primitiv array avDrawable
.- Parameters:
drawableArray
- Array med objekt som implementerat Drawable
-
render
Renderar en enskild Drawable. Kan exempelvis vara en bild som lagrats i enImgContainer
.- Parameters:
drawable
- Bildbehållaren
-
render
Renderar en enskild bild.- Parameters:
img
- Bildenx
- Bildens x-position på skärmeny
- Bildens y-position på skärmen
-
openRender
Renderar en enskild Drawable. Kan exempelvis vara en bild som lagrats i enImgContainer
. Skall föregås av ett anrop av metodenbeginRender()
för att påbörja rendering. När rendering med openRender-metoderna är klar och skall visas, skall metodenshow()
anropas.- Parameters:
drawable
- Bildbehållaren
-
openRender
Renderar en ny bild med objekt i en primitiv array avDrawable
. Skall föregås av ett anrop av metodenbeginRender()
för att påbörja rendering. När rendering med openRender-metoderna är klar och skall visas, skall metodenshow()
anropas.- Parameters:
drawableArray
- Array med objekt som implementerat Drawable
-
openRender
Renderar en ny bild med objekt i enCollection
avDrawable
. Exempelvis kanArrayList
ochLinkedList
användas som parameter till metoden. Skall föregås av ett anrop av metodenbeginRender()
för att påbörja rendering. När rendering med openRender-metoderna är klar och skall visas, skall metodenshow()
anropas.- Parameters:
drawableList
-Collection
med objekt som implementerat Drawable- See Also:
-
openRender
Renderar en enskild bild. Skall föregås av ett anrop av metodenbeginRender()
för att påbörja rendering. När rendering med openRender-metoderna är klar och skall visas, skall metodenshow()
anropas.- Parameters:
img
- Bildenx
- Bildens x-position på skärmeny
- Bildens y-position på skärmen
-
beginRender
public void beginRender()Startar renderingsläge för öppen rendering. All rendering avslutas och visas genom att anropashow()
Fungerar endast tillsammans med metodernaopenRender
-
show
public void show()Gör grafikbufferten synlig. Anropas efter rendering på grafikobjektet som nås via metodengetGraphics2D()
. Föregås av att metodenbeginRender()
anropas. -
clearScreen
public void clearScreen()Rensar bilden med bakgundsbild eller -färg. -
getGraphics2D
Metoden returnerar en grafikbuffert som man kan rendera på. För att göra grafikbufferten synlig skall metodenshow()
anropas. Det är dock att föredra render-metoderna vid rendering- Returns:
- Grafikbuffert att rita på
-
cameraMoveTo
public void cameraMoveTo(double x, double y) Förflytta cameran till position (x,y). Detta förutsätter att bakgrunden kan vara större än skärmbredden.- Parameters:
x
- Kamerans x-positiony
- Kamerans y-position
-
setBackground
Ändrar ritytans bakgrund till vald färg. Eventuell backgrundsbild plockas bort.- Overrides:
setBackground
in classComponent
- Parameters:
color
- Bakgrundsfärg
-
setBackground
Ändrar ritytans bakgrund till vald bild.- Parameters:
pathToImage
- Sökvägen till bilden
-
setBackground
Ändrar ritytans bakgrund till vald bild.- Parameters:
image
- bilden
-
setBackground
Ändrar ritytans bakgrund till vald Drawable.- Parameters:
background
- Bild i en instans av klassen Drawable
-