pipe.dataLayer
Class Transition

java.lang.Object
  extended byjava.awt.Component
      extended byjava.awt.Container
          extended byjavax.swing.JComponent
              extended bypipe.dataLayer.PetriNetObject
                  extended bypipe.dataLayer.PlaceTransitionObject
                      extended bypipe.dataLayer.Transition
All Implemented Interfaces:
Constants, java.awt.image.ImageObserver, java.awt.MenuContainer, java.io.Serializable

public class Transition
extends PlaceTransitionObject
implements Constants

Transition - Petri-Net Transition Class

Version:
1.0
Author:
James D Bloom
See Also:

PNML - Petri-Net XMLSchema (stNet.xsd),

UML - PNML Package

, Serialized Form

Nested Class Summary
(package private)  class Transition.ArcAngleCompare
           
 
Nested classes inherited from class javax.swing.JComponent
javax.swing.JComponent.AccessibleJComponent
 
Nested classes inherited from class java.awt.Container
java.awt.Container.AccessibleAWTContainer
 
Nested classes inherited from class java.awt.Component
java.awt.Component.AccessibleAWTComponent, java.awt.Component.BltBufferStrategy, java.awt.Component.FlipBufferStrategy
 
Field Summary
private  int angle
           
private  java.util.ArrayList arcAngleList
          The transform
private  boolean enabled
           
private  boolean enabledBackwards
           
 boolean highlighted
           
private  java.awt.Shape proximityTransition
           
private  double rate
          The transition rate
private static double rootThreeOverTwo
           
private  boolean timed
          Is this a timed transition or not?
private  java.awt.geom.GeneralPath transition
          Transition is of Rectangle2D.Double
static int TRANSITION_HEIGHT
          Place Width
static int TRANSITION_WIDTH
          Place Width
static java.lang.String type
           
 
Fields inherited from class pipe.dataLayer.PlaceTransitionObject
componentHeight, componentWidth, positionX, positionY, someArc
 
Fields inherited from class pipe.dataLayer.PetriNetObject
bounds, COMPONENT_DRAW_OFFSET, draggable, id, ignoreSelection, objectColour, pnName, selectable, selected, selectionBorderColour
 
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.Container
 
Fields inherited from class java.awt.Component
BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT
 
Fields inherited from interface pipe.gui.Constants
ADDTOKEN, ANIMATE, ANNOTATION, ANNOTATION_DEFAULT_FONT, ANNOTATION_DEFAULT_FONT_SIZE, ANNOTATION_LAYER_OFFSET, ANNOTATION_MIN_WIDTH, ANNOTATION_SIZE_OFFSET, ARC, ARC_CONTROL_POINT_CONSTANT, ARC_LAYER_OFFSET, ARC_PATH_PROXIMITY_WIDTH, ARC_PATH_SELECTION_WIDTH, ARC_POINT_LAYER_OFFSET, CREATING, DEFAULT_ELEMENT_TYPE, DELETE, DELTOKEN, DRAW, ELEMENT_FILL_COLOUR, ELEMENT_LINE_COLOUR, ENABLED_TRANSITION_COLOUR, FIRE, GRID, IMMTRANS, LOWEST_LAYER_OFFSET, NOTE_DISABLED_COLOUR, NOTE_EDITING_COLOUR, PLACE, PLACE_TRANSITION_HEIGHT, PLACE_TRANSITION_LAYER_OFFSET, PLACE_TRANSITION_PROXIMITY_RADIUS, PROPERTY_FILE_DESC, PROPERTY_FILE_EXTENSION, RANDOM, RESERVED_BORDER, RESIZE_POINT_DOWN_COLOUR, SELECT, SELECTION_FILL_COLOUR, SELECTION_LAYER_OFFSET, SELECTION_LINE_COLOUR, START, STEPBACKWARD, STEPFORWARD, STOP, TIMEDTRANS
 
Fields inherited from interface java.awt.image.ImageObserver
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH
 
Constructor Summary
Transition()
          Create Petri-Net Transition object
Transition(double positionXInput, double positionYInput)
          Create Petri-Net Transition object
Transition(double positionXInput, double positionYInput, java.lang.String idInput, java.lang.String nameInput, double nameOffsetXInput, double nameOffsetYInput, double aRate, boolean timedTransition, int angleInput)
          Create Petri-Net Transition object
 
Method Summary
 int boundsHeight()
          Returns the height bounds we want to use when initially creating the place on the gui
 int boundsWidth()
          Returns the width bounds we want to use when initially creating the place on the gui
