Γεννήτρια Τυχαίων Τοποθεσιών: Δημιουργός Παγκόσμιων Συντεταγμένων
Δημιουργήστε τυχαίες γεωγραφικές συντεταγμένες με οπτική αναπαράσταση χάρτη. Τα χαρακτηριστικά περιλαμβάνουν ένα κουμπί Δημιουργίας, εμφάνιση σε δεκαδική μορφή και εύκολη αντιγραφή.
Γεννήτρια Τυχαίας Τοποθεσίας
Τεκμηρίωση
Δημιουργός Τυχαίας Τοποθεσίας
[... υπάρχον περιεχόμενο ...]
Οπτική Αναπαράσταση
Για να παρέχουμε ένα οπτικό πλαίσιο για τις παραγόμενες συντεταγμένες, υλοποιούμε ένα απλό εικονίδιο σφαίρας χρησιμοποιώντας SVG. Ακολουθεί ένα παράδειγμα για το πώς μπορεί να γίνει αυτό:
Αυτό το SVG δημιουργεί μια απλή σφαίρα με γραμμές γεωγραφικού πλάτους και μήκους, και μια κόκκινη κουκίδα που αντιπροσωπεύει την παραγόμενη τοποθεσία. Η ακριβής θέση της κουκίδας μπορεί να υπολογιστεί με βάση τις παραγόμενες συντεταγμένες.
[... υπάρχον περιεχόμενο ...]
Παραδείγματα
Ακολουθούν μερικά παραδείγματα κώδικα για τη δημιουργία τυχαίων συντεταγμένων σε διάφορες γλώσσες προγραμματισμού:
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
Υλοποίηση Κουμπιού Αντιγραφής
Για να υλοποιήσουμε τη λειτουργία του Κουμπιού Αντιγραφής, μπορούμε να χρησιμοποιήσουμε το Clipboard API. Ακολουθεί ένα απλό παράδειγμα JavaScript:
1function copyToClipboard(text) {
2 navigator.clipboard.writeText(text).then(() => {
3 alert('Οι συντεταγμένες αντιγράφηκαν στο πρόχειρο!');
4 }, (err) => {
5 console.error('Δεν ήταν δυνατή η αντιγραφή του κειμένου: ', err);
6 });
7}
8
9// Χρήση
10const copyButton = document.getElementById('copyButton');
11copyButton.addEventListener('click', () => {
12 const coordinates = document.getElementById('coordinates').textContent;
13 copyToClipboard(coordinates);
14});
15
Αυτή η συνάρτηση μπορεί να κληθεί όταν κάνετε κλικ στο Κουμπί Αντιγραφής, περνώντας τις παραγόμενες συντεταγμένες ως το κείμενο που θα αντιγραφεί.
[... υπόλοιπο υπάρχον περιεχόμενο ...]
Σχετικά Εργαλεία
Ανακαλύψτε περισσότερα εργαλεία που μπορεί να είναι χρήσιμα για τη ροή εργασίας σας