j'ai une collection avec ce genre de documents:
{
_id: ObjectId,
type: "string", // COUNTRY, STATE, CITY
geometry: {
type: "MultiPolygon",
coordinates: <coordinates>
}
}
Et je veux calculer par exemple dans lequel COUNTRY
est chaque STATE
. J'ai essayé de le faire:
var state = db.entity.findOne({_id:ObjectId("someStateID")});
db.entity.find({
geometry: {
$geoIntersects: {
$geometry: state.geometry
}
},
type:"COUNTRY"
});
Et cela fonctionne très bien, dans certains cas, excepte où la ligne de certains STATE
touche la frontière d'un voisin COUNTRY
où je suis arrivé deux ou plusieurs documents.
Est-il possible que je peux trier ce résultat en pourcentage de chevauchement? Ou tout type de filtre pour savoir lequel est le parent exact?