private  void constructTransition()
           
 boolean contains(int x, int y)
           
 int getAngle()
           
 double getRate()
           
 boolean getTimed()
          Get the timed transition attribute (for GSPNs)
 boolean isEnabled()
          Determines whether Transition is enabled
 boolean isEnabled(boolean animationStatus)
          Determines whether Transition is enabled
 boolean isEnabledBackwards()
          Determines whether Transition is enabled backwards
 int leftOffset()
          Returns the distance between the outside of the component to the centre, in order to position the centre of the place where the mouse clicks on the screen
private  void outlineTransition()
           
 void paintComponent(java.awt.Graphics g)
          Implemented in subclasses as involves some tailoring according to the shape
 void removeArcCompareObject(Arc a)
           
 void rotate(int angleInc)
          Rotates the Transition through the specified angle around the midpoint
 void setEnabled(boolean status)
          Sets whether Transition is enabled
 void setEnabledBackwards(boolean status)
          Sets whether Transition is enabled
 void setEnabledFalse()
           
 void setRate(double _rate)
           
 void setTimed(boolean change)
          Set the timed transition attribute (for GSPNs)
 int topOffset()
          Returns the distance between the outside of the component to the centre, in order to position the centre of the place where the mouse clicks on the screen
 void updateEndPoint(Arc arc)
           
 void updateEndPoints()
           
 
Methods inherited from class pipe.dataLayer.PlaceTransitionObject
addConnectFrom, addConnectTo, addedToGui, areNotSameType, centreOffsetLeft, centreOffsetTop, delete, getCentre, getConnectFromIterator, getConnectToIterator, getId, getIntersectOffset, getName, getPositionX, getPositionXObject, getPositionY, getPositionYObject, mouseDragged, mousePressed, mouseReleased, removeFromArc, removeToArc, select, setCentre, setId, setName, setPositionX, setPositionY, translate, updateBounds, updateConnected
 
Methods inherited from class pipe.dataLayer.PetriNetObject
addLabelToContainer, deselect, getNameLabel, ignoreSelection, isDraggable, isSelectable, isSelected, removeFromContainer, setDraggable, setObjectColour, setSelectable, setSelectionBorderColour
 
Methods inherited from class javax.swing.JComponent
addAncestorListener, addNotify, addPropertyChangeListener, addPropertyChangeListener, addVetoableChangeListener, computeVisibleRect, createToolTip, disable, enable, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, fireVetoableChange, getAccessibleContext, getActionForKeyStroke, getActionMap, getAlignmentX, getAlignmentY, getAncestorListeners, getAutoscrolls, getBorder, getBounds, getClientProperty, getComponentGraphics, getConditionForKeyStroke, getDebugGraphicsOptions, getDefaultLocale, getGraphics, getHeight, getInputMap, getInputMap, getInputVerifier, getInsets, getInsets, getListeners, getLocation, getMaximumSize, getMinimumSize, getNextFocusableComponent, getPreferredSize, getPropertyChangeListeners, getPropertyChangeListeners, getRegisteredKeyStrokes, getRootPane, getSize, getToolTipLocation, getToolTipText, getToolTipText, getTopLevelAncestor, getTransferHandler, getUIClassID, getVerifyInputWhenFocusTarget, getVetoableChangeListeners, getVisibleRect, getWidth, getX, getY, grabFocus, isDoubleBuffered, isLightweightComponent, isManagingFocus, isMaximumSizeSet, isMinimumSizeSet, isOpaque, isOptimizedDrawingEnabled, isPaintingTile, isPreferredSizeSet, isRequestFocusEnabled, isValidateRoot, paint, paintBorder, paintChildren, paintImmediately, paintImmediately, paramString, print, printAll, printBorder, printChildren, printComponent, processComponentKeyEvent, processKeyBinding, processKeyEvent, processMouseMotionEvent, putClientProperty, registerKeyboardAction, registerKeyboardAction, removeAncestorListener, removeNotify, removePropertyChangeListener, removePropertyChangeListener, removeVetoableChangeListener, repaint, repaint, requestDefaultFocus, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, resetKeyboardActions, reshape, revalidate, scrollRectToVisible, setActionMap, setAlignmentX, setAlignmentY, setAutoscrolls, setBackground, setBorder, setDebugGraphicsOptions, setDefaultLocale, setDoubleBuffered, setFont, setForeground, 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, applyComponentOrientation, areFocusTraversalKeysSet, countComponents, deliverEvent, doLayout, findComponentAt, findComponentAt, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getContainerListeners, getFocusTraversalKeys, getFocusTraversalPolicy, getLayout, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusCycleRoot, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paintComponents, preferredSize, printComponents, processContainerEvent, processEvent, remove, remove, removeAll, removeContainerListener, setFocusCycleRoot, setFocusTraversalKeys, setFocusTraversalPolicy, setLayout, transferFocusBackward, 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, getBackground, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusCycleRootAncestor, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getFontMetrics, getForeground, getGraphicsConfiguration, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputContext, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocale, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMouseWheelListeners, getParent, getPeer, getSize, getToolkit, getTreeLock, gotFocus, handleEvent, hasFocus, hide, imageUpdate, inside, isBackgroundSet, isCursorSet, isDisplayable, isFocusable, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, 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, processMouseEvent, processMouseWheelEvent, remove, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, repaint, repaint, repaint, resize, resize, setBounds, setBounds, setComponentOrientation, setCursor, setDropTarget, setFocusable, setFocusTraversalKeysEnabled, setIgnoreRepaint, setLocale, setLocation, setLocation, setSize, setSize, show, show, size, toString, transferFocus, transferFocusUpCycle
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

