Example usage for org.apache.lucene.search DoubleValues DoubleValues

List of usage examples for org.apache.lucene.search DoubleValues DoubleValues

Introduction

In this page you can find the example usage for org.apache.lucene.search DoubleValues DoubleValues.

Prototype

DoubleValues

Source Link

Usage

From source file:org.apache.solr.legacy.DistanceValueSource.java

License:Apache License

/**
 * Returns the FunctionValues used by the function query.
 *//*  w  ww.j av  a 2s .co m*/
@Override
public DoubleValues getValues(LeafReaderContext readerContext, DoubleValues scores) throws IOException {

    final DoubleValues ptX = DoubleValuesSource.fromDoubleField(strategy.getFieldNameX())
            .getValues(readerContext, null);
    final DoubleValues ptY = DoubleValuesSource.fromDoubleField(strategy.getFieldNameY())
            .getValues(readerContext, null);
    final DistanceCalculator calculator = strategy.getSpatialContext().getDistCalc();

    return DoubleValues.withDefault(new DoubleValues() {

        @Override
        public double doubleValue() throws IOException {
            return calculator.distance(from, ptX.doubleValue(), ptY.doubleValue()) * multiplier;
        }

        @Override
        public boolean advanceExact(int doc) throws IOException {
            return ptX.advanceExact(doc) && ptY.advanceExact(doc);
        }
    }, nullValue);

}