Maybaygiare.org

Blog Network

Street View

met Google Maps Street View kunt u plaatsen over de hele wereld verkennen via 360graden street-level afbeeldingen. U kunt bezienswaardigheden in de wereld verkennen, naturalwonders bekijken, een reis navigeren of de buitenkant van uw bedrijf laten zien.

overzicht

Google Street View biedt panoramische 360-graden weergaven vanaf aangewezen wegen door het hele dekkingsgebied. De dekking die beschikbaar is via de SDK is dezelfde als die voor de Google Maps for iOS app ofhttps://maps.google.com/. U kunt meer lezen over Street View en de ondersteunde gebieden bekijken op een interactieve kaart, atAbout Street View.

De Maps-SDK voor iOS biedt een Street View-service voor het verkrijgen en beheren van de afbeeldingen die worden gebruikt in Google Maps Street View. Street View-afbeeldingen worden geretourneerd als panorama ‘ s en worden bekeken vanuit de Street View— viewer-Een object van het type GMSPanoramaView.

Street View panorama ‘ s

elk Street View panorama is een afbeelding, of verzameling afbeeldingen, die een volledige 360-graden weergave biedt vanaf een enkele locatie. Beelden komen overeen met de equirectangular(Plate Carrée) projectie, die 360 graden horizontaal zicht (een volledige wrap-around) en 180 graden verticaal zicht (van recht omhoog tot licht omlaag) bevat. Het resulterende 360 graden panorama definieert een projectie op een bol met het beeld gewikkeld aan het tweedimensionale oppervlak van die bol.

Street View panorama ‘ s zijn zichtbaar met het GMSPanoramaView object. Ditobject biedt een kijker die het panorama zal weergeven als een bol, met acamera in het midden. U kunt de oriëntatie van de camera programmatisch regelen, evenals verschillende eigenschappen die de kijker aanpassen.

toegang tot Street View-gegevens

Street View-panorama ‘ s worden geïdentificeerd door een van de twee stukken metagegevens:

panoramaIDde unieke ID van een Street View-panorama. DezepanoramaIDkan in de loop van de tijd veranderen en is niet geschikt als langetermijnreferentie of als harde-gecodeerde referentie. DepanoramaIDkan het beste worden gebruikt om programmatische toegang te bieden tot verschillende Street View-afbeeldingen.coordinateDe precieze locatie van deze afbeelding, uitgedrukt als eenCLLocationCoordinate2D. Gebruik eencoordinatevoor permanente opslag van een panoramalocatie, of om acties van gebruikers op de kaart te vertalen naar een Street View-afbeelding.

zowel het panoramaID als het coordinate worden opgeslagen als eigenschappen van hetGMSPanorama object. U kunt een GMSPanorama opvragen van deGMSPanoramaService met behulp van de coordinate of panoramaID. Het resultaat object zal zowel stukken metagegevens bevatten, als een array van links naar nabijgelegen panorama ‘ s.

de locatie van het panorama instellen

de locatie van het Street View panorama kan worden ingesteld op basis van de coördinatie.

  • demoveNearCoordinate methode vraagt om een panorama in de buurt van de coördinatie.

  • demoveNearCoordinate:radius methode is vergelijkbaar, maar staat u toe om een zoekstraal, in meters, rond de coördinaat op te geven.

  • met de moveNearCoordinate:source methode kunt u een bron opgeven.Een bron is handig als U Street View wilt beperken tot alleen zoeken naarpanorama ‘ s die buiten zijn. Standaard zijn panorama ‘ s van locaties zowel binnen als buiten. Merk op dat buitenpanorama ‘ s mogelijk niet bestaan voor de gespecificeerde locatie.

  • met de moveNearCoordinate:radius:source methode kunt u zowel aradius als een bron specificeren.

Street View-afbeeldingen bekijken

een Street View-viewer toevoegen

de basisstappen voor het toevoegen van een viewer zijn:

  1. (eenmaal) Volg de stappen om aan de slag te gaan om de SDK te verkrijgen,een sleutel te verkrijgen en de vereiste frameworks toe te voegen.
  2. maak of update een ViewController. Als het panorama wordt weergegeven wanneer deze weergavecontroller zichtbaar wordt, zorg er dan voor dat het wordt aangemaakt met de loadView methode.
  3. maak en instanteer eenGMSPanoramaView klasse met behulp van deGMSPanoramaViewinitWithFrame: methode. Als dit als enige weergave van de weergavecontroller gebruikt moet worden, dan kan CGRectZero gebruikt worden als kaartframe — de kaart wordt automatisch aangepast.
  4. Stel het GMSPanoramaView object in als de weergave van de controller, bijv.self.view = panoView;.
  5. Stel de locatie van de Street View-afbeelding in met behulp van een methode zoalsmoveNearCoordinate:.

het onderstaande voorbeeld voegt een Street View viewer toe aan een app.

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 

de viewer aanpassen

u kunt de viewer aanpassen door de beschikbare bewegingen te beperken. Bydefault, pannen, zoomen en reizen naar aangrenzende panorama ‘ s zijn allemaal ingeschakeld.Individuele gebaren worden gecontroleerd door eigenschappen van GMSPanoramaView.Deze eigenschappen in-of uitschakelen door de gebruiker gecontroleerde gebaren; programmatische veranderingen zijn nog steeds mogelijk wanneer het gebaar is uitgeschakeld.

