This version of the documentation is archived and no longer supported.



New in version 2.4.

Changed in version 3.0: Add support to specify single-ringed GeoJSON polygons with areas greater than a single hemisphere.

The $geometry operator specifies a GeoJSON geometry for use with the following geospatial query operators: $geoWithin, $geoIntersects, $near, and $nearSphere. $geometry uses EPSG:4326 as the default coordinate reference system (CRS).

To specify GeoJSON objects with the default CRS, use the following prototype for $geometry:

$geometry: {
   type: "<GeoJSON object type>",
   coordinates: [ <coordinates> ]

New in version 3.0: To specify a single-ringed GeoJSON polygon with a custom MongoDB CRS, use the following prototype (available only for $geoWithin and $geoIntersects):

$geometry: {
   type: "Polygon",
   coordinates: [ <coordinates> ],
   crs: {
      type: "name",
      properties: { name: "urn:x-mongodb:crs:strictwinding:EPSG:4326" }

The custom MongoDB coordinate reference system has a strict counter-clockwise winding order.


If you use longitude and latitude, specify coordinates in order of: longitude, latitude.

←   $nearSphere $minDistance  →