Maybaygiare.org

Blog Network

Street View

a Google Maps Street View segítségével 360 fokos, utcaszintű képeket fedezhet fel a világ minden tájáról. Felfedezheti a világ nevezetességeit, megtekintheti a naturalwonders-t, navigálhat egy utazáson, vagy megmutathatja vállalkozásának külsejét.

áttekintés

a Google Street View panorámás 360 fokos kilátást nyújt a kijelölt utakrólaz egész lefedettségi területén. Az SDK-n keresztül elérhető lefedettség augyanaz, mint a Google Maps for iOS alkalmazás vagy ahttps://maps.google.com/. További információ az utcanézetről, valamint a támogatott területek egy interaktív térképen, az Utcakép címen tekinthetők meg.

az iOS-hez készült Maps SDK Utcakép szolgáltatást nyújt a Google Maps Street View-ban használt képek megszerzéséhez ésmanipulálásához. Az Utcakép-képek panorámaként kerülnek vissza, és az Utcakép-megjelenítőn belül láthatók— egy GMSPanoramaViewtípusú objektum.

Utcakép-panorámák

minden Utcakép-panoráma olyan kép vagy képkészlet, amely teljes 360 fokos képet biztosít egyetlen helyről. A képek megfelelnek az equirectangular (Plate Carracne) vetületnek, amely 360 fokos vízszintes nézetet (teljes körbefutás) és 180 fokos függőleges nézetet tartalmaz (egyenesen felfelé egyenesen lefelé). Az így kapott 360 fokos panoráma meghatározza a vetületegy gömbön, amelynek képét a gömb kétdimenziós felületére csomagolják.

Az Utcakép panorámaképek aGMSPanoramaView objektummal láthatók. A Thisobject olyan nézőt biztosít, amely a panorámát gömbként jeleníti meg, középpontjában az acamera áll. Programozottan vezérelheti akamera, valamint számos olyan tulajdonság, amely testreszabja a nézőt.

az Utcakép-adatok elérése

Az Utcakép-panorámákat két meta-adat egyike azonosítja:

panoramaIDaz Utcakép-panoráma egyedi azonosítója. Ez apanoramaIDidővel változhat, és nem alkalmas hosszú távú vagy kódolt referenciaként. ApanoramaIDprogramozott hozzáférést biztosít a különböző Utcakép képekhez.coordinatea kép pontos helye,CLLocationCoordinate2D. Használja acoordinatepanorámahely tartós tárolásához, vagy a térképen végzett felhasználói műveletek Utcakép-képpé történő lefordításához.

mind a panoramaID, mind a coordinateaGMSPanorama objektum tulajdonságai tárolódnak. GMSPanorama aGMSPanoramaService a coordinate vagy a panoramaIDhasználatával kérhető. Az eredményobjektum mindkét metaadatot tartalmazza, valamint egy sor linket a közeli panorámákhoz.

a panoráma helyének beállítása

Az Utcakép panoráma helye a koordináta alapján állítható be.

  • amoveNearCoordinate módszer panorámát kér a koordináta közelében.

  • a moveNearCoordinate:radius módszer hasonló, de lehetővé tesziön megadja a keresési sugarat méterben, a koordináta körül.

  • a moveNearCoordinate:source módszer lehetővé teszi a forrás megadását.A forrás akkor hasznos, ha korlátozni szeretné az utcanézetet, hogy csak a külső panorámákat keresse. Alapértelmezés szerint a helyek panorámái isbelső vagy külső. Ne feledje, hogy a kültéri panorámák nem léteznekmeghatározott hely.

  • a moveNearCoordinate:radius:source módszer lehetővé teszi mind az aradius, mind a forrás megadását.

Utcakép-képek megtekintése

Utcakép-megjelenítő hozzáadása

a megjelenítő hozzáadásának alapvető lépései a következők:

  1. (egyszer) kövesse az első lépések lépéseit az SDK megszerzéséhez,egy kulcs beszerzéséhez és a szükséges keretrendszerek hozzáadásához.
  2. ViewControllerlétrehozása vagy frissítése. Ha a panoráma akkor jelenik meg, amikor ez a nézetvezérlő láthatóvá válik, győződjön meg róla, hogy a loadView módszerrel hozza létre.
  3. hozzon létre és példányosítson egyGMSPanoramaView osztályt aGMSPanoramaViewinitWithFrame: módszerrel. Ha ez a nézetvezérlő egyetlen nézete, akkor aCGRectZero használható térképkeretként — a térkép automatikusan átméreteződik.
  4. állítsa be aGMSPanoramaView objektumot a nézetvezérlő nézeteként, pl.self.view = panoView;.
  5. állítsa be az Utcakép helyét olyan módszerrel, mint amoveNearCoordinate:.

az alábbi példa hozzáad egy Utcakép nézőt egy alkalmazáshoz.

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 

a néző testreszabása

testreszabhatja a nézőt a rendelkezésre álló gesztusok korlátozásával. A Bydefault, a pásztázás, a nagyítás és a szomszédos panorámákhoz való utazás mind engedélyezve van.Az egyes gesztusokat a GMSPanoramaViewtulajdonságai vezérlik.Ezek a tulajdonságok engedélyezik vagy letiltják a felhasználó által vezérelt gesztusokat; programmaticchanges továbbra is lehetséges, ha a gesztus le van tiltva.

