กำหนดค่าตัวควบคุมกล้อง

เลือกแพลตฟอร์ม: Android iOS JavaScript

ผู้ใช้สามารถควบคุมการซูม การเอียง ตำแหน่ง และการหมุนของกล้องได้โดยใช้ท่าทางสัมผัสบนแผนที่ นอกจากนี้ คุณยังกำหนดค่ากล้องแบบเป็นโปรแกรมได้ด้วย

แผนภาพแสดงโมเดลกล้อง 3 มิติ

ตำแหน่งกล้อง

มุมมองแผนที่จะจำลองเป็นกล้องที่มองไปยังจุดหนึ่งๆ ในพื้นที่ 3 มิติ ตำแหน่งและการวางแนวของกล้อง (และการแสดงผลแผนที่) จะกำหนดโดยพร็อพเพอร์ตี้ต่อไปนี้ center (ตำแหน่งละติจูด/ลองจิจูด/ระดับความสูงที่กล้องมอง อยู่), heading, tilt, range และ roll

กึ่งกลาง (ละติจูด/ลองจิจูด/ระดับความสูง)

กึ่งกลางกำหนดจุดที่เฉพาะเจาะจงในพื้นที่ 3 มิติที่กล้องกำลังสังเกต โดยระบุโดยใช้ค่าละติจูด ลองจิจูด และระดับความสูง ซึ่งช่วยให้กำหนดตำแหน่งจุดโฟกัสของกล้องได้อย่างแม่นยำใน 3 มิติ

ละติจูดต้องอยู่ระหว่าง -90 ถึง 90 องศา ค่าที่สูงกว่าหรือต่ำกว่าช่วงนี้จะถูกจำกัดให้เป็นค่าที่ใกล้เคียงที่สุดภายในช่วงนี้ เช่น การระบุละติจูดเป็น 100 จะตั้งค่าเป็น 90 ลองจิจูด อยู่ระหว่าง -180 ถึง 180 องศา (รวม) โดยจะระบุระดับความสูงเป็นเมตรเหนือ ระดับน้ำทะเล

ส่วนหัว

Heading ของกล้องจะระบุทิศทางที่กล้องจะหันไป โดยวัดเป็นองศาตามเข็มนาฬิกาจากทิศเหนือจริง ทิศเหนือสอดคล้องกับ 0 องศา ทิศตะวันออกกับ 90 องศา ทิศใต้กับ 180 องศา และทิศตะวันตกกับ 270 องศา ซึ่งจะเป็นตัวกำหนดการวางแนวของกล้องรอบแกนแนวตั้งของจุดกึ่งกลาง

เอียง

การเอียงจะระบุมุมของกล้องเทียบกับแกนแนวตั้ง โดยวัดเป็นองศา การเอียง 0 องศาหมายความว่ากล้องกำลังชี้ลงมายัง โลก (จุดใต้เท้า) โดยตรง การเอียง 90 องศาหมายความว่ากล้องหันไปในแนวนอนในทิศทางที่ ระบุโดยส่วนหัว

ช่วง

ช่วงจะกำหนดระยะทางเป็นเมตรระหว่างตำแหน่งของกล้องเองกับจุดกึ่งกลางที่กล้องกำลังมอง โดยระยะทางอาจแตกต่างกันตั้งแต่ 0 เมตร (ใกล้มาก) ไปจนถึง 63 ล้านเมตร ซึ่งช่วยให้คุณดูได้ตั้งแต่ระยะใกล้มากไปจนถึงมุมมองระดับโลกอย่างแท้จริง ซึ่งจะควบคุมลักษณะที่แผนที่จะปรากฏได้ว่า "ซูมเข้า" หรือ "ซูมออก"

หมุน

การหมุนจะกำหนดมุมของกล้องเทียบกับขอบฟ้า โดยวัดเป็นองศา พารามิเตอร์นี้ใช้เพื่อสร้างเอฟเฟกต์ต่างๆ เช่น การเอียงระหว่างการจำลองการบิน หรือแม้แต่การหมุนแบบม้วนตัวเต็มรอบ โดยหมุนกล้องรอบแกนการดู

การควบคุมกล้องถ่ายรูป

โค้ดตัวอย่างต่อไปนี้แสดงวิธีควบคุมกล้องโดยใช้โปรแกรม

Swift

public static var sanFrancisco: Camera = .init(
  latitude: 37.7845812,
  longitude: -122.3660241,
  altitude: 585,
  heading: 288.0,
  tilt: 75.0,
  roll: 0.0,
  range: 100)