Chuyển đến nội dung

random-location-generator

Tạo tọa độ địa lý ngẫu nhiên ngay lập tức. Trình tạo vị trí ngẫu nhiên miễn phí tạo ra các giá trị vĩ độ và kinh độ hợp lệ với bản đồ tương tác. Hoàn hảo để kiểm thử ứng dụng.

Trình Tạo Vị Trí Ngẫu Nhiên

Máy tính tải...
📚

Tài liệu hướng dẫn

Bộ tạo vị trí ngẫu nhiên là công cụ tạo ra một cặp tọa độ địa lý ngẫu nhiên: một vĩ độ và một kinh độ. Mỗi kết quả đánh dấu một điểm có thể nằm ở bất kỳ đâu trên bề mặt Trái Đất, từ biển khơi đến đường phố thành phố hoặc đỉnh núi.

Công cụ tạo ra gì

Mỗi lần nhấp tạo ra một giá trị vĩ độ từ -90° đến 90° và một giá trị kinh độ từ -180° đến 180°. Công cụ hiển thị cả hai số theo độ thập phân, chẳng hạn như 60,0000° Bắc, 90,0000° Tây, rồi đánh dấu điểm đó trên một bản đồ thế giới đơn giản. Vĩ độ âm có nghĩa là điểm nằm ở phía nam đường xích đạo; kinh độ âm có nghĩa là điểm nằm ở phía tây kinh tuyến gốc, đường kinh tuyến đi qua Greenwich, Vương quốc Anh.

Cách sử dụng bộ tạo vị trí ngẫu nhiên

  1. Nhấn nút Tạo.
  2. Đọc tọa độ hiển thị bên dưới nút, cùng hướng Bắc/Nam và Đông/Tây.
  3. Kiểm tra điểm đánh dấu trên bản đồ thế giới để xem đại khái điểm đó nằm ở đâu.
  4. Nhấn Sao chép để sao chép tọa độ và sử dụng ở nơi khác.
  5. Nhấn lại Tạo để có một điểm mới. Không giới hạn số lần thực hiện thao tác này.
  6. Nhấn Đặt lại để xóa kết quả và bắt đầu lại.

Cách tính tọa độ (công thức)

Kinh độ rất đơn giản: nó được chọn theo phân phối đều, nghĩa là mọi giá trị từ -180° đến 180° đều có khả năng xuất hiện như nhau. Công thức là:

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

trong đó λ là kinh độ tính theo độ và v là một số ngẫu nhiên nằm giữa 0 và 1.

Vĩ độ hoạt động khác, và đây là phần mọi người thường tính sai. Công thức được sử dụng là:

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

trong đó φ là vĩ độ, được chuyển đổi từ radian sang độ, u là một số ngẫu nhiên riêng biệt nằm giữa 0 và 1, còn arcsin là hàm ngược của hàm sin.

Vì sao không chọn vĩ độ bằng một số ngẫu nhiên đơn thuần

Vòng vĩ tuyến gần các cực có chu vi ngắn. Đường tròn vĩ độ ở xích đạo thì dài, quấn quanh gần như toàn bộ hành tinh. Nếu vĩ độ được chọn bằng một số ngẫu nhiên đơn thuần từ -90 đến 90, mỗi độ vĩ độ sẽ nhận một phần kết quả bằng nhau, dù các đường tròn gần cực bao phủ diện tích bề mặt Trái Đất nhỏ hơn nhiều so với các đường tròn gần xích đạo. Điều đó sẽ khiến quá nhiều điểm tập trung gần các cực.

Công thức arcsin khắc phục vấn đề này. Nó phân bố các điểm sao cho mọi phần nhỏ trên bề mặt Trái Đất đều có xác suất được chọn như nhau, bất kể phần đó gần cực đến mức nào. Ý tưởng này được gọi là chọn điểm trên mặt cầu và bắt nguồn từ một quy tắc đôi khi được gọi là định lý hộp mũ của Archimedes: diện tích bề mặt của một dải vĩ độ phụ thuộc vào hiệu giữa các sin của hai biên dải, chứ không phụ thuộc vào hiệu số độ.

