Definição
- $box
- Especifica um retângulo para uma querygeoespacial para retornar documentos que estão dentro dos limites do retângulo, de acordo com seus dados de localização baseados em ponto. - $geoWithinQuando utilizado com o- $boxoperador, o retorna documentos- $geoWithincom base em coordenadas de planilha e não executa queries para formas GeoJSON.- Para utilizar o operador - $box, você deve especificar os cantos inferior esquerdo e superior direito do retângulo em um objeto de array:- { - <location field>: { - $geoWithin: { - $box: [ - [ <bottom left coordinates> ], - [ <upper right coordinates> ] - ] - } - } - } - Importante- Se você utilizar longitude e latitude, especifique longitude primeiro.
Comportamento
A query calcula distâncias utilizando geometria plana (planar).
Os aplicativos podem utilizar o $box sem ter um índice geoespacial. No entanto, os índices geoespaciais suportam queries muito mais rápidas do que os equivalentes não indexados.
Exemplo
A seguinte query de exemplo retorna todos os documentos que estão dentro da caixa com pontos em: [ 0 , 0 ], [ 0 , 100 ], [ 100 , 0 ] e [ 100 , 100 ].
db.places.find( {    loc: { $geoWithin: { $box:  [ [ 0, 0 ], [ 100, 100 ] ] } } } )