Vraag Real-time vector-gebaseerde OSM-renderer in iOS (met behulp van OpenGL ES)


Ik ben op zoek naar een oplossing die het mogelijk maakt OpenStreetMap-gegevens te gebruiken om een ​​2D top-view vector-gebaseerde kaart weer te geven in iOS, in plaats van vooraf gemaakte tegels van een server te gebruiken. Vergelijkbaar met Apple en Google Maps in iOS6 +.

Ik heb uitgebreid onderzoek gedaan naar deze kwestie, maar ik heb niet al te veel informatie gevonden.
Er zijn een aantal iOS-apps die dit doen, maar geen informatie over hoe ze het implementeren. Een paar van deze apps zijn:

De eerste 2 apps werken op dezelfde manier als Apple en Google Maps. De kaart wordt in realtime getekend telkens wanneer de zoomfactor verandert.
De laatste lijkt een iets andere benadering te gebruiken. Het rendert de vectorgegevens op specifieke zoomniveaus en maakt tegels die vervolgens worden gebruikt als normale tegels die zijn gedownload van een tegenserver. De rendering-engine kan dus eigenlijk een tegelbron zijn voor de Route-Me-bibliotheek, maar in plaats van de tegels te downloaden, worden ze meteen weergegeven.

De eerste methode heeft de voorkeur.

[Q] Ik denk dat je vrij eenvoudig tussen de methoden kunt schakelen als de OpenGL ES-renderer eenmaal op zijn plaats zit. Ik bedoel, je zou de renderer kunnen gebruiken als een bron voor Route-Me om tegels te maken, of je zou het als een real-time lade kunnen gebruiken, vergelijkbaar met een spel. Heb ik gelijk?

De dichtstbijzijnde oplossing die ik heb gevonden is OpenStreetPad. Het maakt echter gebruik van Core Graphics in plaats van OpenGL ES, dus de rendering is geen hardwareversnelling.

Mapbox verklaarde dat ze bezig zijn met vectortegels en ze zullen waarschijnlijk een iOS-oplossing voor rendering leveren, maar het kan Mapnik gebruiken, dus ik weet niet zeker hoe efficiënt dat zal zijn. En sinds midden 2013 is er geen ETA.

[Q] Kent u andere bibliotheken, artikelen, handleidingen, voorbeelden of enige andere nuttige informatie over hoe u dit kunt aanpakken? In principe hoe om te gaan met de OSM-gegevens en hoe OpenGL ES / GLKit daadwerkelijk te gebruiken om die gegevens op het apparaat te tekenen. Misschien kunnen sommige mensen die het gedaan hebben een paar dingen delen?


20
2018-04-30 16:16


oorsprong


antwoorden:


Oude vraag, maar er is een nieuw antwoord. WhirlyGlobe-Maply zal tegelgebaseerde vectorkaarten weergeven op iOS. http://mousebirdconsulting.blogspot.com/2014/03/vector-maps-introduction.html


4
2018-03-23 20:56



De technologie waarmee ForeverMap 2 van skimmer werd aangedreven en hun huidige GPS Nav & Maps-app is nu beschikbaar voor betalen per gebruik. Zie hun ontwikkelaar platform. Notitie: ze hebben ook een gratis laag die kan worden gebruikt om kleine apps te ontwikkelen / lanceren.

Ze geven de kaart weer met OpenGL en "vectordatategels". Deze vectordatategels bevatten informatie met betrekking tot de weggeometrie (dus u kunt routeren), POI-gegevens en andere kaartfuncties. (bijvoorbeeld grensgrenzen).


2
2017-08-22 14:22



Er is een lijst met Op OSM gebaseerde applicaties voor iOS. Het bevat ook enkele open source-projecten, bijvoorbeeld navit. Navit lijkt de kaart weer te geven met behulp van SDL / OpenGL. Zie de Navit iOS-wiki-paginavoor meer informatie.


1
2018-05-08 12:20