type

public static final java.lang.String type
See Also:
Constant Field Values

transition

private java.awt.geom.GeneralPath transition
Transition is of Rectangle2D.Double


proximityTransition

private java.awt.Shape proximityTransition

TRANSITION_HEIGHT

public static final int TRANSITION_HEIGHT
Place Width

See Also:
Constant Field Values

TRANSITION_WIDTH

public static final int TRANSITION_WIDTH
Place Width

See Also:
Constant Field Values

angle

private int angle

enabled

private boolean enabled

enabledBackwards

private boolean enabledBackwards

highlighted

public boolean highlighted

rate

private double rate
The transition rate


timed

private boolean timed
Is this a timed transition or not?


rootThreeOverTwo

private static final double rootThreeOverTwo

arcAngleList

private java.util.ArrayList arcAngleList
The transform

Constructor Detail

Transition

public Transition(double positionXInput,
                  double positionYInput,
                  java.lang.String idInput,
                  java.lang.String nameInput,
                  double nameOffsetXInput,
                  double nameOffsetYInput,
                  double aRate,
                  boolean timedTransition,
                  int angleInput)
Create Petri-Net Transition object

Parameters:
positionXInput - X-axis Position
positionYInput - Y-axis Position
idInput - Transition id
nameInput - Name
nameOffsetXInput - Name X-axis Position
nameOffsetYInput - Name Y-axis Position

Transition

public Transition(double positionXInput,
                  double positionYInput)
Create Petri-Net Transition object

Parameters:
positionXInput - X-axis Position
positionYInput - Y-axis Position

Transition

public Transition()
Create Petri-Net Transition object

Method Detail

paintComponent

public void paintComponent(java.awt.Graphics g)
Description copied from class: PlaceTransitionObject
Implemented in subclasses as involves some tailoring according to the shape

Overrides:
paintComponent in class PlaceTransitionObject

rotate

public void rotate(int angleInc)
Rotates the Transition through the specified angle around the midpoint


outlineTransition

private void outlineTransition()

isEnabled

public boolean isEnabled(boolean animationStatus)
Determines whether Transition is enabled

Parameters:
animationStatus - Anamation status
Returns:
True if enabled

isEnabledBackwards

public boolean isEnabledBackwards()
Determines whether Transition is enabled backwards

Returns:
True if enabled

isEnabled

public boolean isEnabled()
Determines whether Transition is enabled

Returns:
True if enabled

setEnabled

public void setEnabled(boolean status)
Sets whether Transition is enabled

Returns:
enabled if True

setEnabledBackwards

public void setEnabledBackwards(boolean status)
Sets whether Transition is enabled

Returns:
enabled if True

setEnabledFalse

public void setEnabledFalse()

boundsWidth

public int boundsWidth()
Returns the width bounds we want to use when initially creating the place on the gui

Overrides:
boundsWidth in class PlaceTransitionObject
Returns:
Width bounds of Place

boundsHeight

public int boundsHeight()
Returns the height bounds we want to use when initially creating the place on the gui

Overrides:
boundsHeight in class PlaceTransitionObject
Returns:
Height bounds of Place

topOffset

public int topOffset()
Returns the distance between the outside of the component to the centre, in order to position the centre of the place where the mouse clicks on the screen


leftOffset

public int leftOffset()
Returns the distance between the outside of the component to the centre, in order to position the centre of the place where the mouse clicks on the screen


setRate

public void setRate(double _rate)

getRate

public double getRate()

getAngle

public int getAngle()

setTimed

public void setTimed(boolean change)
Set the timed transition attribute (for GSPNs)


getTimed

public boolean getTimed()
Get the timed transition attribute (for GSPNs)


constructTransition

private void constructTransition()

contains

public boolean contains(int x,
                        int y)

removeArcCompareObject

public void removeArcCompareObject(Arc a)

updateEndPoint

public void updateEndPoint(Arc arc)
Specified by:
updateEndPoint in class PlaceTransitionObject

updateEndPoints

public void updateEndPoints()