orientationGestureshogy a felhasználó képes lesz-e újra orientálni a kamerát koppintással vagy húzással. ÁllítsaNOértékre a fényképezőgép tájolásának megváltoztatásának letiltásához.zoomGestureshogy a felhasználó képes lesz-e csípni a nagyításhoz. ÁllítsaNOértékre a zoom letiltásához.navigationGestureshogy a felhasználó képes lesz-e megváltoztatni a látható panorámát. A felhasználók a navigációs hivatkozások egyetlen érintésével vagy a nézet dupla megérintésével módosíthatják aNOértékre beállított panorámaképeket a navigációs módosítások letiltásához.

az összes gesztust egyszerre engedélyezheti vagy letilthatja asetAllGesturesEnabled: módszerrel.

Swift

panoView.setAllGesturesEnabled(false) 

Objective-C

; 

az Utcakép elindítása az URL-sémával

a Google Utcakép képei megtekinthetők a Google Térkép iOSapplication alkalmazásban. A Google Maps for iOS alkalmazást streetview módban indíthatja el a comgooglemaps URL sémával, ha a mapmodeparamétert streetviewértékre állítja. Példa egy URL-re, amely elindítja az Utcaképetaz alábbiakban jelenik meg. További információkért lásd az URL-Sémátdokumentáció.

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

Utcakép-helyek és Nézőpont (POV)

a GMSPanoramaCamera lehetővé teszi az Utcakép-kamera nézetpontjának beállítását a fejléc, a hangmagasság és a zoom kombinációjaként.

az alábbi részletkészletek délre, kissé lefelé irányítják a kamerát.

Swift

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

Objective-C

panoView.camera = ; 

Orientation

Az Utcakép helye határozza meg a kamera fókuszának elhelyezését az animációhoz, de nem határozza meg a kamera tájolását az adott képhez.Ebből a célból a GMSOrientation objektum két tulajdonságot határoz meg:

  • heading meghatározza a kamera helyének forgási szögét fokokban a valódi északhoz képest. A fejléceket az óramutató járásával megegyező irányban mérjük: az igazi észak 0, kelet 90, Dél 180, Nyugat 270.
  • pitch(alapértelmezett 0) meghatározza a szög varianciát” fel “vagy” le ” a kamera kezdeti alapértelmezett hangmagasságától, amely gyakran (de nem mindig) lapos vízszintes. (Például egy dombon készített kép valószínűleg nem vízszintes adefault hangmagasságot mutat.) A hangmagasság szögeit felfelé néző pozitív értékekkel (+90 fokig egyenesen felfelé és merőleges az alapértelmezett hangmagasságra) és lefelé néző negatív értékekkel (-90 fokig egyenesen lefelé és merőleges az alapértelmezett hangmagasságra) mérjük.

Zoom

Az Utcakép a zoom használatával támogatja a kép részletességének különböző szintjeit.Beállíthatja a nagyítási szintet programozottan, vagy a felhasználók megváltoztathatják a szintet a nézőben a nagyításhoz való becsípéssel.

A fényképezőgép mozgatása

miután létrehozta a GMSPanoramaView – t, és vagy konfigurált ordefault kamerával rendelkezik, többféle módon módosíthatja. A kamera megváltoztatásakor lehetősége van animálni a kapott kamera mozgását. Az animáció interpolál az aktuális kameratulajdonságok és a newcamera attribútumok között.

módosíthatja a GMSPanoramaCamera objektumot, és beállíthatja aGMSPanoramaView‘s camera tulajdonságra. Ez bepattintja a kamerát az újba. Nézőpont animáció nélkül. AGMSCameraPosition létrehozható a tájolás és a zoom kombinációjának konfigurálásához.

Swift

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

Objective-C

panoView.camera = ; 

az átmenetet aanimateToCamera:animationDuration: módszer GMSPanoramaView.Ezenkívül a kamerát Core animációval is vezérelheti. Ez elérhető az egyéni CALayer on GMSPanoramaViewGMSPanoramaLayer.

jelölők az Utcakép

a GMSPanoramaView objektum képes térképjelzők megjelenítésére. Használhatja thesame GMSMarker objektumot vagy egy GMSMapView vagy egyGMSPanoramaView objektumot a megfelelő tulajdonságok beállításával:

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; 

a jelölők mérete a jelölő pozíciója és a GMSCameraViewhelye közötti távolság függvényében változik. Ha ez a távolság túl nagy lesz, a jelölő túl kicsi lesz a megjelenítéshez, és el lesz rejtve a nézetből.

állítsa be apanoramaView tulajdonságotnil hogy eltávolítsa aGMSPanoramaView.

Swift

marker.panoramaView = nil 

Objective-C

marker.panoramaView = nil; 

események

meghallgathatja az Utcakép panorámájában előforduló eseményeket, például amikor az auser megérinti a panorámát. Az események meghallgatásához végre kell hajtania aGMSPanoramaViewDelegate protokollt. Lásd az események átfogó útmutatóját és a módszerek listáját aGMSPanoramaViewDelegateoldalon.

Vélemény, hozzászólás?

Az e-mail-címet nem tesszük közzé.