Google Maps Street View-palvelun kautta voi tutkia paikkoja ympäri maailmaa 360 asteen, katutason kuvien kautta. Voit tutustua maailman maamerkkeihin, katsella luontomatkailijoita, navigoida matkalla tai näyttää yrityksesi ulkopuolen.
- yleiskatsaus
- Katunäkymäpanoraamat
- pääsy katunäkymän tietoihin
- panoraaman sijainnin asettaminen
- Katunäkymäkuvien katselu
- katunäkymän lisääminen
- Swift
- Objective-C
- katsojan muokkaaminen
- Swift
- Objective-C
- katunäkymän käynnistäminen URL-järjestelmällä
- Street View locations and point-of-view (POV)
- Swift
- Objective-C
- orientaatio
- Zoom
- kameran siirtäminen
- Swift
- Objective-C
- merkit katunäkymässä
- Swift
- Objective-C
- Swift
- Objective-C
- tapahtumia
yleiskatsaus
Google Street View tarjoaa 360 asteen panoraamanäkymät nimetyiltä teiltä koko peittoalueensa läpi. SDK: n kautta saatavilla oleva kattavuus on sama kuin Google Maps for iOS-sovelluksessa taihttps://maps.google.com/
. Voit lukea lisää Street View-näkymästä ja nähdä tuetut alueet interaktiivisella kartalla osoitteessa about Street View.
iOS: n Maps SDK tarjoaa Street View-palvelun Google Mapsin katunäkymässä käytettyjen kuvien hankkimiseen ja muokkaamiseen. Street View-kuvat palautetaan panoraamoina ja niitä katsotaan Street View Viewerin sisältä-objekti, jonka tyyppi on GMSPanoramaView
.
Katunäkymäpanoraamat
jokainen Katunäkymäpanoraama on kuva tai kuvakokonaisuus, joka tarjoaa täydet 360 asteen näkymän yhdestä paikasta. Kuvat vastaavat equirectangular (levy Carrée) projektio, joka sisältää 360 astetta vaakasuora näkymä (afull wrap-around) ja 180 astetta pystysuora näkymä (suoraan ylös tostraight alas). Tuloksena oleva 360 asteen panoraama määrittelee projektion palloon, jossa kuva on kääritty kyseisen avaruuden kaksiulotteiseen pintaan.
katunäkymän panoraamat ovat katseltavissa GMSPanoramaView
objekti. Tämä objekti tarjoaa katselijan, joka tekee panoraamasta pallon, jonka keskellä on acamera. Voit ohjelmallisesti ohjata suuntaa thecamera, sekä useita ominaisuuksia muokkaamalla katsoja.
pääsy katunäkymän tietoihin
katunäkymän panoraamat tunnistaa jommastakummasta kahdesta metatiedon palasta:
panoramaID
katunäkymän Panoraman yksilöllinen tunnus. TämäpanoramaID
saattaa muuttua ajan myötä, eikä se sovellu pitkäaikaiseksi eli kovakoodatuksi viittaukseksi.panoramaID
on paras käyttää ohjelmallisesti erilaisia Katunäkymäkuvia.coordinate
kuvan tarkka sijainti ilmaistunaCLLocationCoordinate2D
. Käytäcoordinate
panoraamapaikan pysyvään tallennukseen tai käyttäjän toimien kääntämiseen kartalla Katunäkymäkuvaksi.
sekä panoramaID
että coordinate
on tallennettuGMSPanorama
objektin ominaisuuksiksi. Voit pyytää GMSPanorama
GMSPanoramaService
käyttämällä joko coordinate
tai panoramaID
. Tuloksena oleva kohde sisältää sekä metadatan palasia että joukon linkkejä läheisiin panoraamoihin.
panoraaman sijainnin asettaminen
Katunäkymäpanoraaman sijainti voidaan asettaa koordinaatin perusteella.
-
moveNearCoordinate
metodi pyytää panoraamaan lähelle koordinaattia. -
moveNearCoordinate:source
menetelmällä voi määrittää lähteen.Lähde on hyödyllinen, jos haluat rajoittaa katunäkymää vain ulkona olevien kanoraamojen etsimiseen. Oletuksena, panoraamat sijainnit ovat eitherinside tai ulkopuolella. Huomaa, että määriteltyyn sijaintiin ei välttämättä ole panoraamoja ulkona.
moveNearCoordinate:radius
menetelmä on samankaltainen, mutta sen avulla voidaan määrittää koordinaatin ympärille hakusäde metreinä.
moveNearCoordinate:radius:source
menetelmällä voidaan määrittää sekä aradius että lähde.
Katunäkymäkuvien katselu
katunäkymän lisääminen
perusvaiheet katsojan lisäämiseen ovat:
- (kerran) seuraa aloituksen vaiheita SDK: n saamiseksi,avaimen saamiseksi ja tarvittavien kehysten lisäämiseksi.
- luo tai päivitä
ViewController
. Jos panoraama näytetään, kun tämä näkymäohjain tulee näkyviin, muista luoda seloadView
– menetelmällä. - luo ja instantioi
GMSPanoramaView
Luokka käyttäenGMSPanoramaView
initWithFrame:
menetelmä. Jos Tätä käytetään theview-ohjaimen ainoana näkymänä, niinCGRectZero
voidaan käyttää kartan frame — kartan kokoa muutetaan automaattisesti. - Aseta
GMSPanoramaView
objekti näkymäohjaimen näkymäksi, esim.self.view = panoView;
. - asetti Katunäkymäkuvan sijainnin menetelmällä, kuten
moveNearCoordinate:
.
alla oleva esimerkki lisää Street View-katseluohjelman sovellukseen.
Swift
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
katsojan muokkaaminen
voit muokata katselijaa rajoittamalla, mitä eleitä on käytettävissä. Bydefault, panorointi, zoomaus ja matkustaminen viereisiin panoraamoihin ovat kaikki käytössä.Yksittäisiä eleitä ohjataan ominaisuuksien GMSPanoramaView
avulla.Nämä ominaisuudet mahdollistavat tai estävät käyttäjän ohjattavat eleet; ohjelmalliset muutokset ovat edelleen mahdollisia, kun ele on poistettu käytöstä.
orientationGestures
pystyykö käyttäjä suuntaamaan kameran uudelleen naputtamalla vai vetämällä. AsetaNO
kameran suuntamuutosten poistamiseksi käytöstä.zoomGestures
pystyykö käyttäjä nipistämään zoomaamaan. AsetaNO
poistaaksesi zoomauksen.navigationGestures
pystyykö käyttäjä muuttamaan, mikä panoraama on näkyvissä. Käyttäjät voivat käyttää navigaatiolinkkejä yhdellä napautuksella tai kaksoisnapauttaa näkymää muuttaakseen panoraamoja, jotka on asetettuNO
, poistaakseen navigointimuutokset käytöstä.
voit ottaa kaikki eleet käyttöön tai poistaa ne käytöstä kerrallasetAllGesturesEnabled:
– menetelmällä.
Swift
panoView.setAllGesturesEnabled(false)
Objective-C
;
katunäkymän käynnistäminen URL-järjestelmällä
Google Street View-kuvasto on katsottavissa Google Mapsin sisältä iosovellusta varten. Google Maps for iOS-sovelluksen voi käynnistää streetview-tilassa comgooglemaps
URL-järjestelmän asettamalla mapmode
parametri streetview
. Esimerkki URL-osoitteesta, joka käynnistää Street View-näkymän alla. Lisätietoja, Katso URL Schemedocumentation.
comgooglemaps://?center=46.414382,10.013988&mapmode=streetview
Street View locations and point-of-view (POV)
GMSPanoramaCamera
voit määrittää Katunäkymäkameran näkökulman suunnan, sävelkorkeuden ja zoomauksen yhdistelmänä.
alla olevat pätkät suuntaavat kameran etelään ja hieman alaspäin.
Swift
panoView.camera = GMSPanoramaCamera(heading: 180, pitch: -10, zoom: 1)
Objective-C
panoView.camera = ;
orientaatio
katukuvan sijainti määrittelee kameran tarkennuksen sijoittelun animagelle, mutta se ei määrittele kameran suuntausta kyseiselle kuvalle.Tätä tarkoitusta varten GMSOrientation
objekti määrittelee kaksi ominaisuutta:
-
heading
määrittelee kameran lokusasteiden kiertokulman suhteessa todelliseen pohjoiseen. Otsikoita mitataan myötäpäivään: todellinen pohjoinen on 0, itä on 90, Etelä on 180, länsi on 270. -
pitch
(default0
) määrittelee kulmavarianssin ”ylös” tai ”alas” thecameranalkuisesta oletuskorkeudesta, joka on usein (mutta ei aina) flathorizontal. (Esimerkiksi kukkulalla otetussa kuvassa on todennäköisesti adefault pitch, joka ei ole vaakasuora.) Pitch kulmat mitataan positiivisilla arvoilla ylöspäin (+90 astetta suoraan ylöspäin ja ortogonaalinen oletuskorkeudelle) ja negatiivisilla arvoilla alaspäin (-90 degreesstraight alas ja ortogonaalinen oletuskorkeudelle).
Zoom
katunäkymä tukee kuvan eritasoisia yksityiskohtia zoomauksen avulla.Voit asettaa zoomaustason ohjelmallisesti, tai käyttäjät voivat muuttaa tasoa katseluohjelmassa nipistämällä zoomaukseen.
kameran siirtäminen
kun olet luonut GMSPanoramaView
, ja siinä on joko määritetty ordefault-kamera, voit muuttaa sitä yhdellä monista tavoista. Kun muutat thecamera, sinulla on mahdollisuus animoida tuloksena kameran liikkeen. Theanimation interpoloi nykyisten kameran attribuuttien ja newcamera-attribuuttien välillä.
voit muokata GMSPanoramaCamera
objektia ja asettaa senGMSPanoramaView
’s camera
ominaisuus. Tämä napsauttaa kameran uuteen näkymäpisteeseen ilman animaatiota. GMSCameraPosition
voidaan luoda mikä tahansa suunta-ja zoomausyhdistelmä.
Swift
panoView.camera = GMSPanoramaCamera(heading: 180, pitch: -10, zoom: 1)
Objective-C
panoView.camera = ;
siirtymän voi animoida kutsumallaanimateToCamera:animationDuration:
method of GMSPanoramaView
.Lisäksi, voit ohjata kameraa Core animaatio. Tämä on madeavable Through the custom CALayer
on GMSPanoramaView
GMSPanoramaLayer
.
merkit katunäkymässä
GMSPanoramaView
objekti pystyy näyttämään karttamerkkejä. Voit käyttää nimeä GMSMarker
objekti joko a GMSMapView
tai aGMSPanoramaView
objekti asettamalla sen vastaavat ominaisuudet:
Swift
// 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;
markkerit skaalautuvat koon mukaan merkkiaineen sijainnin ja GMSCameraView
sijainnin välisen etäisyyden funktiona. Jos tämä etäisyys tulee liian suuri, merkki tulee liian pieni näyttää ja on piilossa fromview.
Aseta panoramaView
ominaisuus nil
poistamaan seGMSPanoramaView
.
Swift
marker.panoramaView = nil
Objective-C
marker.panoramaView = nil;
tapahtumia
Katunäkymäpanoraamassa voi kuunnella tapahtumia, kuten auserin naputtaessa panoramaa. Tapahtumien kuuntelua varten on toteutettavaGMSPanoramaViewDelegate
– protokolla. Katso tapahtumien yleisohje ja metodilistaGMSPanoramaViewDelegate
.