Package org.apache.lucene.geo

# Class XYEncodingUtils

java.lang.Object
org.apache.lucene.geo.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.

## Field Summary

Fields
Modifier and Type
Field
Description
`static final double`
`MAX_VAL_INCL`
`static final double`
`MIN_VAL_INCL`

## Method Summary

Modifier and Type
Method
Description
`static float`
`decode(byte[] src, int offset)`
Turns quantized value from byte array back into a double.
`static float`
`decode(int encoded)`
Turns quantized value from `encode(float)` back into a double.
`static int`
`encode(float x)`
Quantizes double (64 bit) values into 32 bits
`static double[]`
`floatArrayToDoubleArray(float[] f)`
Convert an array of `float` numbers to `double` numbers.

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

## Field Details

### MIN_VAL_INCL

public static final double MIN_VAL_INCL

See Also:
  - Constant Field Values

### MAX_VAL_INCL

public static final double MAX_VAL_INCL

See Also:
  - Constant Field Values

## Method Details

### 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.