Class XYEncodingUtils


  • public final class XYEncodingUtils
    extends Object
    reusable cartesian geometry encoding methods
    NOTE: This API is for internal purposes only and might change in incompatible ways in the next release.
    • Method Detail

      • encode

        public static int encode​(float x)
        Quantizes double (64 bit) values into 32 bits
        Parameters:
        x - cartesian value
        Returns:
        encoded value as a 32-bit int
        Throws:
        IllegalArgumentException - if value is out of bounds
      • decode

        public static float decode​(int encoded)
        Turns quantized value from encode(float) back into a double.
        Parameters:
        encoded - encoded value: 32-bit quantized value.
        Returns:
        decoded value value.
      • decode

        public static float decode​(byte[] src,
                                   int offset)
        Turns quantized value from byte array back into a double.
        Parameters:
        src - byte array containing 4 bytes to decode at offset
        offset - offset into src to decode from.
        Returns:
        decoded value.
      • floatArrayToDoubleArray

        public static double[] floatArrayToDoubleArray​(float[] f)
        Convert an array of float numbers to double numbers.
        Parameters:
        f - The input floats
        Returns:
        Corresponding double array.