پرش به محتوا

random-location-generator

تولید فوری مختصات جغرافیایی تصادفی. تولیدکننده مکان تصادفی رایگان، مقادیر عرض و طول جغرافیایی معتبر را با نقشه تعاملی ایجاد می‌کند. مناسب برای تست اپلیکیشن‌ها.

تولیدکننده مکان تصادفی

ماشین حساب بارگذاری...
📚

مستندات

مولد مکان تصادفی ابزاری است که یک جفت مختصات جغرافیایی تصادفی تولید می‌کند: عرض جغرافیایی و طول جغرافیایی. هر نتیجه نقطه‌ای را مشخص می‌کند که ممکن است در هر جای سطح زمین، از اقیانوس آزاد و خیابان‌های شهر گرفته تا قله‌های کوهستان، قرار داشته باشد.

مولد چه چیزی تولید می‌کند

هر کلیک یک مقدار عرض جغرافیایی بین -۹۰° و ۹۰° و یک مقدار طول جغرافیایی بین -۱۸۰° و ۱۸۰° تولید می‌کند. ابزار هر دو عدد را بر حسب درجه اعشاری، مانند ۶۰٫۰۰۰۰° شمالی و ۹۰٫۰۰۰۰° غربی، نمایش می‌دهد و نقطه را روی یک نقشه ساده جهان مشخص می‌کند. عرض جغرافیایی منفی یعنی نقطه در جنوب استوا قرار دارد؛ طول جغرافیایی منفی یعنی نقطه در غرب نصف‌النهار مبدأ، خطی که از گرینویچ در بریتانیا می‌گذرد، قرار دارد.

روش استفاده از مولد مکان تصادفی

  1. روی دکمه تولید کلیک کنید.
  2. مختصات نمایش‌داده‌شده در زیر دکمه را همراه با جهت‌های شمال/جنوب و شرق/غرب بخوانید.
  3. نشانگر روی نقشه جهان را بررسی کنید تا ببینید نقطه تقریباً در کجا قرار دارد.
  4. برای کپی کردن مختصات و استفاده از آن‌ها در جای دیگر، روی کپی کلیک کنید.
  5. برای نقطه‌ای جدید دوباره روی تولید کلیک کنید. تعداد دفعات انجام این کار محدودیتی ندارد.
  6. برای پاک کردن نتیجه و شروع دوباره، روی بازنشانی کلیک کنید.

روش محاسبه مختصات (فرمول)

طول جغرافیایی ساده است: به‌صورت یکنواخت انتخاب می‌شود؛ یعنی احتمال انتخاب هر مقداری بین -۱۸۰° و ۱۸۰° یکسان است. فرمول به این صورت است:

λ=v×360−180\lambda = v \times 360 - 180

در اینجا λ طول جغرافیایی بر حسب درجه و v عددی تصادفی بین ۰ و ۱ است.

عرض جغرافیایی متفاوت عمل می‌کند و این همان بخشی است که مردم اغلب آن را اشتباه انجام می‌دهند. فرمول استفاده‌شده چنین است:

φ=arcsin⁡(2u−1)\varphi = \arcsin(2u - 1)

در اینجا φ عرض جغرافیایی است که از رادیان به درجه تبدیل شده، u عددی تصادفی و جداگانه بین ۰ و ۱ است و arcsin تابع معکوس سینوس است.

چرا عرض جغرافیایی با یک عدد تصادفی ساده انتخاب نمی‌شود

یک دایره عرض جغرافیایی نزدیک قطب‌ها کوتاه است. دایره عرض جغرافیایی در استوا طولانی است و بیشترِ محیط سیاره را دربر می‌گیرد. اگر عرض جغرافیایی با یک عدد تصادفی ساده بین -۹۰ و ۹۰ انتخاب می‌شد، هر درجه عرض جغرافیایی سهمی برابر از نتایج می‌گرفت؛ با اینکه دایره‌های قطبی بخش بسیار کوچک‌تری از سطح زمین را نسبت به دایره‌های استوایی پوشش می‌دهند. در این حالت، نقاط بیش از حدی نزدیک قطب‌ها جمع می‌شدند.

فرمول آرک‌سینوس این مشکل را برطرف می‌کند. این فرمول نقاط را طوری پخش می‌کند که احتمال انتخاب هر بخش از سطح زمین، صرف‌نظر از نزدیکی آن به قطب، یکسان باشد. این ایده «انتخاب نقطه روی کره» نام دارد و از قاعده‌ای ناشی می‌شود که گاهی قضیه کلاه‌جعبه‌ای ارشمیدس نامیده می‌شود: مساحت سطحی یک نوار عرض جغرافیایی به تفاوت سینوس‌های لبه‌های آن بستگی دارد، نه به تفاوت اندازه‌گیری‌شده بر حسب درجه.

مثال حل‌شده

فرض کنید مولد دو عدد تصادفی تولید کند: u = ۰٫۹۳۳۰۱۲۷ برای عرض جغرافیایی و v = ۰٫۲۵ برای طول جغرافیایی.

  • عرض جغرافیایی = arcsin(۲ × ۰٫۹۳۳۰۱۲۷ − ۱) = arcsin(۰٫۸۶۶۰۲۵۴) = ۶۰°
  • طول جغرافیایی = ۰٫۲۵ × ۳۶۰ − ۱۸۰ = -۹۰°