Ví dụ minh họa

Giả sử bộ tạo vẽ hai số ngẫu nhiên: u = 0,9330127 cho vĩ độ và v = 0,25 cho kinh độ.

  • vĩ độ = arcsin(2 × 0,9330127 − 1) = arcsin(0,8660254) = 60°
  • kinh độ = 0,25 × 360 − 180 = -90°

Kết quả là 60,0000° Bắc, 90,0000° Tây, một điểm gần vịnh Hudson ở miền bắc Canada.

Ví dụ mã

Hai bước tương tự hoạt động trong mọi ngôn ngữ lập trình: tạo hai số ngẫu nhiên từ 0 đến 1, áp dụng công thức arcsin cho số thứ nhất để nhận vĩ độ và điều chỉnh tỷ lệ của số thứ hai để nhận kinh độ.

Python

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

JavaScript

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

Một phiên bản đơn giản hơn, bỏ qua bước arcsin và chọn vĩ độ là random.uniform(-90, 90), dễ viết hơn nhưng khiến các điểm tập trung gần các cực thay vì phân bố đều trên bề mặt Trái Đất.

Các ứng dụng phổ biến

Các nhà phát triển phần mềm sử dụng tọa độ ngẫu nhiên để kiểm thử tính năng GPS, việc hiển thị bản đồ và các ứng dụng dựa trên vị trí mà không phải tự chọn dữ liệu kiểm thử. Nhà thiết kế trò chơi dùng chúng để đặt điểm xuất hiện hoặc địa điểm săn tìm kho báu. Giáo viên dùng chúng để luyện đọc vĩ độ và kinh độ với học sinh. Các nhà nghiên cứu dùng chúng để chọn những vị trí lấy mẫu không thiên lệch cho các nghiên cứu thực địa, vì phương pháp arcsin tránh ưu tiên bất kỳ khu vực nào trên địa cầu.

Các câu hỏi thường gặp

Tọa độ có định dạng gì?

Độ thập phân (DD), chẳng hạn như 40,7128° Bắc, 74,0060° Tây. Đây là định dạng được hầu hết dịch vụ bản đồ, bao gồm Google Maps, và các thiết bị GPS sử dụng.

Vì sao rất nhiều tọa độ ngẫu nhiên rơi xuống đại dương?

Nước bao phủ khoảng 71% bề mặt Trái Đất, vì vậy một điểm thực sự ngẫu nhiên có khả năng rơi xuống đại dương cao hơn là rơi trên đất liền. Đây là điều được dự đoán và xác nhận rằng các tọa độ được phân bố đều, chứ không phải lỗi của công cụ.

Tôi có thể tạo tọa độ chỉ cho một quốc gia hoặc lục địa không?

Không. Công cụ này chọn điểm từ mọi nơi trên Trái Đất. Để giới hạn kết quả trong một khu vực, cần lọc thêm tọa độ sau khi tạo hoặc sử dụng một công cụ được xây dựng với các giới hạn ranh giới.

Tọa độ chính xác đến mức nào?

Mỗi giá trị có 4 chữ số sau dấu thập phân. Đối với vĩ độ, độ chính xác đó tương đương khoảng 11 mét (36 bộ) ở bất kỳ đâu trên Trái Đất. Đối với kinh độ, cùng 4 chữ số đó bao phủ khoảng 11 mét gần xích đạo, giảm xuống còn khoảng cách nhỏ hơn khi tiến gần các cực, vì các đường kinh độ gần nhau hơn ở đó.

Các tọa độ có phải là những vị trí có thật và hợp lệ trên thế giới không?

Có. Mỗi kết quả là một điểm hợp lệ về mặt toán học trên bề mặt Trái Đất, dù điểm đó có thể nằm giữa biển khơi, trên băng hoặc tại một nơi khác không có khu dân cư gần đó.

Làm thế nào để chuyển độ thập phân sang độ, phút và giây (DMS)?

Lấy phần nguyên làm số độ. Nhân phần thập phân với 60 để được số phút. Lấy phần thập phân của kết quả đó rồi nhân tiếp với 60 để được số giây.