cz.cuni.jagrlib.piece
Class FloodFillPoint

java.lang.Object
  extended by cz.cuni.jagrlib.DefaultProperty
      extended by cz.cuni.jagrlib.Piece
          extended by cz.cuni.jagrlib.piece.FloodFillPoint
All Implemented Interfaces:
Breakable, FloodFillRender, Property, Render, Template

public class FloodFillPoint
extends Piece
implements FloodFillRender

Flood-fill using FIFO (queue) and point access.

Since:
0.24
See Also:
FloodFillPoint.java

Field Summary
protected static java.lang.String CATEGORY
          Object category.
protected  int continuity
          Continuity.
static java.lang.String MAX_QUEUE
           
protected  int maxQueue
          Maximal queue size.
protected  java.awt.Point[] queue
          Maximal queue.
static java.lang.String QUEUE
           
static RegPiece reg
          Static registration instance for this class.
static java.lang.String REM_QUEUE
           
protected  boolean rememberQueue
          Remember the maximal queue?
static java.lang.String SAVE_INTERVAL
           
protected  int saveInterval
          Interval between two save points (in drawn pixels).
protected  java.lang.String saveTemplate
          Save file-name template.
protected  int setMaxQueue
          Pre-set maximal queue size.
static java.lang.String TEMPLATE
           
protected static java.lang.String TEMPLATE_NAME
          Object template identifier.
 
Fields inherited from class cz.cuni.jagrlib.Piece
channels, info, pl, plugs, TEMPLATE_TYPE, userBreak
 
Fields inherited from interface cz.cuni.jagrlib.iface.FloodFillRender
CONTINUITY
 
Fields inherited from interface cz.cuni.jagrlib.iface.Render
LINE_CAP, LINE_CAP_BUTT, LINE_CAP_ROUND, LINE_CAP_SQUARE, LINE_JOIN, LINE_JOIN_BEVEL, LINE_JOIN_DISJOINT, LINE_JOIN_MITER, LINE_JOIN_OVERLAP, LINE_JOIN_ROUND, LINE_WIDTH, PROJECTION, RENDER_STYLE, RENDER_STYLE_FLAT, RENDER_STYLE_GOURAUD, RENDER_STYLE_LINE, RENDER_STYLE_PHONG, RENDER_STYLE_TEXTURE
 
Fields inherited from interface cz.cuni.jagrlib.iface.Property
LOGGING, STATISTICS, TEXT_DESCRIPTION
 
Fields inherited from interface cz.cuni.jagrlib.Template
ALL_PLUGS, C_1D, C_2D, C_3D, C_ALPHA, C_BINARY, C_BREP, C_CAMERA, C_CIRCLE, C_CLIP, C_COMPRESSION, C_CURVE, C_DATA, C_DRAW, C_EDITOR, C_ELLIPSE, C_FILL, C_FILTER, C_FLOAT, C_FUNCTION, C_IMAGE, C_INTEGER, C_IO, C_LIGHT, C_LINE, C_METRIC, C_POLYGON, C_PROJECTION, C_RADIOSITY, C_RASTER, C_RENDER, C_SAMPLE, C_SCENE, C_SET, C_SOLID, C_TEXT, C_TRANSFORM, C_VECTOR, C_VIEWER, C_WORKER, CAT_EMPTY, EMPTY, IFACE, JAGRLIB, JAGRLIB2, MANIPULATOR_COMBO, MANIPULATOR_CUSTOM, MANIPULATOR_DEFAULT, MANIPULATOR_MULTILINE, PL_ALPHAMASK, PL_BITMASK, PL_CAUSTIC, PL_CODEC, PL_COLORMAP, PL_COMPARE, PL_DATA, PL_DIRECT, PL_EDITOR, PL_FILTER, PL_FUNCTION, PL_IMAGE, PL_IMPORT, PL_INPUT, PL_INTERSECTION, PL_LIGHTSOURCE, PL_ORDER, PL_OUTPUT, PL_PALETTE, PL_PHOTON, PL_PROPERTY, PL_QUANTIZER, PL_RASTER, PL_RENDER, PL_SHADOW, PL_STREAM, PL_TRANSFORM, PL_TRIGGER, PL_VOLUME, PL_WINDOW, TYPE_BOOLEAN, TYPE_DOUBLE, TYPE_FLOAT, TYPE_INTEGER, TYPE_LONG, TYPE_OBJECT, TYPE_STRING
 
