Geometry Library

การเข้ารหัส เนมสเปซ

google.maps.geometry.encoding เนมสเปซ

ยูทิลิตีสําหรับการเข้ารหัสและถอดรหัสโพลีไลน์

เข้าถึงได้โดยโทรหา const {encoding} = await google.maps.importLibrary("geometry") โปรดดูไลบรารีใน Maps JavaScript API

decodePath
decodePath(encodedPath)
พารามิเตอร์: 
  • encodedPathstring
แสดงผลค่า:  Array<LatLng>
ถอดรหัสสตริงเส้นทางที่เข้ารหัสเป็นลําดับ LatLng
encodePath
encodePath(path)
พารามิเตอร์: 
แสดงผลค่า:  string
เข้ารหัสลําดับ LatLng เป็นสตริงเส้นทางที่เข้ารหัส

เนมสเปซ 360 องศา

google.maps.geometry.spherical เนมสเปซ

ฟังก์ชันยูทิลิตีสําหรับการประมวลผลมุม ระยะทาง และพื้นที่ทางภูมิศาสตร์ รัศมีเริ่มต้นคือรัศมีของโลก 6378137 เมตร

เข้าถึงได้โดยโทรหา const {spherical} = await google.maps.importLibrary("geometry") โปรดดูไลบรารีใน Maps JavaScript API

computeArea
computeArea(path[, radiusOfSphere])
พารามิเตอร์: 
แสดงผลค่า:  number
แสดงผลพื้นที่ที่ไม่มีเครื่องหมายของเส้นทางปิด ในช่วง [0, 2×pi×Radi2] พื้นที่ที่คํานวณแล้วจะใช้หน่วยเดียวกันกับรัศมี radiusOfSphere มีค่าเริ่มต้นเป็นรัศมีของโลกเป็นเมตร ซึ่งในกรณีนี้พื้นที่เป็นตารางเมตร การส่ง Circle กําหนดให้ตั้งค่า radius เป็นค่าที่ไม่ติดลบ นอกจากนี้ วงกลมต้องไม่เกิน 100% ของวงกลม และเมื่อเดินผ่าน LatLngBounds ทางตอนใต้ของ LatLng ทางทิศเหนือจะไม่สามารถอยู่ทางเหนือของ LatLng ทางเหนือ
computeDistanceBetween
computeDistanceBetween(from, to[, radius])
พารามิเตอร์: 
แสดงผลค่า:  number
แสดงผลระยะทางในหน่วยเมตรระหว่าง LatLngs 2 กิโลเมตร นอกจากนี้ คุณยังระบุรัศมีที่กําหนดเองได้อีกด้วย รัศมีเริ่มต้นคือรัศมีของ Earth
computeHeading
computeHeading(from, to)
พารามิเตอร์: 
แสดงผลค่า:  number
แสดงส่วนหัวจาก LatLng ไปยัง LatLng อีกรายการหนึ่ง ส่วนหัวจะวัดเป็นองศาตามเข็มนาฬิกาจากทิศเหนือซึ่งอยู่ในช่วง [-180,180)
computeLength
computeLength(path[, radius])
พารามิเตอร์: 
แสดงผลค่า:  number
แสดงความยาวของเส้นทางที่ระบุ
computeOffset
computeOffset(from, distance, heading[, radius])
พารามิเตอร์: 
แสดงผลค่า:  LatLng
แสดง LatLng ที่เกิดจากการขยับระยะทางจากต้นทางในส่วนหัวที่ระบุ (แสดงในหน่วยองศาตามเข็มนาฬิกาจากทิศเหนือ)
computeOffsetOrigin
computeOffsetOrigin(to, distance, heading[, radius])
พารามิเตอร์: 
แสดงผลค่า:  LatLng|null
แสดงตําแหน่งของต้นทางเมื่อมีปลายทาง LatLng เครื่องวัดการเดินทาง และส่วนหัวเดิม ส่วนหัวจะแสดงตามเข็มนาฬิกาจากทิศเหนือตามเข็มนาฬิกา ฟังก์ชันนี้จะแสดงผล null เมื่อโซลูชันไม่พร้อมใช้งาน
computeSignedArea
computeSignedArea(loop[, radius])
พารามิเตอร์: 
แสดงผลค่า:  number
แสดงผลพื้นที่ที่ลงนามของเส้นทางปิด ซึ่งทวนเข็มนาฬิกาเป็นบวก อยู่ในช่วง [-2×pi×Radi2, 2×pi×Radi2] พื้นที่ที่คํานวณแล้วจะใช้หน่วยเดียวกันกับรัศมี รัศมีตามค่าเริ่มต้นคือรัศมีของโลกในหน่วยเมตร ซึ่งในกรณีนี้พื้นที่เป็นตารางเมตร

พื้นที่จะคํานวณโดยใช้เมธอดการขนส่งพร้อมกัน การขนส่งพร้อมกันรอบเส้นทางแบบปิดของทรงกลมของหน่วยจะหมุนด้วยมุมเท่ากับพื้นที่ที่ล้อมรอบด้วยเส้นทาง วิธีนี้เรียบง่ายและแม่นยํามากกว่าและมีประสิทธิภาพโดยใช้สามเหลี่ยม Girard, l'Huilier หรือ Eriksson ในรูปสามเหลี่ยมแต่ละรูป โดยเฉพาะอย่างยิ่ง เนื่องจากไม่ได้บิดเบี้ยว จึงไม่มีความไม่เสถียร ยกเว้นในกรณีที่หลีกเลี่ยงไม่ได้เมื่อขอบ (ไม่ใช่แนวทแยง) ของรูปหลายเหลี่ยมครอบคลุม 180 องศา
interpolate
interpolate(from, to, fraction)
พารามิเตอร์: 
แสดงผลค่า:  LatLng
แสดง LatLng ซึ่งอยู่เศษส่วนที่ระบุระหว่างเส้นทาง LatLng กับ LatLng ปลายทาง

poly namespace

google.maps.geometry.poly เนมสเปซ

ฟังก์ชันยูทิลิตีสําหรับการคํานวณที่เกี่ยวข้องกับรูปหลายเหลี่ยมและเส้นประกอบ

เข้าถึงได้โดยโทรหา const {poly} = await google.maps.importLibrary("geometry") โปรดดูไลบรารีใน Maps JavaScript API

containsLocation
containsLocation(point, polygon)
พารามิเตอร์: 
แสดงผลค่า:  boolean
คํานวณว่าจุดที่ระบุอยู่ในรูปหลายเหลี่ยมที่ระบุหรือไม่
isLocationOnEdge
isLocationOnEdge(point, poly[, tolerance])
พารามิเตอร์: 
แสดงผลค่า:  boolean
คํานวณว่าจุดที่ระบุวางอยู่บนหรือใกล้กับเส้นประกอบ หรือขอบของรูปหลายเหลี่ยม ภายในความคลาดเคลื่อนที่ระบุ แสดงผล true เมื่อความแตกต่างระหว่างละติจูดและลองจิจูดของจุดที่ระบุกับจุดที่ใกล้ที่สุดที่ขอบจะน้อยกว่าความอดทน ระยะที่ตั้งค่าได้โดยเฉลี่ยคือ 10-9 องศา