Package com.jhlabs.image
Class OctTreeQuantizer
- java.lang.Object
-
- com.jhlabs.image.OctTreeQuantizer
-
- All Implemented Interfaces:
Quantizer
public class OctTreeQuantizer extends java.lang.Object implements Quantizer
An image Quantizer based on the Octree algorithm. This is a very basic implementation at present and could be much improved by picking the nodes to reduce more carefully (i.e. not completely at random) when I get the time.
-
-
Constructor Summary
Constructors Constructor Description OctTreeQuantizer()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
addPixels(int[] pixels, int offset, int count)
Add pixels to the quantizer.int[]
buildColorTable()
Build the color table.void
buildColorTable(int[] inPixels, int[] table)
A quick way to use the quantizer.int
getIndexForColor(int rgb)
Get the color table index for a color.void
setup(int numColors)
Initialize the quantizer.
-
-
-
Method Detail
-
setup
public void setup(int numColors)
Initialize the quantizer. This should be called before adding any pixels.
-
addPixels
public void addPixels(int[] pixels, int offset, int count)
Add pixels to the quantizer.
-
getIndexForColor
public int getIndexForColor(int rgb)
Get the color table index for a color.- Specified by:
getIndexForColor
in interfaceQuantizer
- Parameters:
rgb
- the color- Returns:
- the index
-
buildColorTable
public int[] buildColorTable()
Build the color table.- Specified by:
buildColorTable
in interfaceQuantizer
- Returns:
- the color table
-
buildColorTable
public void buildColorTable(int[] inPixels, int[] table)
A quick way to use the quantizer. Just create a table the right size and pass in the pixels.- Parameters:
inPixels
- the input colorstable
- the output color table
-
-