Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.
$geometry
L'$geometryopérateur dans Amazon DocumentDB est utilisé pour spécifier un objet de géométrie GeoJSON dans le cadre d'une requête géospatiale. Cet opérateur est utilisé conjointement avec d'autres opérateurs de requêtes géospatiales tels que $geoWithin et $geoIntersects pour effectuer des requêtes spatiales sur vos données.
Dans Amazon DocumentDB, l'$geometryopérateur prend en charge les types de géométrie GeoJSON suivants :
-
Point
-
LineString
-
Polygone
-
MultiPoint
-
MultiLineString
-
MultiPolygon
-
GeometryCollection
Paramètres
-
type: le type de l'objet de géométrie GeoJSON, par exemple,PointPolygon, etc. -
coordinates: tableau de coordonnées représentant la géométrie. La structure du tableau de coordonnées dépend du type de géométrie.
Exemple (MongoDB Shell)
L'exemple suivant montre comment utiliser l'$geometryopérateur pour exécuter une $geoIntersects requête dans Amazon DocumentDB.
Création d'exemples de documents
db.locations.insertMany([ { "_id": 1, "name": "Location 1", "location": { "type": "Point", "coordinates": [-73.983253, 40.753941] } }, { "_id": 2, "name": "Location 2", "location": { "type": "Polygon", "coordinates": [[ [-73.998427, 40.730309], [-73.954348, 40.730309], [-73.954348, 40.780816], [-73.998427, 40.780816], [-73.998427, 40.730309] ]] } } ]);
Exemple de requête
db.locations.find({ "location": { "$geoIntersects": { "$geometry": { "type": "Polygon", "coordinates": [[ [-73.998, 40.730], [-73.954, 40.730], [-73.954, 40.781], [-73.998, 40.781], [-73.998, 40.730] ]] } } } })
Sortie
[
{
"_id": 2,
"name": "Location 2",
"location": {
"type": "Polygon",
"coordinates": [
[
[-73.998427, 40.730309],
[-73.954348, 40.730309],
[-73.954348, 40.780816],
[-73.998427, 40.780816],
[-73.998427, 40.730309]
]
]
}
}
]
Exemples de code
Pour afficher un exemple de code relatif à l'utilisation de la $geometry commande, choisissez l'onglet correspondant à la langue que vous souhaitez utiliser :