ชิ้นส่วน Street View คล้ายกับกระเบื้อง 2 มิติ เว้นแต่ว่าจะมีภาพพาโนรามาที่ถ่ายที่ระดับถนน คุณสามารถสำรวจจุดสังเกตทั่วโลก ดูความมหัศจรรย์ทางธรรมชาติ และเยี่ยมชมด้านในของสถานที่ต่างๆ เช่น พิพิธภัณฑ์ สนามกีฬา ร้านอาหาร หรือธุรกิจขนาดย่อมด้วย Street View อุปกรณ์ปลายทาง API นี้ให้คุณเข้าถึงสิ่งต่อไปนี้ได้
- ชิ้นส่วนแผนที่ Street View ของ Google Maps
- ข้อมูลเมตาของ Street View
- ภาพขนาดย่อของ Street View
คุณสามารถต่อภาพไทล์ที่ถ่ายจากระดับถนนเข้าด้วยกันเพื่อสร้างเอฟเฟกต์พาโนรามาเหมือนจริง และสามารถค้นหารหัสภาพพาโนรามาสูงสุด 100 รายการสำหรับสถานที่ตั้งชุดหนึ่ง (เช่น เส้นทาง) รวมถึงดูข้อมูลเมตาเชิงลึกเพิ่มเติมเกี่ยวกับตำแหน่งของกล้อง
ต้องมีผู้ชมเพื่อต่อการ์ด Street View เข้าด้วยกัน เช่น โปรแกรมดูภาพพาโนรามาแบบกำหนดเองของ Street View
เมื่อมีคีย์ API แล้ว คุณจะเข้าถึงภาพ Street View ได้โดยทำตามขั้นตอนต่อไปนี้
รับโทเค็นเซสชัน อย่าลืมตั้งค่า
mapType
เป็นstreetview
ใช้โทเค็นเซสชันเพื่อรับตัวระบุภาพพาโนรามา (panoId) ของสถานที่ตั้งทางภูมิศาสตร์อย่างน้อย 1 แห่ง
ใช้ตัวระบุพาโนรามาจากการตอบกลับการค้นหา panoId เพื่อรับข้อมูลต่อไปนี้
ข้อมูลเมตาของ Street View นอกจากนี้ คุณยังรับข้อมูลเมตาของ Street View ได้โดยส่งชุดพิกัดและรัศมี
วิธีการของ Street View
คุณเข้าถึงภาพและข้อมูลเมตาของ Street View ได้โดยโทรหาหนึ่งใน 4 วิธีต่อไปนี้
วิธีการ | คำอธิบาย |
---|---|
https://tile.googleapis.com/v1/streetview/tiles |
แสดงการ์ด Street View แต่ละรายการ คุณสามารถเรียกดูภาพ Street View ที่ระดับการซูม 6 ระดับ คือ ตั้งแต่ 512 พิกเซล สูงสุด 13,312 พิกเซล |
https://tile.googleapis.com/v1/streetview/panoIds |
ช่วยให้คุณค้นหาสถานที่ได้สูงสุด 100 แห่งพร้อมกัน แสดงผลรหัสภาพพาโนรามาสำหรับสถานที่ทั้งหมดที่มีภาพ |
https://tile.googleapis.com/v1/streetview/thumbnail |
แสดงผลรูปภาพ JPEG ขนาดย่อของฉาก Street View ให้คุณระบุส่วนหัว ระดับความลาดชัน มิติข้อมูล และมุมมอง ขนาดขั้นต่ำคือ 16x16 พิกเซล ขนาดสูงสุดคือ 250x600 พิกเซล |
https://tile.googleapis.com/v1/streetview/metadata |
ให้ข้อมูลโดยละเอียดเกี่ยวกับภาพพาโนรามาที่ระบุ รายละเอียดประกอบด้วยที่อยู่ที่เกี่ยวข้องและลิงก์ไปยังภาพพาโนรามาที่ใกล้เคียง |
การค้นหาภาพพาโนรามาใน Street View
คุณสามารถค้นหาตัวระบุภาพพาโนรามาของสถานที่ตั้งทางภูมิศาสตร์อย่างน้อย 1 แห่งโดยส่งพิกัด (lat
, lng
) ไปยังเมธอด panoIds
เนื้อหาของคำขอเป็นออบเจ็กต์ JSON ที่มีอาร์เรย์ locations
และ (ไม่บังคับ) radius
ดังที่แสดงในตัวอย่างโค้ด JSON ต่อไปนี้
curl -X POST -d '{ "locations": [ {"lat": -33.883837, "lng": 151.209307}, {"lat": -33.883700, "lng": 151.210307}, {"lat": 0, "lng": 0} ], "radius": 50 }' \ -H 'Content-Type: application/json' \ "https://tile.googleapis.com/v1/streetview/panoIds?session=YOUR_SESSION_TOKEN &key=YOUR_API_KEY"
locations
- อาร์เรย์
locations
ต้องมีค่าพิกัดอย่างน้อย 1 ชุด แต่คุณจะระบุค่าพิกัดมากกว่านี้ได้สูงสุด 100 ชุด radius
- ค่า
radius
(วัดเป็นเมตร) จะกำหนดรัศมีของวงกลมรอบๆ ตำแหน่งที่ระบุเพื่อค้นหาภาพพาโนรามา ค่าเริ่มต้นคือ 50 เมตร
การตอบกลับ PanoId
Map Tiles API จะพยายามค้นหาภาพพาโนรามาที่ใกล้ที่สุดกับสถานที่แต่ละแห่ง จากนั้นจะแสดงผลรหัสภาพพาโนรามา คำขอ panoIds
ที่สำเร็จจะแสดงผลออบเจ็กต์ JSON ที่มีอาร์เรย์ panoIds
อาร์เรย์ประกอบด้วยรายการรหัสภาพพาโนรามาในลำดับที่คุณขอ หาก Map Tiles API ไม่พบพาโนรามาของสถานที่ที่คุณขอ ระบบจะส่งสตริงว่างเปล่าที่ตำแหน่งนั้นในอาร์เรย์ ตัวอย่างเช่น ดูโค้ด JSON ต่อไปนี้
{
"panoIds": [
"ACfH-n2HcBvRry_3oc9grw",
"f5DJZatBAAAXHlooS2wKbw",
""
]
}
คุณใช้ panoIds
เพื่อทำสิ่งต่อไปนี้ได้
ข้อมูลเมตาของ Street View
คำขอข้อมูลเมตาของ Street View จะดึงข้อมูลเกี่ยวกับภาพพาโนรามา คำขอข้อมูลเมตาของ Street View คือคำขอ HTTPS GET คุณเรียกข้อมูลเกี่ยวกับภาพพาโนรามาได้ 2 วิธีดังนี้
หากคุณส่ง
pano_id
ทาง Map Tiles API จะแสดงผลข้อมูลเมตาของภาพพาโนรามานั้นแต่หากคุณส่ง
lat
และlng
ทาง Map Tiles API จะแสดงผลข้อมูลเมตาของภาพพาโนรามาที่ใกล้ที่สุดภายในรัศมีการค้นหาที่ระบุ
ส่งชุดพิกัดและรัศมี
curl "https://tile.googleapis.com/v1/streetview/metadata?session=YOUR_SESSION_TOKEN&key=YOUR_API_KEY &lat=lat &lng=lng &radius=meters"
เนื่องจากรหัสภาพพาโนรามามีอายุสั้น เราขอแนะนำให้คุณส่งชุดพิกัดและค่า radius
ในคำขอข้อมูลเมตา Street View ครั้งแรก
ดูตัวอย่างได้ที่ข้อมูลโค้ดต่อไปนี้
curl "https://tile.googleapis.com/v1/streetview/metadata?session=YOUR_SESSION_TOKEN &key=YOUR_API_KEY &lat=47.62066 &lng=-122.34923 &radius=50"
ส่ง panoId ของรูปภาพ Street View
curl "https://tile.googleapis.com/v1/streetview/metadata?session=YOUR_SESSION_TOKEN &key=YOUR_API_KEY &panoId=panoId"
การตอบสนองข้อมูลเมตา
โค้ด JSON ต่อไปนี้เป็นตัวอย่างการตอบกลับข้อมูลเมตาทั่วไป
{
"panoId": "rZ9KeTyhA11i0VppYNzsSg",
"lat": 37.420864219339165,
"lng": -122.08446528377291,
"imageHeight": 6656,
"imageWidth": 13312,
"tileHeight": 512,
"tileWidth": 512,
"heading": 94.35,
"tilt": 88.39652,
"roll": 1.7181772,
"imageryType": "outdoor",
"date": "2023-01",
"copyright": "© 2023 Google",
"reportProblemLink": "https://cbks0.googleapis.com/cbk?output=report&panoid=rZ9KeTyhA11i0VppYNzsSg&cb_client=api&cbp=1,0,,0,0&hl=en-US&gl=us",
"addressComponents": [
{
"longName": "United States",
"shortName": "United States",
"types": [
"country"
]
},
{
"longName": "Mountain View, California",
"shortName": "Mountain View, California",
"types": [
"locality"
]
},
{
"longName": "Charleston Rd",
"shortName": "Charleston Rd",
"types": [
"route"
]
},
{
"longName": "1635",
"shortName": "1635",
"types": [
"street_number"
]
}
],
"links": [
{
"panoId": "Yw4pqzA4FEq1qs-BwZSvSQ",
"heading": 274.47998046875,
"text": "Charleston Rd"
},
{
"panoId": "1cODYwFRw1aZ45IignDIMw",
"heading": 94.47999572753906,
"text": "Charleston Rd"
}
]
}
รายการต่อไปนี้มีคำจำกัดความของช่องในเนื้อหาการตอบกลับ
panoId
- รหัสที่ไม่ซ้ำกันของพาโนรามานี้ คุณไม่ควรคาดหวังว่ารหัส Panorama จะใช้งานได้นานกว่าเซสชันของผู้ใช้แต่ละราย
lat
lng
- พิกัด (ละติจูดและลองจิจูด) ของภาพพาโนรามา ค่าเหล่านี้อาจแตกต่างจากพิกัดที่คุณส่งในคำขอเนื่องจากตำแหน่งจะปักหมุดไปยังภาพพาโนรามาที่ใกล้ที่สุด
imageHeight
imageWidth
- ขนาดของรูปภาพพาโนรามาที่ต่อกัน
tileHeight
tileWidth
- ขนาดของไทล์ภาพพาโนรามาภาพเดียว
heading
- ทิศทางของเข็มทิศซึ่งวัดเป็นองศาตามเข็มนาฬิกาจากทิศเหนือ ระบบจะแสดงหัวขึ้นในช่วงที่ [0,360] โดย 0 หมายถึงทิศเหนือ
tilt
- การเอียงของภาพพาโนรามา ซึ่งวัดเป็นองศาจากขั้วโลกใต้ของภาพพาโนรามาไปยังขอบฟ้า ค่าที่แสดงผลจะอยู่ในช่วง [0, 180] ค่า 90 องศาบ่งบอกว่าเส้นขอบฟ้าอยู่ในแนวเดียวกันที่เส้นศูนย์สูตรของภาพพาโนรามาแล้ว
roll
- การหมุนตามเข็มนาฬิการอบแนวสายตาที่ใช้กับภาพพาโนรามาเพื่อปรับระดับเส้นขอบฟ้า ค่าที่แสดงผลจะอยู่ในช่วง [0, 360]
imageryType
- ระบุประเภทของรูปภาพ ค่าที่ใช้ได้คือ
indoor
และoutdoor
date
- วันที่ถ่ายภาพ รูปภาพบางรูปไม่มีข้อมูลวันที่ แต่หากมีข้อมูล ช่องนี้จะประกอบด้วยปี (YYYY) และเดือน (MM) เช่น 2023-05 หรือ 2024
copyright
- ข้อความเกี่ยวกับลิขสิทธิ์ที่คุณต้องแสดงเป็นข้อมูลระบุแหล่งที่มาพร้อมกับรูปภาพ Street View
reportProblemLink
- ไฮเปอร์ลิงก์สำหรับให้ผู้ใช้ใช้เพื่อรายงานปัญหาเกี่ยวกับการ์ด Street View นี้ คุณต้องแสดงไฮเปอร์ลิงก์นี้ที่มุมขวาล่างของรูปภาพ และต้องมีข้อความลิงก์ที่ระบุว่า "รายงานปัญหาเกี่ยวกับรูปภาพนี้"
addressComponent
- Structured Data Geocode ที่มีรายละเอียดเกี่ยวกับที่อยู่ของภาพพาโนรามา ดูข้อมูลเพิ่มเติมได้ที่คำขอและการตอบกลับการแปลงที่อยู่เป็นพิกัดภูมิศาสตร์ในเอกสารประกอบ Geocoding API
links
- รายการรหัสภาพพาโนรามาที่ลิงก์กับภาพนี้ นอกจากนี้ยังมีส่วนหัว ที่พบลิงก์ด้วย เช่น ถ้าทิศทางเป็น 180° ภาพพาโนรามาที่ลิงก์อยู่จะถึงทิศใต้ของภาพพาโนรามาปัจจุบัน โปรดทราบว่าเนื่องจากรหัสภาพพาโนรามามีลักษณะชั่วคราว คุณจึงไม่ควรใช้รหัสเหล่านี้ในเซสชันของผู้ใช้มากกว่า 1 รายการ
ภาพขนาดย่อของ Street View
คุณสามารถขอภาพ Street View ได้ในรูปแบบ thumbnail
ภาพขนาดย่อคือรูปภาพแบบไม่ใช่ไทล์ พร้อมด้วยขนาดที่ผู้ใช้กำหนด ส่วนหัว ความสูง-ต่ำ และขอบเขตการมองเห็น
ภาพขนาดย่อมีความละเอียดต่ำกว่าภาพย่อยและขนาดไฟล์เล็กกว่า คุณส่งคำขอภาพปกได้โดยส่งคำขอ GET ไปยังปลายทาง thumbnail
ดังที่แสดงในโปรโตไทป์โค้ดต่อไปนี้
curl "https://tile.googleapis.com/v1/streetview/thumbnail?session=YOUR_SESSION_TOKEN &key=YOUR_API_KEY &panoId=panoId &height=FROM_16_TO_250 &width=FROM_16_TO_600 &pitch=FROM-90_TO_90 &yaw=FROM-360_TO_360 &fov=FROM_30_TO_120"
ลองดูตัวอย่างโค้ดต่อไปนี้ ซึ่งจะดาวน์โหลดภาพขนาดย่อของภาพ Street View ที่ถ่ายใน Whistler แคนาดา
curl "https://tile.googleapis.com/v1/streetview/thumbnail?session=YOUR_SESSION_TOKEN &key=YOUR_API_KEY &panoId=Zzl28rqGJgaL2IdkUleP8A &height=200 &width=200 &pitch=0 &yaw=250 &fov=80" --output /tmp/example_thumbnail.png
พารามิเตอร์ที่จำเป็น
panoId
- รหัสที่ไม่ซ้ำกันของภาพปกที่ต้องการ คุณสามารถดูค่ารหัสพาโนรามาจากปลายทาง
panoIds
หรือจากปลายทางmetadata
ซึ่งทั้งคู่ยอมรับพิกัดทางภูมิศาสตร์และแสดงผลpanoId
ที่เหมาะสม session
- โทเค็นเซสชันที่ถูกต้อง
key
- คีย์ API ของคุณ
พารามิเตอร์ที่ไม่บังคับ
height
- ระบุความสูงของภาพขนาดย่อเป็นพิกเซล ซึ่งอยู่ในช่วง 16 ถึง 250 พิกเซล หากคุณไม่ระบุความสูง ความสูงจะมีค่าเริ่มต้นเป็นค่าสูงสุดที่อนุญาต นั่นคือ 250 พิกเซล หากคุณระบุค่าที่อยู่นอกช่วง ระบบจะปรับภาพขนาดย่อเป็นค่าที่ถูกต้องซึ่งใกล้เคียงที่สุด
width
- ระบุความกว้างของภาพขนาดย่อเป็นพิกเซล ตั้งแต่ 16 พิกเซลถึง 600 พิกเซล หากไม่ได้ระบุความกว้าง ค่าเริ่มต้นของความกว้างจะเป็น 600 พิกเซล ซึ่งเป็นค่าสูงสุดที่อนุญาต หากคุณระบุค่าที่อยู่นอกช่วง ระบบจะปรับภาพขนาดย่อเป็นค่าที่ถูกต้องซึ่งใกล้เคียงที่สุด
pitch
- ระบุมุมของกล้องตามแกนแนวตั้ง ค่าที่ใช้ได้อยู่ในช่วง
-90
ถึง90
(รวม) ค่าเริ่มต้นคือ 0 yaw
- ระบุทิศทางของกล้องตามแกนแนวนอน ค่าที่ใช้ได้อยู่ในช่วง
-360
ถึง360
(รวมค่าแรกและค่าสุดท้าย) ค่าเริ่มต้นคือ 0 fov
- ระบุมุมมองแนวนอนที่แสดงเป็นองศา โดยมีค่าสูงสุด 120 เมื่อจัดการกับวิวพอร์ตขนาดคงที่ เช่น รูปภาพ Street View ขนาดที่กำหนดไว้ มุมมองจะแสดงการซูม โดยค่าที่เล็กกว่าจะระบุการซูมในระดับที่สูงขึ้น ค่าเริ่มต้นคือ 90
ชิ้นส่วนแผนที่ภาพ Street View
เมื่อได้รับ panoId
แล้ว คุณจะขอชิ้นส่วนแผนที่ Street View ได้ คำขอไทล์คือคำขอ HTTPS GET ลองดูตัวอย่างต่อไปนี้
curl "https://tile.googleapis.com/v1/streetview/tiles/z/x/y?session=YOUR_SESSION_TOKEN &key=YOUR_API_KEY &panoId=panoId"
ในตัวอย่างนี้ z
คือระดับการซูม และ x
และ y
คือพิกัดไทล์ของไทล์ Street View ที่ต้องการ ระดับการซูมในภาพพาโนรามาของ Street View ต้องอยู่ในช่วง [0,5] โดย 0 หมายถึงมุมมองที่กว้างที่สุด
ระดับการซูม | ขอบเขตการมองเห็นโดยประมาณ |
---|---|
0 | 360° |
1 | 180° |
2 | 90° |
3 | 45° |
4 | 22.5° |
5 | 11.25° |
การตอบกลับของชิ้นส่วนแผนที่ Street View
คำขอชิ้นส่วนแผนที่ Street View ที่ดำเนินการสำเร็จจะแสดงผลรูปภาพในรูปแบบและขนาดที่คุณระบุในการตอบกลับ createSession
เมื่อซูมเป็นระดับ 0 ระบบจะปรับขนาดภาพพาโนรามาทั้งภาพเป็นไทล์ขนาด tileWidth
x tileHeight
เนื่องจากภาพพาโนรามามีขนาดที่ใหญ่กว่าในมิติข้อมูล x ไทล์จึงจะมีพื้นที่ว่างในมิติข้อมูล y ดังนี้
เมื่อซูมระดับที่ 5 ภาพพาโนรามาขนาดเต็มจะถูกใช้งานและแบ่งออกเป็นชิ้นส่วน
ข้อมูลลิขสิทธิ์
คุณต้องแสดงข้อมูลลิขสิทธิ์พร้อมกับภาพพาโนรามาของ Street View ทุกภาพ สตริงที่จะแสดงอาจแตกต่างกันไปในแต่ละภาพพาโนรามา หากต้องการดูข้อมูลลิขสิทธิ์ คุณต้องขอข้อมูลเมตาของ Street View จากนั้นจึงดูข้อมูลในช่อง copyright
ของการตอบกลับ ดูข้อมูลเพิ่มเติมได้ที่การระบุแหล่งที่มาของข้อมูล