Constructor Summary
FloodFillPoint()
           
 
Method Summary
 void floodFill(int x, int y)
          Fills the continuous 2D area defined by the starting point [x,y], using callback border BitMask.
 java.lang.Object get(java.lang.String key)
          Gets the given property.
 void set(java.lang.String key, java.lang.Object value)
          Sets the given property.
static int setTemplate(Template t, int ord)
          General-purpose registration routine.
 
Methods inherited from class cz.cuni.jagrlib.Piece
className, connect, findPlug, findPlug, getInfo, getInterface, getInterface, getPlug, getReg, init, isCompatible, isCompatible, isConnected, logError, logWarning, myInterface, newInputPlug, newOptOutputPlug, newOutputPlug, newPlug, noTemplates, propBegin, propBounds, propDefault, propEnd, propEnum, propManipulator, propManipulator, setProgressListener, setRegStrings, setTemplateDynamic, stop
 
Methods inherited from class cz.cuni.jagrlib.DefaultProperty
booleanProperty, booleanProperty, colorDoubleProperty, colorProperty, commit, doubleProperty, doubleProperty, doubleProperty, enumProperty, floatProperty, floatProperty, floatProperty, intProperty, intProperty, intProperty, longProperty, longProperty, longProperty, set, stringProperty
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface cz.cuni.jagrlib.iface.Property
commit
 

Field Detail

continuity

protected int continuity
Continuity. Should be either 4 or 8.


maxQueue

protected int maxQueue
Maximal queue size.


queue

protected java.awt.Point[] queue
Maximal queue.


rememberQueue

protected boolean rememberQueue
Remember the maximal queue?


setMaxQueue

protected int setMaxQueue
Pre-set maximal queue size.


saveTemplate

protected java.lang.String saveTemplate
Save file-name template.


saveInterval

protected int saveInterval
Interval between two save points (in drawn pixels).


MAX_QUEUE

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

QUEUE

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

REM_QUEUE

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

TEMPLATE

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

SAVE_INTERVAL

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

TEMPLATE_NAME

protected static final java.lang.String TEMPLATE_NAME
Object template identifier.

See Also:
Constant Field Values

CATEGORY

protected static final java.lang.String CATEGORY
Object category.

See Also:
Constant Field Values

reg

public static final RegPiece reg
Static registration instance for this class. Automatically initialized in class-loading time.

Constructor Detail

FloodFillPoint

public FloodFillPoint()
Method Detail

floodFill

public void floodFill(int x,
                      int y)
Fills the continuous 2D area defined by the starting point [x,y], using callback border BitMask. Computes either 4-continuous or 8-continuous area.

Specified by:
floodFill in interface FloodFillRender
Parameters:
x - Seed's X coordinate.
y - Seed's Y coordinate.

set

public void set(java.lang.String key,
                java.lang.Object value)
Sets the given property.

Specified by:
set in interface Property
Overrides:
set in class DefaultProperty
Parameters:
key - Key string.
value - The new value.
See Also:
Property.commit()

get

public java.lang.Object get(java.lang.String key)
Gets the given property.

Specified by:
get in interface Property
Overrides:
get in class DefaultProperty
Parameters:
key - Key string.
Returns:
The actual value or null.

setTemplate

public static int setTemplate(Template t,
                              int ord)
General-purpose registration routine. Sets all plugs, strings, etc. to the given Template.