UNPKG

747 BJavaScriptView Raw
1
2// Reverse GeoCoding geohash_cell Query
3
4var baseQuery = require('./reverse_geo_base');
5
6module.exports = function( centroid, opts ){
7
8 if( !opts ){ opts = {}; }
9
10 var options = {
11 distance: opts.distance || '50km',
12 size: opts.size || 1,
13 field: opts.field || 'center_point'
14 }
15
16 var query = baseQuery( centroid, options );
17
18 var filter = {
19 'geohash_cell': {
20 'precision': 12, // @note: setting this higher than 5 causes loads of misses!?
21 // ...and setting it around 5 is very very slow.
22 'neighbors': true
23 }
24 };
25
26 filter.geohash_cell[ options.field ] = centroid;
27
28 // Add geohash_cell specific filter conditions
29 query.query.filtered.filter.bool.must.push( filter );
30
31 return query;
32}
\No newline at end of file