net.sf.colossus.gui
Class GUIHex<H extends Hex>

java.lang.Object
  extended by java.awt.Component
      extended by java.awt.Container
          extended by javax.swing.JComponent
              extended by net.sf.colossus.gui.GUIHex<H>
All Implemented Interfaces:
java.awt.image.ImageObserver, java.awt.MenuContainer, java.io.Serializable
Direct Known Subclasses:
GUIBattleHex, GUIMasterHex

public abstract class GUIHex<H extends Hex>
extends javax.swing.JComponent

Abstract parent class for various GUI hexes

See Also:
Serialized Form

Nested Class Summary
 
Nested classes/interfaces inherited from class javax.swing.JComponent
javax.swing.JComponent.AccessibleJComponent
 
Nested classes/interfaces inherited from class java.awt.Container
java.awt.Container.AccessibleAWTContainer
 
Nested classes/interfaces inherited from class java.awt.Component
java.awt.Component.AccessibleAWTComponent, java.awt.Component.BaselineResizeBehavior, java.awt.Component.BltBufferStrategy, java.awt.Component.FlipBufferStrategy
 
Field Summary
(package private) static boolean antialias
          Globally turns antialiasing on or off for all hexes.
(package private)  java.awt.geom.GeneralPath hexagon
           
(package private)  double len
           
private  H model
           
(package private)  java.awt.Rectangle rectBound
           
private  boolean selected
           
static double SQRT3
           
(package private) static boolean useOverlay
          Globally turns overlay on or off for all hexes
(package private)  double[] xVertex
           
(package private)  double[] yVertex
           
 
Fields inherited from class javax.swing.JComponent
accessibleContext, listenerList, TOOL_TIP_TEXT_KEY, ui, UNDEFINED_CONDITION, WHEN_ANCESTOR_OF_FOCUSED_COMPONENT, WHEN_FOCUSED, WHEN_IN_FOCUSED_WINDOW
 
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
GUIHex(H model)
           
 
Method Summary
 boolean contains(java.awt.Point point)
           
 java.awt.Point findCenter()
          Return the Point closest to the center of the polygon.
(package private)  java.awt.geom.Point2D.Double findCenter2D()
          Return the Point2D.Double at the center of the polygon.
(package private) static boolean getAntialias()
           
 java.awt.Rectangle getBounds()
           
protected  double[] getCliffOrArrowsPositionXArray(int j, double vx1, double vx2, double theta)
           
protected  double[] getCliffOrArrowsPositionYArray(int j, double vy1, double vy2, double theta)
           
 H getHexModel()
           
(package private) static boolean getOverlay()
           
protected  double[] getWallOrSlopePositionXArray(int j, double vx1, double vx2, double theta, int size)
           
protected  double[] getWallOrSlopePositionYArray(int j, double vy1, double vy2, double theta, int size)
           
 boolean isSelected()
           
(package private) static java.awt.geom.GeneralPath makePolygon(int sides, double[] x, double[] y, boolean closed)
          Return a GeneralPath polygon, with the passed number of sides, and the passed x and y coordinates.
 void select()
           
(package private) static void setAntialias(boolean enabled)
           
 void setHexModel(H model)
           
static void setOverlay(boolean enabled)
           
 void setSelected(boolean selected)
           
 void unselect()
           
 
Methods inherited from class javax.swing.JComponent
addAncestorListener, addNotify, addVetoableChangeListener, computeVisibleRect, contains, createToolTip, disable, enable, firePropertyChange, firePropertyChange, firePropertyChange, fireVetoableChange, getAccessibleContext, 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, getPreferredSize, getRegisteredKeyStrokes, getRootPane, getSize, getToolTipLocation, getToolTipText, getToolTipText, getTopLevelAncestor, getTransferHandler, getUIClassID, getVerifyInputWhenFocusTarget, getVetoableChangeListeners, getVisibleRect, getWidth, getX, getY, grabFocus, isDoubleBuffered, isLightweightComponent, isManagingFocus, isOpaque, isOptimizedDrawingEnabled, isPaintingForPrint, isPaintingTile, isRequestFocusEnabled, isValidateRoot, paint, paintBorder, paintChildren, paintComponent, 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, createImage, createImage, createVolatileImage, createVolatileImage, disableEvents, dispatchEvent, enable, enableEvents, enableInputMethods, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, getBackground, 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, getPeer, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getToolkit, getTreeLock, gotFocus, handleEvent, hasFocus, hide, 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, resize, resize, setBounds, setBounds, setComponentOrientation, setCursor, setDropTarget, setFocusable, setFocusTraversalKeysEnabled, setIgnoreRepaint, setLocale, setLocation, setLocation, setName, setSize, setSize, show, show, size, toString, transferFocus, transferFocusBackward, transferFocusUpCycle
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

SQRT3

public static final double SQRT3

model

private H extends Hex model

xVertex

double[] xVertex

yVertex

double[] yVertex

len

double len

hexagon

java.awt.geom.GeneralPath hexagon

rectBound

java.awt.Rectangle rectBound

antialias

static boolean antialias
Globally turns antialiasing on or off for all hexes.


useOverlay

static boolean useOverlay
Globally turns overlay on or off for all hexes


selected

private boolean selected
Constructor Detail

GUIHex

public GUIHex(H model)
Method Detail

getHexModel

public H getHexModel()

setHexModel

public void setHexModel(H model)

getBounds

public java.awt.Rectangle getBounds()
Overrides:
getBounds in class java.awt.Component

contains

public boolean contains(java.awt.Point point)
Overrides:
contains in class java.awt.Component

select

public void select()

unselect

public void unselect()

setSelected

public void setSelected(boolean selected)

isSelected

public boolean isSelected()

getAntialias

static boolean getAntialias()

setAntialias

static void setAntialias(boolean enabled)

getOverlay

static boolean getOverlay()

setOverlay

public static void setOverlay(boolean enabled)

makePolygon

static java.awt.geom.GeneralPath makePolygon(int sides,
                                             double[] x,
                                             double[] y,
                                             boolean closed)
Return a GeneralPath polygon, with the passed number of sides, and the passed x and y coordinates. Close the polygon if the argument closed is true.


findCenter

public java.awt.Point findCenter()
Return the Point closest to the center of the polygon.


findCenter2D

java.awt.geom.Point2D.Double findCenter2D()
Return the Point2D.Double at the center of the polygon.


getCliffOrArrowsPositionXArray

protected double[] getCliffOrArrowsPositionXArray(int j,
                                                  double vx1,
                                                  double vx2,
                                                  double theta)

getCliffOrArrowsPositionYArray

protected double[] getCliffOrArrowsPositionYArray(int j,
                                                  double vy1,
                                                  double vy2,
                                                  double theta)

getWallOrSlopePositionXArray

protected double[] getWallOrSlopePositionXArray(int j,
                                                double vx1,
                                                double vx2,
                                                double theta,
                                                int size)

getWallOrSlopePositionYArray

protected double[] getWallOrSlopePositionYArray(int j,
                                                double vy1,
                                                double vy2,
                                                double theta,
                                                int size)