ij.process
Class FloodFiller

java.lang.Object
  extended by ij.process.FloodFiller

public class FloodFiller
extends java.lang.Object

This class, which does flood filling, is used by the floodFill() macro function and by the particle analyzer The Wikipedia at "http://en.wikipedia.org/wiki/Flood_fill" has a good description of the algorithm used here as well as examples in C and Java.


Field Summary
(package private)  int count
           
(package private)  ImageProcessor ip
           
(package private)  boolean isFloat
           
(package private)  int max
           
(package private)  int maxStackSize
           
(package private)  int stackSize
           
(package private)  int[] xstack
           
(package private)  int[] ystack
           
 
Constructor Summary
FloodFiller(ImageProcessor ip)
           
 
Method Summary
 boolean fill(int x, int y)
          Does a 4-connected flood fill.
 boolean fill8(int x, int y)
          Does a 8-connected flood fill.
(package private)  void fillLine(ImageProcessor ip, int x1, int x2, int y)
           
(package private)  boolean inParticle(int x, int y, double level1, double level2)
           
 void particleAnalyzerFill(int x, int y, double level1, double level2, ImageProcessor mask, java.awt.Rectangle bounds)
          This method is used by the particle analyzer to remove interior holes from particle masks.
(package private)  int popx()
           
(package private)  int popy()
           
(package private)  void push(int x, int y)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

maxStackSize

int maxStackSize

xstack

int[] xstack

ystack

int[] ystack

stackSize

int stackSize

ip

ImageProcessor ip

max

int max

isFloat

boolean isFloat

count

int count
Constructor Detail

FloodFiller

public FloodFiller(ImageProcessor ip)
Method Detail

fill

public boolean fill(int x,
                    int y)
Does a 4-connected flood fill.


fill8

public boolean fill8(int x,
                     int y)
Does a 8-connected flood fill.


particleAnalyzerFill

public void particleAnalyzerFill(int x,
                                 int y,
                                 double level1,
                                 double level2,
                                 ImageProcessor mask,
                                 java.awt.Rectangle bounds)
This method is used by the particle analyzer to remove interior holes from particle masks.


inParticle

final boolean inParticle(int x,
                         int y,
                         double level1,
                         double level2)

push

final void push(int x,
                int y)

popx

final int popx()

popy

final int popy()

fillLine

final void fillLine(ImageProcessor ip,
                    int x1,
                    int x2,
                    int y)