Maybaygiare.org

Blog Network

Street View

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

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:

panoramaIDkatunäkymän Panoraman yksilöllinen tunnus. TämäpanoramaIDsaattaa muuttua ajan myötä, eikä se sovellu pitkäaikaiseksi eli kovakoodatuksi viittaukseksi.panoramaIDon paras käyttää ohjelmallisesti erilaisia Katunäkymäkuvia.coordinatekuvan tarkka sijainti ilmaistunaCLLocationCoordinate2D. Käytäcoordinatepanoraamapaikan 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ää GMSPanoramaGMSPanoramaService 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:radiusmenetelmä on samankaltainen, mutta sen avulla voidaan määrittää koordinaatin ympärille hakusäde metreinä.

  • 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:sourcemenetelmällä voidaan määrittää sekä aradius että lähde.

Katunäkymäkuvien katselu

katunäkymän lisääminen

perusvaiheet katsojan lisäämiseen ovat:

  1. (kerran) seuraa aloituksen vaiheita SDK: n saamiseksi,avaimen saamiseksi ja tarvittavien kehysten lisäämiseksi.
  2. luo tai päivitä ViewController. Jos panoraama näytetään, kun tämä näkymäohjain tulee näkyviin, muista luoda se loadView – menetelmällä.
  3. luo ja instantioi GMSPanoramaView Luokka käyttäenGMSPanoramaViewinitWithFrame: menetelmä. Jos Tätä käytetään theview-ohjaimen ainoana näkymänä, niin CGRectZero voidaan käyttää kartan frame — kartan kokoa muutetaan automaattisesti.
  4. Aseta GMSPanoramaView objekti näkymäohjaimen näkymäksi, esim.self.view = panoView;.
  5. asetti Katunäkymäkuvan sijainnin menetelmällä, kutenmoveNearCoordinate:.

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 GMSPanoramaViewavulla.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ä.

orientationGesturespystyykö käyttäjä suuntaamaan kameran uudelleen naputtamalla vai vetämällä. AsetaNOkameran suuntamuutosten poistamiseksi käytöstä.zoomGesturespystyykö käyttäjä nipistämään zoomaamaan. AsetaNOpoistaaksesi zoomauksen.navigationGesturespystyykö 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 mapmodeparametri 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 (default 0) 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 GMSPanoramaViewGMSPanoramaLayer.

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 GMSCameraViewsijainnin 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.

Vastaa

Sähköpostiosoitettasi ei julkaista.