查找 bucketid 的函数encoder.getBucketIndices()
需要一个双精度或字符串输入值。
但是, 的输入值GeospatialCoordinateEncoder
是bucket[]
包含经度和纬度,以及另一个双倍速度。
我该如何解决这些问题?
这是代码:
public int[] getBucketIndices(double input) {}
public int[] getBucketIndices(String input) {}
问题是 GeospatialCoordinateEncoder 的输入值是:
int[] encoding1 = encode(ge, new double[] { -122.229194, 37.486782 }, speed);// ge is GeospatialCoordinateEncoder
public int[] encode(CoordinateEncoder encoder, double[] coordinate, double radius) {
int[] output = new int[encoder.getWidth()];// return n/** number of bits in the representation (must be >= w) */
encoder.encodeIntoArray(new Tuple(coordinate[0], coordinate[1], radius), output);
return output;//
}
获取 bucketid 函数
int bucketIdx = encoder.getBucketIndices(value)[0];