Package game.core
Class GameView
java.lang.Object
java.awt.Component
java.awt.Container
javax.swing.JComponent
game.core.GameView
- All Implemented Interfaces:
java.awt.image.ImageObserver
,java.awt.MenuContainer
,java.io.Serializable
public final class GameView
extends javax.swing.JComponent
- See Also:
- Serialized Form
-
Nested Class Summary
Nested Classes Modifier and Type Class Description class
GameView.GameFrame
Nested classes/interfaces inherited from class javax.swing.JComponent
javax.swing.JComponent.AccessibleJComponent
-
Field Summary
Fields Modifier and Type Field Description static java.util.ArrayList<game.core.GameView.DebugLine>
debugLines
static java.util.ArrayList<game.core.GameView.DebugPointer>
debugPointers
static java.util.ArrayList<game.core.GameView.DebugText>
debugTexts
static GameView
lastInstance
Fields inherited from class javax.swing.JComponent
listenerList, TOOL_TIP_TEXT_KEY, ui, UNDEFINED_CONDITION, WHEN_ANCESTOR_OF_FOCUSED_COMPONENT, WHEN_FOCUSED, WHEN_IN_FOCUSED_WINDOW
-
Constructor Summary
-
Method Summary
Modifier and Type Method Description static void
addLines(Game game, java.awt.Color color, int[] fromNnodeIndices, int[] toNodeIndices)
Adds a set of lines to be drawn using the color specified (fromNnodeIndices.length must be equals toNodeIndices.length)
Must be called every frame, i.e., lines are deleted after they are drawn.static void
addLines(Game game, java.awt.Color color, int fromNnodeIndex, int toNodeIndex)
Adds a line to be drawn between specified nodes using the color specified
Must be called every frame, i.e., lines are deleted after they are drawn.static void
addLines(Game game, java.awt.Color color, int fromX, int fromY, int toX, int toY)
Adds a line leading between [fromX;fromY] -> [toX;toY] in pixels.static void
addLinesPath(Game game, java.awt.Color color, int fromNodeIndex, int toNodeIndex)
Adds a line to be drawn between specified nodes for the purpose of PATH visualization, i.e., taking care of TORUS on X-AXIS.static void
addPoints(Game game, java.awt.Color color, int... nodeIndices)
Add points of certain colors to node indices (highlights certain nodes)
Must be called every frame, i.e., points are deleted after they are drawn.static void
addText(int x, int y, java.awt.Color color, java.lang.String text)
static void
addText(Game game, int nodeIndex, java.awt.Color color, java.lang.String text)
GameView.GameFrame
getFrame()
java.awt.Dimension
getPreferredSize()
void
paintComponent(java.awt.Graphics g)
void
setScale2x(boolean state)
GameView
showGame()
Methods inherited from class javax.swing.JComponent
addAncestorListener, addNotify, addVetoableChangeListener, computeVisibleRect, contains, createToolTip, disable, enable, firePropertyChange, firePropertyChange, firePropertyChange, fireVetoableChange, getActionForKeyStroke, getActionMap, getAlignmentX, getAlignmentY, getAncestorListeners, getAutoscrolls, getBaseline, getBaselineResizeBehavior, getBorder, getBounds, getClientProperty, getComponentGraphics, getComponentPopupMenu, getConditionForKeyStroke, getDebugGraphicsOptions, getDefaultLocale, getFontMetrics, getGraphics, getHeight, getInheritsPopupMenu, getInputMap, getInputMap, getInputVerifier, getInsets, getInsets, getListeners, getLocation, getMaximumSize, getMinimumSize, getNextFocusableComponent, getPopupLocation, getRegisteredKeyStrokes, getRootPane, getSize, getToolTipLocation, getToolTipText, getToolTipText, getTopLevelAncestor, getTransferHandler, getUI, getUIClassID, getVerifyInputWhenFocusTarget, getVetoableChangeListeners, getVisibleRect, getWidth, getX, getY, grabFocus, hide, isDoubleBuffered, isLightweightComponent, isManagingFocus, isOpaque, isOptimizedDrawingEnabled, isPaintingForPrint, isPaintingOrigin, isPaintingTile, isRequestFocusEnabled, isValidateRoot, paint, paintBorder, paintChildren, paintImmediately, paintImmediately, paramString, print, printAll, printBorder, printChildren, printComponent, processComponentKeyEvent, processKeyBinding, processKeyEvent, processMouseEvent, processMouseMotionEvent, putClientProperty, registerKeyboardAction, registerKeyboardAction, removeAncestorListener, removeNotify, removeVetoableChangeListener, repaint, repaint, requestDefaultFocus, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, resetKeyboardActions, reshape, revalidate, scrollRectToVisible, setActionMap, setAlignmentX, setAlignmentY, setAutoscrolls, setBackground, setBorder, setComponentPopupMenu, setDebugGraphicsOptions, setDefaultLocale, setDoubleBuffered, setEnabled, setFocusTraversalKeys, setFont, setForeground, setInheritsPopupMenu, setInputMap, setInputVerifier, setMaximumSize, setMinimumSize, setNextFocusableComponent, setOpaque, setPreferredSize, setRequestFocusEnabled, setToolTipText, setTransferHandler, setUI, setVerifyInputWhenFocusTarget, setVisible, unregisterKeyboardAction, update, updateUI
Methods inherited from class java.awt.Container
add, add, add, add, add, addContainerListener, addImpl, addPropertyChangeListener, addPropertyChangeListener, applyComponentOrientation, areFocusTraversalKeysSet, countComponents, deliverEvent, doLayout, findComponentAt, findComponentAt, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getComponentZOrder, getContainerListeners, getFocusTraversalKeys, getFocusTraversalPolicy, getLayout, getMousePosition, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusCycleRoot, isFocusTraversalPolicyProvider, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paintComponents, preferredSize, printComponents, processContainerEvent, processEvent, remove, remove, removeAll, removeContainerListener, setComponentZOrder, setFocusCycleRoot, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, setLayout, transferFocusDownCycle, validate, validateTree
Methods inherited from class java.awt.Component
action, add, addComponentListener, addFocusListener, addHierarchyBoundsListener, addHierarchyListener, addInputMethodListener, addKeyListener, addMouseListener, addMouseMotionListener, addMouseWheelListener, bounds, checkImage, checkImage, coalesceEvents, contains, createImage, createImage, createVolatileImage, createVolatileImage, disableEvents, dispatchEvent, enable, enableEvents, enableInputMethods, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, getAccessibleContext, getBackground, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusCycleRootAncestor, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getForeground, getGraphicsConfiguration, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputContext, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocale, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMousePosition, getMouseWheelListeners, getName, getParent, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getToolkit, getTreeLock, gotFocus, handleEvent, hasFocus, imageUpdate, inside, isBackgroundSet, isCursorSet, isDisplayable, isEnabled, isFocusable, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, isMaximumSizeSet, isMinimumSizeSet, isPreferredSizeSet, isShowing, isValid, isVisible, keyDown, keyUp, list, list, list, location, lostFocus, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paintAll, postEvent, prepareImage, prepareImage, processComponentEvent, processFocusEvent, processHierarchyBoundsEvent, processHierarchyEvent, processInputMethodEvent, processMouseWheelEvent, remove, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, requestFocus, requestFocus, requestFocusInWindow, resize, resize, setBounds, setBounds, setComponentOrientation, setCursor, setDropTarget, setFocusable, setFocusTraversalKeysEnabled, setIgnoreRepaint, setLocale, setLocation, setLocation, setMixingCutoutShape, setName, setSize, setSize, show, show, size, toString, transferFocus, transferFocusBackward, transferFocusUpCycle
-
Field Details
-
lastInstance
-
debugPointers
public static java.util.ArrayList<game.core.GameView.DebugPointer> debugPointers -
debugLines
public static java.util.ArrayList<game.core.GameView.DebugLine> debugLines -
debugTexts
public static java.util.ArrayList<game.core.GameView.DebugText> debugTexts
-
-
Constructor Details
-
Method Details
-
paintComponent
public void paintComponent(java.awt.Graphics g)- Overrides:
paintComponent
in classjavax.swing.JComponent
-
getPreferredSize
public java.awt.Dimension getPreferredSize()- Overrides:
getPreferredSize
in classjavax.swing.JComponent
-
setScale2x
public void setScale2x(boolean state) -
showGame
-
getFrame
-
addPoints
Add points of certain colors to node indices (highlights certain nodes)
Must be called every frame, i.e., points are deleted after they are drawn.
NOTE: This won't do anything in the competition but your code will still work.- Parameters:
game
-color
-nodeIndices
-
-
addLines
public static void addLines(Game game, java.awt.Color color, int[] fromNnodeIndices, int[] toNodeIndices)Adds a set of lines to be drawn using the color specified (fromNnodeIndices.length must be equals toNodeIndices.length)
Must be called every frame, i.e., lines are deleted after they are drawn.
NOTE: This won't do anything in the competition but your code will still work.- Parameters:
game
-color
-fromNnodeIndices
-toNodeIndices
-
-
addLines
Adds a line to be drawn between specified nodes using the color specified
Must be called every frame, i.e., lines are deleted after they are drawn.
NOTE: This won't do anything in the competition but your code will still work.- Parameters:
game
-color
-fromNnodeIndex
-toNodeIndex
-
-
addLinesPath
public static void addLinesPath(Game game, java.awt.Color color, int fromNodeIndex, int toNodeIndex)Adds a line to be drawn between specified nodes for the purpose of PATH visualization, i.e., taking care of TORUS on X-AXIS.
Must be called every frame, i.e., lines are deleted after they are drawn.
NOTE: This won't do anything in the competition but your code will still work.- Parameters:
game
-color
-fromNnodeIndex
-toNodeIndex
-
-
addLines
public static void addLines(Game game, java.awt.Color color, int fromX, int fromY, int toX, int toY)Adds a line leading between [fromX;fromY] -> [toX;toY] in pixels.
Must be called every frame, i.e., lines are deleted after they are drawn.
NOTE: This won't do anything in the competition but your code will still work.- Parameters:
game
-color
-fromX
-fromY
-toX
-toY
-
-
addText
public static void addText(int x, int y, java.awt.Color color, java.lang.String text) -
addText
-