Docjar: A Java Source and Docuemnt Enginecom.*    java.*    javax.*    org.*    all    new    plug-in

Quick Search    Search Deep

com.arranger.jarl.widget.filter
Class Fractal  view Fractal download Fractal.java

java.lang.Object
  extended bycom.arranger.jarl.base.BaseJarlObject
      extended bycom.arranger.jarl.base.BaseTimedJarlObject
          extended bycom.arranger.jarl.widget.BaseWidget
              extended bycom.arranger.jarl.widget.BaseSegmentWidget
                  extended bycom.arranger.jarl.widget.filter.BaseFilterWidget
                      extended bycom.arranger.jarl.widget.filter.Fractal
All Implemented Interfaces:
java.lang.Cloneable, com.arranger.jarl.base.IJarlObject, com.arranger.jarl.base.ITimedJarlObject, com.arranger.jarl.widget.IWidget, com.arranger.jarl.util.IWidgetConfigSegmentFactory, com.arranger.jarl.widget.IWidgetDef

public class Fractal
extends BaseFilterWidget

Fractal creates a mandelbrot fractal. note, this currently will ignore traits, strokes & filters...


Nested Class Summary
static class Fractal.FractalConfigSegment
           
 
Nested classes inherited from class com.arranger.jarl.widget.BaseSegmentWidget
com.arranger.jarl.widget.BaseSegmentWidget.BaseWidgetConfigSegment
 
Field Summary
protected  ComplexRect m_complexRect
           
protected  ComplexRect m_endComplexRect
           
protected  int m_endGradientIndex
           
protected  int m_endIterations
           
protected  int m_gradientIndex
           
protected  int m_iterations
           
protected  ComplexRect m_startComplexRect
           
protected  int m_startGradientIndex
           
protected  int m_startIterations
           
protected static int NUM_COLORS
           
 
Fields inherited from class com.arranger.jarl.widget.BaseSegmentWidget
m_configSegments, m_endHeight, m_endWidth, m_height, m_startHeight, m_startWidth, m_width
 
Fields inherited from class com.arranger.jarl.widget.BaseWidget
m_basicStroke, m_color, m_debugBorder, m_fill, m_filters, m_parent, m_strokes, m_strokeWidth, m_traits
 
Fields inherited from class com.arranger.jarl.base.BaseTimedJarlObject
m_endTime, m_startTime, m_totalTime
 
Fields inherited from class com.arranger.jarl.base.BaseJarlObject
m_cachedTime, m_className, m_configElement, m_useAbsoluteTime, m_zOrder
 
Constructor Summary
Fractal()
           
 
Method Summary
protected  void _paint(com.arranger.jarl.base.IContext context, java.awt.Graphics2D graphics2D)
          Called from within BaseWidget.paint(com.arranger.jarl.base.IContext, java.awt.Graphics2D)>BaseWidget.paint(com.arranger.jarl.base.IContext, java.awt.Graphics2D) 55
protected  void addJarlObjectInfo(com.arranger.jarl.base.IJarlObjectInfo jarlObjectInfo)
          Override this, and for every field that you're using, call BaseJarlObject.populateInfo(com.arranger.jarl.base.IJarlObjectInfo, java.lang.String, java.lang.String, com.arranger.jarl.base.IJarlObjectInfo.IJarlObjectDisplay)>BaseJarlObject.populateInfo(com.arranger.jarl.base.IJarlObjectInfo, java.lang.String, java.lang.String, com.arranger.jarl.base.IJarlObjectInfo.IJarlObjectDisplay) 55 for example: populateInfo(jarlObjectInfo, "zOrder", "Z-Order", JarlInfoUtil.PRIMITIVE_DISPLAY);
 com.arranger.jarl.util.WidgetConfigSegment createSegment(org.w3c.dom.Element element)
          Create a concrete com.arranger.jarl.util.WidgetConfigSegment based on this element
protected  java.awt.Color getColorForPoint(double x, double y, double delta, double height, int maxIterations, ComplexRect complexRect, java.awt.Color[] colors)
           
protected  void initAttributes(com.arranger.jarl.base.IContext context)
          Always remember some attrs might not be there
protected  void paintFractal(double width, double height, int maxIterations, ComplexRect complexRect, java.awt.Graphics2D graphics2D, java.awt.Color[] colors, com.arranger.jarl.base.IContext context)
           
protected  java.awt.Color[] prepareColorArray(com.arranger.jarl.base.IContext context)
          Get the gradient color map
protected  int testPoint(double cR, double cI, int maxIterations)
          Is the given complex point, (cR, cI), in the Mandelbrot set? Use the formula: z <= z*z + c, where z is initially equal to c.
 
