È possibile verificare se una parte di GMSPath si trova in una regione visibile?Google Maps iOS SDK verifica se il percorso è nell'area visibile
risposta
utilizzano il metodo della mapview pointForCoordinate
per vedere se un determinato punto del percorso sarà sullo schermo
for (int i = 0; i < path.count; i++) {
CLLocationCoordinate2D coordinate=[path coordinateAtIndex:i];
CGPoint markerPoint = [mapView_.projection pointForCoordinate:coordinate];
if (markerPoint.x >= 0 && markerPoint.y >= 0 && markerPoint.x <= mapView_.frame.size.width && markerPoint.y <= mapView_.frame.size.height) {
NSLog(@"Visible");
}
}
Il percorso è costituito da coordinate. E il mapview ha una Regione visibile. Si può facilmente controllare se una coordinata è in una regione eithout andando anche a pixelspace:
- (void)checkPath:(GMSPath*)path {
GMSVisibleRegion visibleRegion = _googleMap.projection.visibleRegion;
GMSCoordinateBounds *bounds = [[GMSCoordinateBounds alloc] initWithRegion: visibleRegion];
for(int i = 0; i < path.count; i++) {
CLLocationCoordinate2D coordinate=[path coordinateAtIndex:i];
if([bounds containsCoordinate:coordinate]) {
NSLog("Visible");
}
}
}
Grazie per la risposta .. –
Dipende da come precisa è necessario che sia.
Daij-Djan's answer utilizza un riquadro di delimitazione allineato all'asse della regione visibile, che sarà più grande della regione effettiva se la vista viene ruotata/inclinata.
Sunny Shah's answer sarà più preciso poiché si adatta esattamente alla regione visibile della vista. Tuttavia sarà probabilmente più lento in quanto deve proiettare ogni punto in coordinate dello schermo.
Entrambe queste risposte controllano solo se un punto del percorso si trova all'interno della regione visibile. Se si ha una linea nel percorso che attraversa la regione visibile ma i due vertici sono al di fuori della regione visibile, entrambe le risposte segnaleranno il percorso come invisibile. Per risolvere questo problema è necessario un test di collisione line-vs-box.
- 1. Verifica se l'app Google Maps è installata su iOS 6
- 2. Modalità notte SDK iOS di Google Maps
- 3. iOS google maps posizionamento sdk GMSMarker
- 4. Determinare se un indicatore è visibile in Google Maps
- 5. Android: Verifica se un frammento è visibile
- 6. Verifica se div è visibile nella finestra?
- 7. Indicatore trascinabile con Google Maps SDK per iOS
- 8. Google Maps iOS SDK incidente occasionale quando si distrugge GMSMapView
- 9. SDK iOS di Google Maps - Ricerca di posti
- 10. Scorrimento uniforme su Google Maps SDK per iOS
- 11. Google Maps iOS SDK Integrazione non caricamento mappe
- 12. Come tracciare la posizione di un utente e visualizzare il percorso percorso utilizzando Google Maps ios SDK
- 13. Cambia zoom videocamera basato su Radius Google Maps iOS SDK
- 14. iOS 8 Google Maps SDK myLocation icon bubble glitch grafico
- 15. Punto posizione su Google Maps iOS SDK visualizzato come quadrato
- 16. Mappa Blocca su iOS 7 con Google Maps 1.4 SDK
- 17. SDK iOS di Google Maps - Aggiungi UIView/UIButton su GMSMapView
- 18. SDK iOS di Google Maps, Impossibile ascoltare GMSMarker tocca l'evento
- 19. Verifica se sei loggato su ios facebook sdk 3.0
- 20. Google Maps non mostrando percorso
- 21. Google map SDK - Percorso non accurato
- 22. Verifica se il percorso è una directory in Swift2?
- 23. Node.js verifica se il percorso è file o directory
- 24. Verifica se un elemento è visibile con XCode 7 UITest
- 25. Google Maps SDK per iOS: come ottenere precise coordinate di latitudine e longitudine dalla Visione visibile di una telecamera?
- 26. Verifica se un elemento è realmente visibile all'utente
- 27. iOS Sdk Google Chromecast Sottotitoli
- 28. Il sdk di google maps per iOS consente la memorizzazione nella cache per l'utilizzo offline?
- 29. Sfarfallio di Google Maps in iOS
- 30. Errore "impossibile creare il framebuffer completo" utilizzando google maps sdk per ios
Grazie .. Lo testerò presto –