sql >> Database >  >> NoSQL >> MongoDB

Hoe te vinden of een punt bestaat in welke polygoon

De basismethode (als je een klein aantal polygonen hebt) is om alle polygonen in een verzameling op te slaan en over de elementen te lopen om te controleren of een punt binnen een polygoon ligt.

Aan de andere kant, als je een aanzienlijk aantal polygonen hebt, zou ik aanraden om een ​​R-tree datastructuur te gebruiken, die niet beschikbaar is in de standaardbibliotheek. U moet dit project aanvinken als u de R-tree-optie wilt gebruiken:http://sourceforge.net /projects/jsi/ .

Met R-tree kunt u rechthoeken indexeren (in dit geval de begrenzingsvakken van de polygonen). Je kunt dus heel snel een klein aantal kandidaat-polygonen vinden met R-tree. Vervolgens kunt u de kandidatenlijst doorlopen om het eindresultaat te krijgen.



  1. MongoDB Embedded Objects hebben geen ID (null-waarde)

  2. MongoDb Distinct met query C#-stuurprogramma

  3. Sidekiq werkomstandigheden

  4. MongoDB - $text operator zoeken naar woordgroep OF woord(en)