Methods inherited from class com.arranger.jarl.widget.BaseSegmentWidget
getConfigSegments, getCurrentSegment, getCurrentSegmentTimePct, getHeight, getWidth
 
Methods inherited from class com.arranger.jarl.widget.BaseWidget
centerShape, clone, cloneCollection, getColor, getFilters, getParent, getStrokes, getTraits, init, initInstance, paint, paintShape, setColor, setParent
 
Methods inherited from class com.arranger.jarl.base.BaseTimedJarlObject
checkTime, getEndTime, getStartTime, getTotalTime, setEndTime, setStartTime
 
Methods inherited from class com.arranger.jarl.base.BaseJarlObject
getConfigElement, getJarlObjectInfo, getName, getZOrder, initDef, populateInfo, postCheckTime, preCheckTime, setZOrder
 
Methods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface com.arranger.jarl.base.ITimedJarlObject
getEndTime, getStartTime, getTotalTime, setEndTime, setStartTime
 
Methods inherited from interface com.arranger.jarl.base.IJarlObject
getConfigElement, getJarlObjectInfo, getZOrder, postCheckTime, preCheckTime, setZOrder
 
Methods inherited from interface com.arranger.jarl.widget.IWidgetDef
initDef
 

Field Detail

NUM_COLORS

protected static final int NUM_COLORS
See Also:
Constant Field Values

m_gradientIndex

protected int m_gradientIndex

m_iterations

protected int m_iterations

m_complexRect

protected ComplexRect m_complexRect

m_startGradientIndex

protected int m_startGradientIndex

m_endGradientIndex

protected int m_endGradientIndex

m_startIterations

protected int m_startIterations

m_endIterations

protected int m_endIterations

m_startComplexRect

protected ComplexRect m_startComplexRect

m_endComplexRect

protected ComplexRect m_endComplexRect
Constructor Detail

Fractal

public Fractal()
Method Detail

_paint

protected void _paint(com.arranger.jarl.base.IContext context,
                      java.awt.Graphics2D graphics2D)
Description copied from class: com.arranger.jarl.widget.BaseWidget
Called from within BaseWidget.paint(com.arranger.jarl.base.IContext, java.awt.Graphics2D)>BaseWidget.paint(com.arranger.jarl.base.IContext, java.awt.Graphics2D) 55


paintFractal

protected void paintFractal(double width,
                            double height,
                            int maxIterations,
                            ComplexRect complexRect,
                            java.awt.Graphics2D graphics2D,
                            java.awt.Color[] colors,
                            com.arranger.jarl.base.IContext context)

getColorForPoint

protected java.awt.Color getColorForPoint(double x,
                                          double y,
                                          double delta,
                                          double height,
                                          int maxIterations,
                                          ComplexRect complexRect,
                                          java.awt.Color[] colors)

testPoint

protected int testPoint(double cR,
                        double cI,
                        int maxIterations)
Is the given complex point, (cR, cI), in the Mandelbrot set? Use the formula: z <= z*z + c, where z is initially equal to c. If |z| >= 2, then the point is not in the set. Return 0 if the point is in the set; else return the number of iterations it took to decide that the point is not in the set.


prepareColorArray

protected java.awt.Color[] prepareColorArray(com.arranger.jarl.base.IContext context)
Get the gradient color map


initAttributes

protected void initAttributes(com.arranger.jarl.base.IContext context)
Description copied from class: BaseFilterWidget
Always remember some attrs might not be there

Overrides:
initAttributes in class BaseFilterWidget

addJarlObjectInfo

protected void addJarlObjectInfo(com.arranger.jarl.base.IJarlObjectInfo jarlObjectInfo)
Description copied from class: com.arranger.jarl.base.BaseJarlObject
Override this, and for every field that you're using, call BaseJarlObject.populateInfo(com.arranger.jarl.base.IJarlObjectInfo, java.lang.String, java.lang.String, com.arranger.jarl.base.IJarlObjectInfo.IJarlObjectDisplay)>BaseJarlObject.populateInfo(com.arranger.jarl.base.IJarlObjectInfo, java.lang.String, java.lang.String, com.arranger.jarl.base.IJarlObjectInfo.IJarlObjectDisplay) 55 for example: populateInfo(jarlObjectInfo, "zOrder", "Z-Order", JarlInfoUtil.PRIMITIVE_DISPLAY);


createSegment

public com.arranger.jarl.util.WidgetConfigSegment createSegment(org.w3c.dom.Element element)
Description copied from class: com.arranger.jarl.widget.BaseSegmentWidget
Create a concrete com.arranger.jarl.widget.BaseSegmentWidget.BaseWidgetConfigSegment based on this element