Generator naključnih lokacij: Ustvarjalec globalnih koordinat
Ustvarite naključne geografske koordinate z vizualno predstavitvijo na zemljevidu. Značilnosti vključujejo gumb za generiranje, prikaz v decimalnem formatu in enostavno kopiranje.
Generator naključnih lokacij
Dokumentacija
Generiranje naključnih lokacij
[... obstoječa vsebina ...]
Vizualna predstavitev
Da bi zagotovili vizualni kontekst za generirane koordinate, implementiramo preprosto ikono zemeljske krogle z uporabo SVG. Tukaj je primer, kako to lahko storimo:
Ta SVG ustvari preprosto zemeljsko kroglo z latitudinami in longitudinami ter rdečo piko, ki predstavlja generirano lokacijo. Natančna pozicija pike se lahko izračuna na podlagi generiranih koordinat.
[... obstoječa vsebina ...]
Primeri
Tukaj je nekaj primerov kode za generiranje naključnih koordinat v različnih programskih jezikih:
1import random
2
3def generate_random_coordinates():
4 latitude = random.uniform(-90, 90)
5 longitude = random.uniform(-180, 180)
6 return latitude, longitude
7
8lat, lon = generate_random_coordinates()
9print(f"{lat:.4f}° {'N' if lat >= 0 else 'S'}, {abs(lon):.4f}° {'E' if lon >= 0 else 'W'}")
10
1function generateRandomCoordinates() {
2 const latitude = Math.random() * 180 - 90;
3 const longitude = Math.random() * 360 - 180;
4 return { latitude, longitude };
5}
6
7const { latitude, longitude } = generateRandomCoordinates();
8console.log(`${latitude.toFixed(4)}° ${latitude >= 0 ? 'N' : 'S'}, ${Math.abs(longitude).toFixed(4)}° ${longitude >= 0 ? 'E' : 'W'}`);
9
1import java.util.Random;
2
3public class RandomCoordinateGenerator {
4 public static double[] generateRandomCoordinates() {
5 Random random = new Random();
6 double latitude = random.nextDouble() * 180 - 90;
7 double longitude = random.nextDouble() * 360 - 180;
8 return new double[]{latitude, longitude};
9 }
10
11 public static void main(String[] args) {
12 double[] coordinates = generateRandomCoordinates();
13 System.out.printf("%.4f° %s, %.4f° %s%n",
14 Math.abs(coordinates[0]), coordinates[0] >= 0 ? "N" : "S",
15 Math.abs(coordinates[1]), coordinates[1] >= 0 ? "E" : "W");
16 }
17}
18
1#include <iostream>
2#include <cstdlib>
3#include <ctime>
4#include <iomanip>
5
6std::pair<double, double> generateRandomCoordinates() {
7 double latitude = (static_cast<double>(rand()) / RAND_MAX) * 180 - 90;
8 double longitude = (static_cast<double>(rand()) / RAND_MAX) * 360 - 180;
9 return {latitude, longitude};
10}
11
12int main() {
13 srand(time(0));
14 auto [lat, lon] = generateRandomCoordinates();
15 std::cout << std::fixed << std::setprecision(4)
16 << std::abs(lat) << "° " << (lat >= 0 ? "N" : "S") << ", "
17 << std::abs(lon) << "° " << (lon >= 0 ? "E" : "W") << std::endl;
18 return 0;
19}
20
1def generate_random_coordinates
2 latitude = rand(-90.0..90.0)
3 longitude = rand(-180.0..180.0)
4 [latitude, longitude]
5end
6
7lat, lon = generate_random_coordinates
8puts format("%.4f° %s, %.4f° %s",
9 lat.abs, lat >= 0 ? 'N' : 'S',
10 lon.abs, lon >= 0 ? 'E' : 'W')
11
1<?php
2function generateRandomCoordinates() {
3 $latitude = mt_rand(-90 * 10000, 90 * 10000) / 10000;
4 $longitude = mt_rand(-180 * 10000, 180 * 10000) / 10000;
5 return [$latitude, $longitude];
6}
7
8list($lat, $lon) = generateRandomCoordinates();
9printf("%.4f° %s, %.4f° %s\n",
10 abs($lat), $lat >= 0 ? 'N' : 'S',
11 abs($lon), $lon >= 0 ? 'E' : 'W');
12?>
13
Implementacija gumba za kopiranje
Za implementacijo funkcionalnosti gumba za kopiranje lahko uporabimo Clipboard API. Tukaj je preprost primer v JavaScriptu:
1function copyToClipboard(text) {
2 navigator.clipboard.writeText(text).then(() => {
3 alert('Koordinate so bile kopirane v odložišče!');
4 }, (err) => {
5 console.error('Kopiranje besedila ni uspelo: ', err);
6 });
7}
8
9// Uporaba
10const copyButton = document.getElementById('copyButton');
11copyButton.addEventListener('click', () => {
12 const coordinates = document.getElementById('coordinates').textContent;
13 copyToClipboard(coordinates);
14});
15
Ta funkcija se lahko pokliče, ko je gumb za kopiranje kliknjen, in prenese generirane koordinate kot besedilo, ki ga je treba kopirati.
[... preostala obstoječa vsebina ...]
Povezana orodja
Odkrijte več orodij, ki bi lahko bila koristna za vaš delovni proces