orientationGesturesof de gebruiker de camera opnieuw kan oriënteren door te tikken of te slepen. Instellen opNOom oriëntatiewijzigingen aan de camera uit te schakelen.zoomGesturesof de gebruiker kan knijpen om in te zoomen. Instellen opNOom zoomen uit te schakelen.navigationGesturesof de gebruiker kan wijzigen welk panorama zichtbaar is. Gebruikers kunnen een enkele tik op navigatiekoppelingen gebruiken of dubbeltikken op de weergave om panorama ‘ s te wijzigen die zijn ingesteld opNOom navigatiewijzigingen uit te schakelen.

U kunt alle bewegingen tegelijk in-of uitschakelen met de methodesetAllGesturesEnabled:.

Swift

panoView.setAllGesturesEnabled(false) 

Objective-C

; 

Street View starten met het URL-schema

Google Street View-afbeeldingen kunnen worden weergegeven vanuit de Google Maps for iOS-toepassing. U kunt de toepassing Google Maps for iOS in streetview-modus starten met hetcomgooglemaps URL-schema door de parametermapmodein te stellen opstreetview. Een voorbeeld van een URL die Street View zal starten, verschijnt hieronder. Voor meer informatie, refereer je naar de URL Schemedocumentation.

comgooglemaps://?center=46.414382,10.013988&mapmode=streetview

Street View locations and point-of-view (POV)

met GMSPanoramaCamera kunt u het point-of-view van de Street View camera instellen als een combinatie van kop, toonhoogte en zoom.

de onderstaande fragmentsets Oriënteren de camera naar het zuiden en iets naar beneden.

Swift

panoView.camera = GMSPanoramaCamera(heading: 180, pitch: -10, zoom: 1) 

Objective-C

panoView.camera = ; 

oriëntatie

De Street View-locatie definieert de plaatsing van de camerafocus voor animatie, maar het definieert niet de oriëntatie van de camera voor dat beeld.Voor dat doel definieert het object GMSOrientation twee eigenschappen:

  • heading definieert de rotatiehoek rond de cameraplaats in graden relatief ten opzichte van het ware noorden. De koppen worden met de klok mee gemeten: het ware noorden is 0, het oosten is 90, het zuiden is 180, het Westen is 270.
  • pitch (default 0) definieert de hoekvariantie” omhoog “of” omlaag ” van de initiële standaard toonhoogte van de camera, die vaak (maar niet altijd) plathorizontaal is. (Bijvoorbeeld, een afbeelding genomen op een heuvel zal waarschijnlijk vertonen adefault toonhoogte die niet horizontaal is.) Toonhoogte hoeken worden gemeten metpositieve waarden kijken omhoog (tot +90 graden recht omhoog en orthogonaal naar de standaard toonhoogte) en negatieve waarden kijken naar beneden (tot -90 graden straight naar beneden en orthogonaal naar de standaard toonhoogte).

Zoom

Street View ondersteunt verschillende niveaus van afbeeldingsdetail door het gebruik van zoomen.U kunt het zoomniveau programmatisch instellen, of gebruikers kunnen het niveau in de kijker wijzigen door te knijpen om in te zoomen.

verplaatsen van de camera

zodra u deGMSPanoramaView hebt aangemaakt, en deze heeft ofwel een geconfigureerde ordefault camera, kunt u deze op een van de verschillende manieren wijzigen. Wanneer u de camera verandert, hebt u de mogelijkheid om de resulterende camerabeweging te animeren. De animatie interpoleert tussen de huidige camera attributen en de nieuwe camera attributen.

u kunt het GMSPanoramaCamera object wijzigen en het instellen op deGMSPanoramaView’s camera eigenschap. Hiermee wordt de camera naar het nieuwe beeldpunt geklikt zonder animatie. Een GMSCameraPosition kan worden aangemaakt om elke combinatie van oriëntatie en zoom te configureren.

Swift

panoView.camera = GMSPanoramaCamera(heading: 180, pitch: -10, zoom: 1) 

Objective-C

panoView.camera = ; 

u kunt een overgang animeren door deanimateToCamera:animationDuration: methode van .Daarnaast kunt u de camera bedienen met behulp van Kernanimatie. Dit is beschikbaar via de aangepaste CALayer op GMSPanoramaViewGMSPanoramaLayer.

Markers binnen Street View

hetGMSPanoramaView object kan kaartmarkeringen weergeven. U kunt gebruik maken van hetzelfde GMSMarker object op een GMSMapView of eenGMSPanoramaView object door het instellen van de bijbehorende eigenschappen:

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; 

Markeringen schaal in grootte als functie van de afstand tussen de markering’sposition en de GMSCameraView’s locatie. Als deze afstand te groot wordt, wordt de markering te klein om weer te geven en wordt verborgen voor het zicht.

Stel de eigenschappanoramaView in op nil om het uit deGMSPanoramaViewte verwijderen.

Swift

marker.panoramaView = nil 

Objective-C

marker.panoramaView = nil; 

Events

u kunt luisteren naar gebeurtenissen die zich voordoen op het Street View panorama, zoals wanneer auser tikt op het panorama. Om gebeurtenissen te beluisteren moet u hetGMSPanoramaViewDelegate protocol implementeren. Zie de algemene gids voor gebeurtenissen en de lijst met methoden op deGMSPanoramaViewDelegate.

Geef een antwoord

Het e-mailadres wordt niet gepubliceerd.