cz.cuni.jagrlib.obscure
Class Mandelbrot

java.lang.Object
  extended by cz.cuni.jagrlib.DefaultProperty
      extended by cz.cuni.jagrlib.Piece
          extended by cz.cuni.jagrlib.DefaultImageSynthesizer
              extended by cz.cuni.jagrlib.obscure.Mandelbrot
All Implemented Interfaces:
Breakable, ImageSynthesizer, Property, TimeDependent, Template

public class Mandelbrot
extends DefaultImageSynthesizer

Fractal - Mandelbrot set.

Since:
0.25
Version:
0.26 $Rev: 466 $ $Date: 2007-05-26 07:12:19 +0200 (so, 26 V 2007) $ $Author: pepca $
See Also:
Mandelbrot.java

Field Summary
protected static String CATEGORY
          Object category.
static String CENTER_X
           
static String CENTER_Y
           
protected  double centerX
          Field center (X coordinate).
protected  double centerY
          Field center (Y coordinate).
static String CMAP_NO
           
protected  int cmapNo
          Actual index of external colormap (see ColormapStore).
static String EXPONENT_IM
           
static String EXPONENT_RE
           
protected  double exponentIm
          Mandelbrot exponent (imaginary part).
protected  double exponentRe
          Mandelbrot exponent (real part).
protected  double height
          Field height.
static String HEIGHT
           
static String INDEX_OFFSET
           
protected  int indexOffset
          Color index offset.
protected  TrMatrix m
          Transform matrix from source (pixel) coordinates to complex space.
static String MAX_ITER
           
protected  int maxIter
          Maximum number of iterations.
static RegPiece reg
          Static registration instance for this class.
protected static String TEMPLATE_NAME
          Object template identifier.
static String TILT_ANGLE
           
protected  double tiltAngle
          Field tilt angle.
protected  double width
          Field width.
static String WIDTH
           
 
Fields inherited from class cz.cuni.jagrlib.DefaultImageSynthesizer
actTime, imageHeight, imageWidth
 
Fields inherited from class cz.cuni.jagrlib.Piece
channels, info, pl, plugs, TEMPLATE_TYPE, userBreak
 
Fields inherited from interface cz.cuni.jagrlib.iface.ImageSynthesizer
GAMMA, SUPERSAMPLING
 
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_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_PROPERTY, PL_QUANTIZER, PL_RASTER, PL_RENDER, PL_STREAM, PL_TRANSFORM, PL_TRIGGER, PL_WINDOW, TYPE_BOOLEAN, TYPE_DOUBLE, TYPE_FLOAT, TYPE_INTEGER, TYPE_LONG, TYPE_OBJECT, TYPE_STRING
 
Constructor Summary
Mandelbrot()
           
 
Method Summary
 Object get(String key)
          Gets the given property.
protected  void prepareMatrix()
          Prepare matrix transform.
 void renderRectangle(int x1, int y1, int x2, int y2)
          Render the given rectangle.
 void set(String key, Object value)
          Sets the given property.
static int setTemplate(Template t, int ord)
          General-purpose registration routine.
 
Methods inherited from class cz.cuni.jagrlib.DefaultImageSynthesizer
getTime, getTimeInterval, renderAll, renderPixel, setBounds, setTime
 
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.Breakable
setProgressListener, stop
 
Methods inherited from interface cz.cuni.jagrlib.iface.Property
commit
 

Field Detail

exponentRe

protected double exponentRe
Mandelbrot exponent (real part).


exponentIm

protected double exponentIm
Mandelbrot exponent (imaginary part).


centerX

protected double centerX
Field center (X coordinate).


centerY

protected double centerY
Field center (Y coordinate).


width

protected double width
Field width.


height

protected double height
Field height.


tiltAngle

protected double tiltAngle
Field tilt angle.


maxIter

protected int maxIter
Maximum number of iterations.


indexOffset

protected int indexOffset
Color index offset.


cmapNo

protected int cmapNo
Actual index of external colormap (see ColormapStore).


m

protected TrMatrix m
Transform matrix from source (pixel) coordinates to complex space.


EXPONENT_RE

public static final String EXPONENT_RE
See Also:
Constant Field Values

EXPONENT_IM

public static final String EXPONENT_IM
See Also:
Constant Field Values

CENTER_X

public static final String CENTER_X
See Also:
Constant Field Values

CENTER_Y

public static final String CENTER_Y
See Also:
Constant Field Values

WIDTH

public static final String WIDTH
See Also:
Constant Field Values

HEIGHT

public static final String HEIGHT
See Also:
Constant Field Values

TILT_ANGLE

public static final String TILT_ANGLE
See Also:
Constant Field Values

MAX_ITER

public static final String MAX_ITER
See Also:
Constant Field Values

INDEX_OFFSET

public static final String INDEX_OFFSET
See Also:
Constant Field Values

CMAP_NO

public static final String CMAP_NO
See Also:
Constant Field Values

TEMPLATE_NAME

protected static final String TEMPLATE_NAME
Object template identifier.

See Also:
Constant Field Values

CATEGORY

protected static final 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

Mandelbrot

public Mandelbrot()
Method Detail

prepareMatrix

protected void prepareMatrix()
Prepare matrix transform.


renderRectangle

public void renderRectangle(int x1,
                            int y1,
                            int x2,
                            int y2)
Render the given rectangle. Output is written to some connected raster device (not defined in this interface).

Parameters:
x1 - X coordinate of the upper left corner.
y1 - Y coordinate of the upper left corner.
x2 - X coordinate of the lower right corner (outside pixel).
y2 - Y coordinate of the upper left corner (outside pixel).
See Also:
DefaultImageSynthesizer.renderPixel(int, int, double[]), DefaultImageSynthesizer.renderAll()

set

public void set(String key,
                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 Object get(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.