Package de.gurkenlabs.litiengine.util.io
Class Codec
java.lang.Object
de.gurkenlabs.litiengine.util.io.Codec
public final class Codec
extends java.lang.Object
Method Summary
Modifier and Type Method Description static byte[]
decode(java.lang.String base64)
Decodes the specifiedBase64
string to a byte array.static float
decodeAngle(byte encodedAngle)
Decodes a previously encoded angle.static float
decodeAngle(short encodedAngle)
static java.awt.image.BufferedImage
decodeImage(java.lang.String imageString)
static float
decodeSmallFloatingPointNumber(short encodedNumber, int precision)
Decodes a small floating point number, previously encoded withencodeSmallFloatingPointNumber
.static java.lang.String
encode(byte[] data)
static java.lang.String
encode(java.awt.image.BufferedImage image)
static java.lang.String
encode(java.awt.image.BufferedImage image, ImageFormat imageFormat)
static byte
encodeAngle(float angle)
Encodes an angle, loosing some precision.static short
encodeAnglePrecise(float angle)
static short
encodeSmallFloatingPointNumber(float smallNumber, int precision)
Encodes positive numbers less than Short.MAX_VALUE * 2 / precision (6553.4 for precision = 1).
Method Details
decodeAngle
public static float decodeAngle(byte encodedAngle)Decodes a previously encoded angle.- Parameters:
encodedAngle
- The encoded angle.- Returns:
- The decoded angle.
decodeAngle
public static float decodeAngle(short encodedAngle)decodeSmallFloatingPointNumber
public static float decodeSmallFloatingPointNumber(short encodedNumber, int precision)Decodes a small floating point number, previously encoded withencodeSmallFloatingPointNumber
.- Parameters:
encodedNumber
- The encoded numberprecision
- The precision of the encoded number. The same precision, used for encoding.- Returns:
- The decoded small floating point number.
encodeAngle
public static byte encodeAngle(float angle)Encodes an angle, loosing some precision. The encoded / decoded values can differ at max. around 1.43 degrees from the original one.- Parameters:
angle
- The angle- Returns:
- The encoded angle.
encodeAnglePrecise
public static short encodeAnglePrecise(float angle)encodeSmallFloatingPointNumber
public static short encodeSmallFloatingPointNumber(float smallNumber, int precision)Encodes positive numbers less than Short.MAX_VALUE * 2 / precision (6553.4 for precision = 1).- Parameters:
smallNumber
- The small number to encodeprecision
- The comma precision for the encoding process.- Returns:
- The encoded number.
decodeImage
public static java.awt.image.BufferedImage decodeImage(java.lang.String imageString)encode
public static java.lang.String encode(java.awt.image.BufferedImage image)encode
encode
public static java.lang.String encode(byte[] data)decode
public static byte[] decode(java.lang.String base64)Decodes the specifiedBase64
string to a byte array.- Parameters:
base64
- The Base64 string containing the encoded binary data.- Returns:
- The decoded byte array.
- See Also:
Base64