Geometry Library

کدبندی فضای نام

google.maps.geometry.encoding فضای نام
کتابخانه "geometry"

برنامه‌های کمکی برای کدبندی و رمزگشایی چندخطی.

const {encoding} = await google.maps.importLibrary("geometry");
decodePath
decodePath(encodedPath)
پارامترها:
  • ‫encodedPath:‏ string
مقدار برگشتی: Array<LatLng>
رشته مسیر کدگذاری‌شده را به دنباله‌ای از LatLngs رمزگشایی می‌کند.
encodePath
encodePath(path)
پارامترها:
مقدار برگشتی: string
دنباله‌ای از LatLngs را در یک رشته مسیر کدگذاری‌شده کدگذاری می‌کند.

فضای نام کروی

google.maps.geometry.spherical فضای نام
کتابخانه "geometry"

توابع سودمندی برای محاسبه زاویه‌ها، فاصله‌ها، و مساحت‌های ژئودزیک. شعاع پیش‌فرض شعاع زمین است که ۶۳۷۸۱۳۷ متر است.

const {spherical} = await google.maps.importLibrary("geometry");
computeArea
computeArea(path[, radiusOfSphere])
پارامترها:
مقدار برگشتی: number
مساحت بدون علامت مسیر بسته را در محدوده [0, 2×pi×radius²] برمی‌گرداند. مساحت محاسبه‌شده از همان واحدهای شعاع استفاده می‌کند. radiusOfSphere به‌طور پیش‌فرض روی شعاع زمین به متر تنظیم شده است که در این صورت مساحت به متر مربع است. برای ارسال Circle، باید radius روی مقدار غیرمنفی تنظیم شود. علاوه‌براین، «دایره» نباید بیشتر از ۱۰۰٪ کره را پوشش دهد. و هنگام عبور از LatLngBounds، LatLng جنوبی نمی‌تواند شمالی‌تر از LatLng شمالی باشد.
computeDistanceBetween
computeDistanceBetween(from, to[, radius])
پارامترها:
مقدار برگشتی: number
فاصله بین دو LatLng را به متر برمی‌گرداند. درصورت تمایل می‌توانید شعاع سفارشی مشخص کنید. شعاع به‌طور پیش‌فرض روی شعاع زمین تنظیم شده است.
computeHeading
computeHeading(from, to)
پارامترها:
مقدار برگشتی: number
جهت را از یک LatLng به LatLng دیگر برمی‌گرداند. جهت‌ها به‌صورت درجه ساعت‌گرد از شمال در محدوده [-۱۸۰، ۱۸۰) بیان می‌شوند.
computeLength
computeLength(path[, radius])
پارامترها:
مقدار برگشتی: number
طول مسیر داده‌شده را برمی‌گرداند.
computeOffset
computeOffset(from, distance, heading[, radius])
پارامترها:
  • ‫from:‏ LatLng|LatLngLiteral
  • ‫distance:‏ number
  • ‫heading:‏ number
  • ‫radius:‏ number optional
مقدار برگشتی: LatLng
LatLng حاصل از حرکت در فاصله‌ای از مبدأ در جهت مشخص‌شده (بیان‌شده برحسب درجه در جهت عقربه‌های ساعت از شمال) را برمی‌گرداند.
computeOffsetOrigin
computeOffsetOrigin(to, distance, heading[, radius])
پارامترها:
  • ‫to:‏ LatLng|LatLngLiteral
  • ‫distance:‏ number
  • ‫heading:‏ number
  • ‫radius:‏ number optional
مقدار برگشتی: LatLng|null
وقتی مقصد LatLng، مترهای طی‌شده، و جهت اصلی ارائه شود، مکان مبدأ را برمی‌گرداند. جهت‌ها به‌صورت درجه در جهت عقربه‌های ساعت از شمال بیان می‌شوند. این تابع وقتی راه‌حلی دردسترس نباشد null را برمی‌گرداند.
computeSignedArea
computeSignedArea(loop[, radius])
پارامترها:
مقدار برگشتی: number
مساحت علامت‌دار مسیر بسته را برمی‌گرداند، که در آن پادساعت‌گرد مثبت است، در محدوده [-2×pi×radius², 2×pi×radius²]. مساحت محاسبه‌شده از همان واحدهای شعاع استفاده می‌کند. شعاع به‌طور پیش‌فرض شعاع زمین به متر است، که در این صورت مساحت به متر مربع است.

مساحت بااستفاده از روش انتقال موازی محاسبه می‌شود؛ انتقال موازی در اطراف یک مسیر بسته روی کره واحد با زاویه‌ای برابر با مساحت محصورشده توسط مسیر می‌پیچد. این روش ساده‌تر، دقیق‌تر، و قوی‌تر از مثلث‌بندی بااستفاده از ژیرارد، لوئیلیه، یا اریکسون در هر مثلث است. به‌ویژه، چون مثلث‌بندی نمی‌کند، هیچ ناپایداری‌ای ندارد، به‌جز در حالت اجتناب‌ناپذیری که یک لبه (نه یک قطر) چندضلعی ۱۸۰ درجه را پوشش می‌دهد.
interpolate
interpolate(from, to, fraction)
پارامترها:
مقدار برگشتی: LatLng
LatLng را که کسر مشخصی از مسیر بین LatLng مبدأ و LatLng مقصد است برمی‌گرداند.
AlphatraversePath
traversePath(path, fraction)
پارامترها:
مقدار برگشتی: LatLngLiteral
موقعیتی را برمی‌گرداند که کسر داده‌شده از مسیر را در امتداد مسیر داده‌شده قرار می‌دهد. اگر اشیاء LatLngAltitude را ارسال می‌کنید، درحال‌حاضر ارتفاع نادیده گرفته می‌شود، اما نسخه‌های آینده ممکن است ارتفاع را درنظر بگیرند.

poly فضای نام

google.maps.geometry.poly فضای نام
کتابخانه "geometry"

توابع سودمندی برای محاسبات مربوط به چندضلعی‌ها و چندخطی‌ها.

const {poly} = await google.maps.importLibrary("geometry");
containsLocation
containsLocation(point, polygon)
پارامترها:
مقدار برگشتی: boolean
محاسبه می‌کند که آیا نقطه داده‌شده در چندضلعی مشخص‌شده قرار دارد یا نه.
isLocationOnEdge
isLocationOnEdge(point, poly[, tolerance])
پارامترها:
مقدار برگشتی: boolean
محاسبه می‌کند که آیا نقطه داده‌شده روی چندخطی یا نزدیک آن، یا لبه چندضلعی، در محدوده تلورانس مشخص‌شده قرار دارد یا نه. اگر تفاوت بین طول و عرض جغرافیایی نقطه ارائه‌شده و نزدیک‌ترین نقطه در لبه کمتر از تلورانس باشد، true را برمی‌گرداند. پیش‌فرض تلورانس 10-9 درجه است.