Generador de Localitzacions Aleatòries: Creador de Coordenades Globals
Genera coordenades geogràfiques aleatòries amb una representació visual del mapa. Les característiques inclouen un botó de Generar, visualització en format decimal i còpia fàcil.
Generador de Localitzacions Aleatòries
Documentació
Generador de Localitzacions Aleatòries
[... contingut existent ...]
Representació Visual
Per proporcionar un context visual per a les coordenades generades, implementem una icona simple de globe utilitzant SVG. Aquí teniu un exemple de com es pot fer:
Aquesta SVG crea un globe simple amb línies de latitud i longitud, i un punt vermell que representa la localització generada. La posició exacta del punt es pot calcular en funció de les coordenades generades.
[... contingut existent ...]
Exemples
Aquí teniu alguns exemples de codi per generar coordenades aleatòries en diversos llenguatges de programació:
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
Implementació del Botó de Copia
Per implementar la funcionalitat del Botó de Copia, podem utilitzar l'API del Portapapers. Aquí teniu un exemple senzill en JavaScript:
1function copyToClipboard(text) {
2 navigator.clipboard.writeText(text).then(() => {
3 alert('Coordenades copiades al portapapers!');
4 }, (err) => {
5 console.error('No s\'ha pogut copiar el text: ', err);
6 });
7}
8
9// Ús
10const copyButton = document.getElementById('copyButton');
11copyButton.addEventListener('click', () => {
12 const coordinates = document.getElementById('coordinates').textContent;
13 copyToClipboard(coordinates);
14});
15
Aquesta funció es pot cridar quan es fa clic al Botó de Copia, passant les coordenades generades com el text a copiar.
[... resta del contingut existent ...]
Eines Relacionades
Descobreix més eines que podrien ser útils per al teu flux de treball