نتیجه ۶۰٫۰۰۰۰° شمالی و ۹۰٫۰۰۰۰° غربی است؛ نقطه‌ای نزدیک خلیج هادسون در شمال کانادا.

نمونه کد

همین دو مرحله در هر زبان برنامه‌نویسی کار می‌کنند: دو عدد تصادفی بین ۰ و ۱ تولید کنید، برای به‌دست‌آوردن عرض جغرافیایی، فرمول آرک‌سینوس را روی عدد اول اعمال کنید و برای به‌دست‌آوردن طول جغرافیایی، عدد دوم را مقیاس‌بندی کنید.

پایتون

1import random
2import math
3
4def generate_random_coordinates():
5    u = random.random()
6    v = random.random()
7    latitude = math.degrees(math.asin(2 * u - 1))
8    longitude = v * 360 - 180
9    return latitude, longitude
10

جاوااسکریپت

1function generateRandomCoordinates() {
2  const u = Math.random();
3  const v = Math.random();
4  const latitude = Math.asin(2 * u - 1) * (180 / Math.PI);
5  const longitude = v * 360 - 180;
6  return { latitude, longitude };
7}
8

نسخه ساده‌تری که مرحله آرک‌سینوس را حذف می‌کند و عرض جغرافیایی را به‌صورت random.uniform(-90, 90) انتخاب می‌کند، نوشتن آسان‌تری دارد؛ اما نقاط را نزدیک قطب‌ها متراکم می‌کند، نه اینکه آن‌ها را به‌طور یکنواخت روی سطح زمین پخش کند.

کاربردهای رایج

توسعه‌دهندگان نرم‌افزار از مختصات تصادفی برای آزمودن قابلیت‌های GPS، ترسیم نقشه و برنامه‌های مبتنی بر مکان استفاده می‌کنند، بدون اینکه داده‌های آزمایشی را دستی انتخاب کنند. طراحان بازی از آن‌ها برای تعیین نقاط ظاهرشدن یا مکان‌های شکار گنج استفاده می‌کنند. معلمان از آن‌ها برای تمرین خواندن عرض و طول جغرافیایی با دانش‌آموزان استفاده می‌کنند. پژوهشگران نیز از آن‌ها برای انتخاب مکان‌های نمونه‌برداری بی‌طرفانه در مطالعات میدانی بهره می‌گیرند، زیرا روش آرک‌سینوس از ترجیح دادن هر منطقه‌ای از کره زمین جلوگیری می‌کند.

پرسش‌های متداول

مختصات در چه قالبی هستند؟

درجه اعشاری (DD)، مانند ۴۰٫۷۱۲۸° شمالی و ۷۴٫۰۰۶۰° غربی. این قالب را بیشتر سرویس‌های نقشه، از جمله Google Maps، و دستگاه‌های GPS به کار می‌برند.

چرا این‌همه مختصات تصادفی در اقیانوس قرار می‌گیرند؟

آب حدود ۷۱٪ از سطح زمین را پوشش می‌دهد؛ بنابراین احتمال اینکه یک نقطه واقعاً تصادفی در اقیانوس قرار بگیرد، بیشتر از قرار گرفتن آن روی خشکی است. این موضوع طبیعی است و نشان می‌دهد مختصات به‌طور یکنواخت پخش شده‌اند، نه اینکه نقصی در ابزار وجود داشته باشد.

آیا می‌توانم مختصات را فقط برای یک کشور یا قاره تولید کنم؟

خیر. این ابزار نقاط را از هر جای زمین انتخاب می‌کند. برای محدود کردن نتایج به یک منطقه، پس از تولید مختصات به پالایش بیشتری نیاز است یا باید از ابزاری استفاده شود که با محدوده‌های مرزی ساخته شده باشد.

مختصات چقدر دقیق هستند؟

هر مقدار ۴ رقم پس از ممیز دارد. برای عرض جغرافیایی، این مقدار در هر نقطه از زمین تقریباً برابر با ۱۱ متر (۳۶ فوت) دقت است. برای طول جغرافیایی، همین ۴ رقم در نزدیکی استوا حدود ۱۱ متر را پوشش می‌دهد و هرچه به قطب‌ها نزدیک‌تر شویم، به فاصله کوچک‌تری مربوط می‌شود، زیرا خطوط طول جغرافیایی در آنجا به یکدیگر نزدیک‌تر می‌شوند.

آیا مختصات، مکان‌های واقعی و معتبر در جهان هستند؟

بله. هر نتیجه نقطه‌ای معتبر از نظر ریاضی روی سطح زمین است، هرچند ممکن است در اقیانوس آزاد، میان یخ‌ها یا نقطه‌ای دیگر بدون سکونتگاه نزدیک قرار داشته باشد.

چگونه درجه‌های اعشاری را به درجه، دقیقه و ثانیه (DMS) تبدیل کنم؟

بخش عدد صحیح را به‌عنوان درجه در نظر بگیرید. بخش اعشاری را در ۶۰ ضرب کنید تا دقیقه به‌دست آید. بخش اعشاری حاصل را بردارید و دوباره آن را در ۶۰ ضرب کنید تا ثانیه به‌دست آید.