Google Maps Street View umožňuje prozkoumat míst po celém světě through360 stupně, pouliční snímky. Můžete prozkoumat světové památky, Zobrazit přírodnízázraky, navigovat na výlet nebo ukázat vnější část vašeho podnikání.
- Přehled
- Panoramata Street View
- přístup k datům Street View
- nastavení polohy panoramatu
- Prohlížení snímků Street View
- Přidat Street View viewer
- Rychlé
- Objective-C
- Přizpůsobení prohlížeč
- Rychlé
- Objective-C
- Spuštění Street View s URL Schéma
- Street View místa a point-of-view (POV)
- Rychlé
- Objective-C
- Orientace
- Zoom
- přesunutí kamery
- Rychlé
- Objective-C
- markery v Street View
- Rychlé
- Objective-C
- Rychlé
- Objective-C
- Akce
Přehled
Google Street View nabízí panoramatický 360 ° výhled z určených roadsthroughout své oblasti pokrytí. Pokrytí dostupné prostřednictvím sady SDK jestejný jako pro aplikaci Mapy Google pro iOS nebohttps://maps.google.com/
. Můžete si přečíst více aboutStreet View a vidět podporované oblasti na interaktivní mapě, atAbout Street View.
Maps SDK pro iOS poskytuje službu Street View pro získání andmanipulaci snímků používaných v Google Maps Street View. Street View obrázky jsou vráceny jako panoramata a jsou prohlíženy z prohlížeče Street View-objekt typu GMSPanoramaView
.
Panoramata Street View
každé Panorama Street View je obrázek nebo sada obrázků, která poskytuje full360 stupňový pohled z jednoho místa. Obrázky odpovídají equirectangular(Deska Carré) projekce, která obsahuje 360 stupňů horizontální pohled (na plný wrap-around) a 180 stupňů z vertikálního pohledu (z přímo tostraight dolů). Výsledné 360 stupňové panorama definuje projekcena kouli s obrazem zabaleným do dvourozměrného povrchu sféry.
panoramata Street View lze zobrazit pomocí objektu GMSPanoramaView
. Thisobject poskytuje diváka, který bude vykreslit panorama jako koule, s acamera v jeho středu. Můžete programově řídit orientacifotoaparát, stejně jako několik vlastností přizpůsobujících prohlížeč.
přístup k datům Street View
Panoramata Street View jsou identifikována jedním ze dvou metadat:
panoramaID
jedinečné ID panoramatu Street View. TentopanoramaID
se může časem měnit a není vhodný jako dlouhodobý nebo pevně zakódovaný odkaz.panoramaID
se nejlépe používá k zajištění programového přístupu k různým obrázkům Street View.coordinate
přesné umístění tohoto obrázku, vyjádřené jakoCLLocationCoordinate2D
. Použijtecoordinate
pro trvalé ukládání panoramatického umístění nebo pro překlad uživatelských akcí na mapě do obrazu Street View.
i panoramaID
coordinate
jsou uloženy jako vlastnostiGMSPanorama
objekt. Můžete požádat o GMSPanorama
GMSPanoramaService
pomocí coordinate
nebo panoramaID
. Objekt bude obsahovat jak metadata, tak pole odkazů na okolní panoramata.
nastavení polohy panoramatu
umístění panoramatu Street View lze nastavit na základě koordinátu.
-
metoda
moveNearCoordinate
požaduje panorama poblíž koordinátu. -
metoda
moveNearCoordinate:radius
je podobná, ale umožňuje zadat poloměr vyhledávání v metrech kolem souřadnice. -
metoda
moveNearCoordinate:source
umožňuje zadat zdroj.Zdroj je užitečný, pokud chcete omezit Street View pouze hledatpanoramata, která jsou venku. Ve výchozím nastavení jsou také panoramata místuvnitř nebo venku. Všimněte si, že venkovní panoramata nemusí existovaturčené umístění. -
metoda
moveNearCoordinate:radius:source
umožňuje zadat aradius i zdroj.
Prohlížení snímků Street View
Přidat Street View viewer
základní kroky pro přidání viewer jsou:
- (Jednou), Postupujte podle kroků v začátcích získat SDK,získat klíč a přidat požadované rámců.
- Vytvořte nebo aktualizujte
ViewController
. Pokud se panorama zobrazí, kdyžtento řadič zobrazení bude viditelný, nezapomeňte jej vytvořit pomocí metodyloadView
. - Vytvořte a vytvořte
GMSPanoramaView
třídu pomocí metodyGMSPanoramaView
initWithFrame:
. Pokud má být použit jako jediný pohled řadiče, pakCGRectZero
může být použit jako snímek mapy-Mapa bude automaticky změněna. - Nastavte objekt
GMSPanoramaView
jako pohled řadiče zobrazení, např.self.view = panoView;
. - Nastavte umístění obrazu Street View pomocí metody, jako je
moveNearCoordinate:
.
níže uvedený příklad přidá prohlížeč Street View do aplikace.
Rychlé
import GoogleMapsclass StreetView: UIViewController { override func loadView() { let panoView = GMSPanoramaView(frame: .zero) self.view = panoView panoView.moveNearCoordinate(CLLocationCoordinate2D(latitude: -33.732, longitude: 150.312)) }}
Objective-C
#import "StreetView.h"@import GoogleMaps;@interface StreetView ()@end@implementation StreetView- (void)loadView { GMSPanoramaView *panoView = initWithFrame:CGRectZero]; self.view = panoView; ;}@end
Přizpůsobení prohlížeč
můžete přizpůsobit prohlížeč omezením, která gesta jsou k dispozici. Bydefault, posouvání, zoomování a cestování do sousedních panoramat jsou povoleny.Jednotlivá gesta jsou ovládána pomocí vlastností GMSPanoramaView
.Tyto vlastnosti povolit nebo zakázat uživatelem kontrolovaná gesta; programmaticchanges jsou stále možné, když gesto je zakázáno.
orientationGestures
zda bude uživatel schopen znovu orientovat kameru klepnutím nebo přetažením. NastavteNO
Chcete-li zakázat změny orientace kamery.zoomGestures
zda se uživatel bude moci přiblížit. Nastavte naNO
pro vypnutí zoomu.navigationGestures
zda uživatel bude moci změnit, které panorama je viditelné. Uživatelé mohou pomocí jediného klepnutí na navigační odkazy nebo dvojitým klepnutím na zobrazení změnit panoramata nastavená naNO
zakázat změny navigace.
pomocí metodysetAllGesturesEnabled:
můžete povolit nebo zakázat všechna gesta najednou.
Rychlé
panoView.setAllGesturesEnabled(false)
Objective-C
;
Spuštění Street View s URL Schéma
Google Street View je viditelná v rámci Google Maps pro iOSapplication. Můžete spustit Mapy Google pro iOS aplikace v režimu streetview s comgooglemaps
URL Schéma nastavením mapmode
parametr streetview
. Příklad adresy URL, která spustí Street Viewse objeví níže. Další informace naleznete v URL Schemedocumentation.
comgooglemaps://?center=46.414382,10.013988&mapmode=streetview
Street View místa a point-of-view (POV)
GMSPanoramaCamera
umožňuje nastavit point-of-view Ulice Viewcamera jako kombinaci čísla, pitch a zoom.
níže uvedené sady úryvků orientují kameru na jih a mírně dolů.
Rychlé
panoView.camera = GMSPanoramaCamera(heading: 180, pitch: -10, zoom: 1)
Objective-C
panoView.camera = ;
Orientace
Street View poloha definuje umístění zaostření kamery pro animage, ale to není definovat orientaci fotoaparátu pro daný snímek.Za tímto účelem, GMSOrientation
objekt definuje dvě vlastnosti:
-
heading
určuje úhel otočení kolem kamery locusin stupňů relativní od skutečného severu. Nadpisy se měří ve směru hodinových ručiček: skutečný sever je 0, východ je 90, jih je 180, západ je 270. -
pitch
(výchozí0
) definuje úhel rozptylu „nahoru“ nebo „dolů“ z thecamera je výchozí hřiště, které je často (ale ne vždy) flathorizontal. (Například snímek pořízený na kopci bude pravděpodobně vykazovat výšku hřiště, která není vodorovná.) Rozteč úhly jsou měřeny withpositive hodnoty při pohledu nahoru (do +90 stupňů rovné a kolmé k výchozí hřiště) a záporné hodnoty pohledu dolů (do -90 degreesstraight dolů a kolmé k výchozí hřiště).
Zoom
Street View podporuje různé úrovně detailů obrazu pomocí zoomu.Můžete nastavit úroveň zoomu programově, nebo uživatelé mohou změnit úroveň inthe diváka štípnutím pro zvětšení.
přesunutí kamery
jakmile vytvoříte GMSPanoramaView
a má buď nakonfigurovanou kameru ordefault, můžete ji změnit jedním z několika způsobů. Když měnítefotoaparát, máte možnost animovat výsledný pohyb kamery. Theanimation interpoluje mezi aktuálními atributy kamery a atributy newcamera.
můžete upravit objekt GMSPanoramaCamera
a nastavit jej na vlastnostGMSPanoramaView
‚s camera
. Tím se fotoaparát dostane do nového zorného pole bez animace. GMSCameraPosition
může být vytvořen pro konfiguraci libovolné kombinace orientace a zoomu.
Rychlé
panoView.camera = GMSPanoramaCamera(heading: 180, pitch: -10, zoom: 1)
Objective-C
panoView.camera = ;
můžete animovat přechod volánímanimateToCamera:animationDuration:
metoda GMSPanoramaView
.Kromě toho můžete ovládat fotoaparát pomocí základní animace. To je k dispozici prostřednictvím vlastní CALayer
GMSPanoramaView
GMSPanoramaLayer
.
markery v Street View
objekt GMSPanoramaView
je schopen zobrazit mapové značky. Můžete použít stejné GMSMarker
objekt na GMSMapView
neboGMSPanoramaView
objekt nastavením odpovídající vlastnosti:
Rychlé
// Create a marker at the Eiffel Towerlet position = CLLocationCoordinate2D(latitude: 48.858, longitude: 2.294)let marker = GMSMarker(position: position)// Add the marker to a GMSPanoramaView object named panoViewmarker.panoramaView = panoView// Add the marker to a GMSMapView object named mapViewmarker.map = mapView
Objective-C
// Create a marker at the Eiffel TowerCLLocationCoordinate2D position = CLLocationCoordinate2DMake(48.858,2.294);GMSMarker *marker = ;// Add the marker to a GMSPanoramaView object named panoViewmarker.panoramaView = panoView;// Add the marker to a GMSMapView object named mapViewmarker.map = mapView;
Značky bude měřítko ve velikosti jako funkce vzdálenosti mezi značky’sposition a GMSCameraView
‚s místo. Pokud se tato vzdálenost stane příliš velkou, značka bude příliš malá na zobrazení a bude skrytázobrazení.
Nastavte panoramaView
vlastnost nil
odstranitGMSPanoramaView
.
Rychlé
marker.panoramaView = nil
Objective-C
marker.panoramaView = nil;
Akce
můžete poslouchat události, které se vyskytují na Street View panorama, jako když uživatel poklepe na panorama. Chcete-li poslouchat události, musíte implementovat protokolGMSPanoramaViewDelegate
. Viz celkový průvodce událostmi a seznam metod naGMSPanoramaViewDelegate
.