Definición
$boxEspecifica un rectángulo para una consulta geoespacial que devuelve documentos dentro de los límites del rectángulo, según
$geoWithinsus datos de ubicación basados en puntos. Cuando se utiliza con el$boxoperador,$geoWithindevuelve documentos basados en coordenadas de cuadrícula y no consulta formas GeoJSON.Para utilizar el operador, debe especificar las esquinas inferior izquierda y superior derecha del rectángulo en un objeto de
$boxmatriz:{ <location field>: { $geoWithin: { $box: [ [ <bottom left coordinates> ], [ <upper right coordinates> ] ] } } } Importante
Si usa longitud y latitud, debe especificar primero la longitud.
Comportamiento
La query calcula distancias utilizando geometría plana (plana).
Applications can use $box without having a geospatial index. However, geospatial indexes support much faster queries than the unindexed equivalents.
Solo el índice geoespacial 2d $box admite.
Ejemplo
La siguiente query de ejemplo devuelve todos los documentos que se encuentran dentro de la caja que tiene puntos en: [ 0 , 0 ], [ 0 , 100 ], [ 100 , 0 ] y [ 100 , 100 ].
db.places.find( { loc: { $geoWithin: { $box: [ [ 0, 0 ], [ 100, 100 ] ] } } } )