Documentation of 'jvx.cellular.PnCellOperator' Java class
PnCellOperator ("JavaView Reference Manual")
"JavaView? v5.03.003"
jvx.cellular

Class PnCellOperator

  • All Implemented Interfaces:
    java.io.Serializable, java.lang.Cloneable, java.lang.Runnable, PsUpdateIf, PjWorkshopIf, PvPickListenerIf
    Direct Known Subclasses:
    PnMinesweeper


    public class PnCellOperator
    extends PjWorkshop
    implements PvPickListenerIf, java.lang.Runnable
    Implements a cellular automata on the triangles of an element set.
    See Also:
    Serialized Form
    Author:
    Ulrich Reitebuch
    Version:
    14.06.02, 3.10 revised (ur) Some tunings.
    28.12.01, 3.00 revised (kp) Full revision when incorporating the new workshop handling.
    27.06.00, 2.10 revised (ur) Marked cells output by ElementTag added. 02.05.00, 2.00 revised (kp) Class derived from PjProject in order to reuse interface methods.
    02.05.00, 1.20 revised (kp) Removed the static getDialog() method which implicitly constructed a PnCellOperator.
    02.04.00, 1.10 revised (kp) PdColor replaced with Color.
    18.09.99, 1.01 revised (kp) Added two additional method to fulfill PvPickListenerIf.
    02.08.99, 1.00 created (ur)
    • Constructor Detail

      • PnCellOperator

        public PnCellOperator()
        Constructor
      • PnCellOperator

        public PnCellOperator(PgElementSet geom)
        Deprecated. use constructor prj=new PnCellOperator();prj.setGeometry(geom);prj.reset();
        Constructor.
    • Method Detail

      • init

        public void init()
        Initialization
        Overrides:
        init in class PjWorkshop
      • reset

        public void reset()
        Reset workshop and geometry to original state.
        Overrides:
        reset in class PjWorkshop
      • setGeometry

        public void setGeometry(PgElementSet geom)
        Assign a geometry on which this workshop operates.
      • close

        public void close()
        Remove pick focus and update from cell operator, reset elementSet's colors to global element color and destroy dialog window.
        Overrides:
        close in class PjWorkshop
      • requestPick

        public void requestPick()
        Set pick focus upon cell operator.
        Version:
        06.07.02, 1.10 revised (kp) Avoid NullPointerException when geometry has no displays yet.
      • releasePick

        public void releasePick()
        Remove pick focus from cell operator.
        Version:
        06.07.02, 1.10 revised (kp) Avoid NullPointerException when geometry has no displays yet.
      • selectGeometry

        public void selectGeometry(PgGeometryIf geom)
        This workshop is informed when the currently active geometry changes in the display. This method is automatically invoked from a display if this workshop is registered as pick listener.

        This method does nothing and must be overwritten.

        Specified by:
        selectGeometry in interface PvPickListenerIf
        Parameters:
        geom - Now selected geometry of display.
      • pickDisplay

        public void pickDisplay(PvPickEvent pos)
        Get a location in the display with 2d display and 3d world coordinates. Point may be independent of any geometry.

        This method does nothing and must be overwritten.

        Specified by:
        pickDisplay in interface PvPickListenerIf
        Parameters:
        pos - Pick event issued by the display
        See Also:
        PvPickListenerIf
      • pickVertex

        public void pickVertex(PgGeometryIf geom,
                               int vertexIndex,
                               PdVector vertex)
        Get a picked vertex of a geometry.

        This method does nothing and must be overwritten.

        Specified by:
        pickVertex in interface PvPickListenerIf
        Parameters:
        geom - Picked geometry on which vertex lies
        vertexIndex - Index of vertex in vertex array of geometry
        vertex - 3d coordinates of vertex position
        See Also:
        PvPickListenerIf
      • dragVertex

        public void dragVertex(PgGeometryIf geom,
                               int vertexIndex,
                               PdVector vertex)
        Drag a picked vertex of a geometry.

        This method invokes pickVertex(PgGeometryIf,int,PdVector) and should be overwritten.

        Specified by:
        dragVertex in interface PvPickListenerIf
        Parameters:
        geom - Picked geometry on which vertex lies
        vertexIndex - Index of vertex in vertex array of geometry
        vertex - 3d coordinates of vertex position
      • markVertices

        public void markVertices(PvPickEvent markBox)
        Mark a set of vertices of a geometry within a given bounding box.
        Specified by:
        markVertices in interface PvPickListenerIf
        Parameters:
        markBox - contains four coplanar points on the bounding prism, and direction of prism.
      • unmarkVertices

        public void unmarkVertices(PvPickEvent markBox)
        Unmark a set of vertices of a geometry within a given bounding box.
        Specified by:
        unmarkVertices in interface PvPickListenerIf
        Parameters:
        markBox - contains four coplanar points on the bounding prism, and direction of prism.
      • setNumStates

        public void setNumStates(int anInt)
        Define number of possible states of a cell.
      • getNumStates

        public int getNumStates()
        return number of possible states of a cell.
      • setRule

        public void setRule(int aRule)
        Select an operating rule.
        Since:
        JavaView 2.34
        Version:
        28.08.02, 1.00 created (kp)
      • setRule

        public void setRule(java.lang.String aString)
        Deprecated. use setRule(int)
        Choose an operating rule.
      • setInfluence

        public void setInfluence(int inf)
        Choose an influence area.
        Since:
        JavaView 2.34
        Version:
        28.08.02, 1.00 created (kp)
      • setInfluence

        public void setInfluence(java.lang.String aString)
        Deprecated. use setInfluence(int)
        Choose an influence area.
      • getColor

        public java.awt.Color getColor(int i)
        Return color for a given cell state.
      • setColor

        public void setColor(int i,
                             java.awt.Color aColor)
        Define color for a cell state.
      • getNumLoops

        public int getNumLoops()
        Get the number of operating loops.
        Since:
        JavaView 2.48.007
        Version:
        25.12.02, 1.00 created (kp)
      • setNumLoops

        public void setNumLoops(int numLoops)
        Set the number of operating loops.
      • setCurrLoop

        public void setCurrLoop(int currLoop)
        Set number of current operating loop.
      • markElement

        public void markElement(int elemNr)
        Set an element to the next state.
      • markElement

        public void markElement(int elemNr,
                                int value)
        Set an element to a given state.
      • markGlider

        public void markGlider(int elemNr,
                               int dir)
        Set a glider upon an elementSet with quadrilateral connectivity.
      • clear

        public void clear()
        Set all elements to state "0".
      • getState

        public int getState(int elemNr)
        Return state number of a given element.
      • makeInfluence

        public void makeInfluence()
        Set list of influencing cells for all cells of the elementSet.
      • makeNeighbourInfluence

        public void makeNeighbourInfluence()
        For all cells store cell itself and all neighbour cells.
      • makeCoronaInfluence

        public void makeCoronaInfluence()
        For all cells store all cells touching vertices of the cell itself.
      • compute

        public void compute()
        For all cells call cell operating method.
      • evaluate

        public void evaluate()
        For all elements of the ElementSet show the cell values.
      • setOutputType

        public void setOutputType(int aType)
        Appoint the way of viewing element states.
      • setColors

        public void setColors()
        Set colors of all elements of the elementSet according to their states.
      • restoreColors

        public void restoreColors()
        Reset the ElementSet's element colors to state before calling cell operator.
      • setElementTags

        public void setElementTags()
        Set tag for all elements of the elementSet according to their states.
      • cellOperator

        public int cellOperator(int index)
        Call the appointed operating rule for a given cell.
      • ruleOfLife

        public int ruleOfLife(int index)
        Evaluate rule of life: Dead cells with exactly three living influencing cells are set alive, living cells with three or four living influencing cells stay alive, all other cells are dead.
      • ruleOfMajority

        public int ruleOfMajority(int index)
        Every cell is set to the state of the majority state in the influence area.
      • start

        public void start()
        Start cell operator in separate thread.
      • stop

        public void stop()
        Stop cell operator in separate thread.
      • run

        public void run()
        Do cell operating until m_numLoops are done or until a call of stop().
        Specified by:
        run in interface java.lang.Runnable
"JavaView? v5.03.003"

"

The software JavaView? is copyright protected. All Rights Reserved.
"

Ads help maintain this website.