|
Xj3D VRML/X3D Code API | ||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||||
java.lang.Objectorg.web3d.vrml.export.compressors.CompressionTools
A set of general tools for compression routines.
| Constructor Summary | |
CompressionTools()
|
|
| Method Summary | |
static int |
calcRange(boolean delta,
int span,
int[] ival)
|
static float |
calcTolerance(float[] coordinates,
float percent)
Calculate a tolerance value as a percentage of the minimum bounds. |
static void |
compressByteArrayDeltaHuffman(java.io.DataOutputStream dos,
byte[] data)
Compress a byte array. |
static void |
compressFloatArray(java.io.DataOutputStream dos,
boolean delta,
int span,
float[] fval)
Compress an array of floats. |
static void |
compressIntArrayDeltaHuffman(java.io.DataOutputStream dos,
int[] data)
Compress an integer array. |
static void |
compressShortArrayDeltaHuffman(java.io.DataOutputStream dos,
short[] data)
Compress a byte array. |
static int |
computeBits(int value)
|
static int |
convertFloatArrayToIntArray(float[] fval,
int[] vals)
Convert an array of floats into an array of integers. |
static float[] |
decompressFloatArray(java.io.InputStream dis,
boolean delta,
int span)
Decompress a stream into an array of floats. |
static int[] |
decompressIntArrayDeltaHuffman(java.io.InputStream dis)
Decompress an integer array. |
static float[] |
dequantizeFloatArray(java.io.InputStream is)
|
static float[] |
dequantizeFloatArrayHuffman(java.io.InputStream is)
|
static float[] |
dequantizeFloatArrayInflater(byte[] data,
int start,
int length)
|
static float[] |
dequantizeFloatArrayLZW(java.io.InputStream is)
|
static float[] |
dequantizeVector(java.io.InputStream is,
int exponent,
int mantissa,
boolean signed,
int len)
Dequantize a color vector. |
static void |
printStats()
|
static void |
quantizeFloatArray(java.io.DataOutputStream dos,
float[] fval,
float tolerance)
|
static void |
quantizeFloatArrayDeflater(java.io.DataOutputStream dos,
float[] fval,
float tolerance)
|
static void |
quantizeFloatArrayHuffman(java.io.DataOutputStream dos,
float[] fval,
float tolerance)
|
static void |
quantizeFloatArrayLZW(java.io.DataOutputStream dos,
float[] fval,
float tolerance)
|
static void |
quantizeVector(java.io.DataOutputStream dos,
int exponent,
int mantissa,
boolean signed,
float[] fval)
Quantize a short vector. |
static void |
rangeCompressIntArray(java.io.DataOutputStream dos,
boolean delta,
int span,
int[] ival)
Compress an array of integers by determning the number of bits needed to express the range of values. |
static int[] |
rangeDecompressIntArray(java.io.InputStream dis,
boolean delta,
int span)
Decompress an array of integers compressed by determning the number of bits needed to express the range of values. |
| Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Constructor Detail |
public CompressionTools()
| Method Detail |
public static int convertFloatArrayToIntArray(float[] fval,
int[] vals)
fval - The float datavals - The integer result. Preallocate this.
public static float calcTolerance(float[] coordinates,
float percent)
coordinates - The array of coordinates.percent - The percent of the maximum coordinate range to use as an error.
public static void quantizeFloatArray(java.io.DataOutputStream dos,
float[] fval,
float tolerance)
throws java.io.IOException
java.io.IOException
public static float[] dequantizeFloatArray(java.io.InputStream is)
throws java.io.IOException
java.io.IOException
public static void quantizeVector(java.io.DataOutputStream dos,
int exponent,
int mantissa,
boolean signed,
float[] fval)
throws java.io.IOException
dos - The output streamexponent - How many bits to store for the exponentmantissa - How many bits to store for the mantissasigned - Is the number sometimes negativefval - The vector
java.io.IOException
public static float[] dequantizeVector(java.io.InputStream is,
int exponent,
int mantissa,
boolean signed,
int len)
throws java.io.IOException
is - The input streamexponent - How many bits to store for the exponentmantissa - How many bits to store for the mantissasigned - Is the number sometimes negativelen - The length of the vector.
java.io.IOException
public static void compressFloatArray(java.io.DataOutputStream dos,
boolean delta,
int span,
float[] fval)
throws java.io.IOException
dos - The stream to write the results.delta - Whether to use delta encoding.span - The repeating frequency of data, a MFVec3f would be a span of 3.fval - The float array to compress
java.io.IOException - on an IO error
public static float[] decompressFloatArray(java.io.InputStream dis,
boolean delta,
int span)
throws java.io.IOException
dis - The stream to read.delta - Whether to use delta encoding.span - The repeating frequency of data, a MFVec3f would be a span of 3.
java.io.IOException - on an IO error
public static int calcRange(boolean delta,
int span,
int[] ival)
public static void quantizeFloatArrayHuffman(java.io.DataOutputStream dos,
float[] fval,
float tolerance)
throws java.io.IOException
java.io.IOException
public static float[] dequantizeFloatArrayHuffman(java.io.InputStream is)
throws java.io.IOException
java.io.IOException
public static void quantizeFloatArrayLZW(java.io.DataOutputStream dos,
float[] fval,
float tolerance)
throws java.io.IOException
java.io.IOException
public static void quantizeFloatArrayDeflater(java.io.DataOutputStream dos,
float[] fval,
float tolerance)
throws java.io.IOException
java.io.IOException
public static float[] dequantizeFloatArrayInflater(byte[] data,
int start,
int length)
throws java.io.IOException
java.io.IOException
public static float[] dequantizeFloatArrayLZW(java.io.InputStream is)
throws java.io.IOException
java.io.IOException
public static void compressIntArrayDeltaHuffman(java.io.DataOutputStream dos,
int[] data)
throws java.io.IOException
dos - The stream to write todata - The integer array to encode.
java.io.IOException
public static int[] decompressIntArrayDeltaHuffman(java.io.InputStream dis)
throws java.io.IOException
dis - The stream to write to
java.io.IOException
public static void compressByteArrayDeltaHuffman(java.io.DataOutputStream dos,
byte[] data)
throws java.io.IOException
dos - The stream to write todata - The integer array to encode.
java.io.IOException
public static void compressShortArrayDeltaHuffman(java.io.DataOutputStream dos,
short[] data)
throws java.io.IOException
dos - The stream to write todata - The integer array to encode.
java.io.IOException
public static void rangeCompressIntArray(java.io.DataOutputStream dos,
boolean delta,
int span,
int[] ival)
throws java.io.IOException
java.io.IOException
public static int[] rangeDecompressIntArray(java.io.InputStream dis,
boolean delta,
int span)
throws java.io.IOException
java.io.IOExceptionpublic static int computeBits(int value)
public static void printStats()
|
Xj3D VRML/X3D Code API | ||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||||