sql >> Databáze >  >> NoSQL >> MongoDB

Jak zjistit, zda v kterém polygonu existuje bod

Základní metodou (pokud máte malý počet polygonů) je uložit všechny polygony do kolekce a smyčkou přes prvky zkontrolovat, zda je bod uvnitř polygonu.

Na druhou stranu, pokud máte značné množství polygonů, doporučil bych použít datovou strukturu R-tree, která není ve standardní knihovně dostupná. Pokud chcete použít možnost R-tree, měli byste zkontrolovat tento projekt:http://sourceforge.net /projects/jsi/ .

R-tree umožňuje indexovat obdélníky (v tomto případě ohraničující rámečky polygonů). Pomocí R-stromu tedy můžete velmi rychle najít malý počet kandidátských polygonů. Poté můžete procházet seznamem kandidátů a získat konečný výsledek.



  1. mongodb:extrahujte časové razítko z ObjectID v dotazu json

  2. Jak aktualizovat jeden objekt pomocí opravy RESTHeart?

  3. jak vytvořit mongoDB objectid v Javě

  4. Duplikujte sbírku mongodb