Whiz Tools

ランダムロケーションジェネレーター

ランダムロケーションジェネレーター

[... 既存のコンテンツ ...]

ビジュアル表現

生成された座標に視覚的なコンテキストを提供するために、SVGを使用してシンプルな地球儀アイコンを実装します。以下は、これを実現する方法の例です:

このSVGは、緯度と経度の線を持つシンプルな地球儀を作成し、生成された位置を示す赤い点を表示します。点の正確な位置は、生成された座標に基づいて計算できます。

[... 既存のコンテンツ ...]

さまざまなプログラミング言語でランダム座標を生成するためのコード例を以下に示します:

import random

def generate_random_coordinates():
    latitude = random.uniform(-90, 90)
    longitude = random.uniform(-180, 180)
    return latitude, longitude

lat, lon = generate_random_coordinates()
print(f"{lat:.4f}° {'N' if lat >= 0 else 'S'}, {abs(lon):.4f}° {'E' if lon >= 0 else 'W'}")
function generateRandomCoordinates() {
  const latitude = Math.random() * 180 - 90;
  const longitude = Math.random() * 360 - 180;
  return { latitude, longitude };
}

const { latitude, longitude } = generateRandomCoordinates();
console.log(`${latitude.toFixed(4)}° ${latitude >= 0 ? 'N' : 'S'}, ${Math.abs(longitude).toFixed(4)}° ${longitude >= 0 ? 'E' : 'W'}`);
import java.util.Random;

public class RandomCoordinateGenerator {
    public static double[] generateRandomCoordinates() {
        Random random = new Random();
        double latitude = random.nextDouble() * 180 - 90;
        double longitude = random.nextDouble() * 360 - 180;
        return new double[]{latitude, longitude};
    }

    public static void main(String[] args) {
        double[] coordinates = generateRandomCoordinates();
        System.out.printf("%.4f° %s, %.4f° %s%n",
            Math.abs(coordinates[0]), coordinates[0] >= 0 ? "N" : "S",
            Math.abs(coordinates[1]), coordinates[1] >= 0 ? "E" : "W");
    }
}
#include <iostream>
#include <cstdlib>
#include <ctime>
#include <iomanip>

std::pair<double, double> generateRandomCoordinates() {
    double latitude = (static_cast<double>(rand()) / RAND_MAX) * 180 - 90;
    double longitude = (static_cast<double>(rand()) / RAND_MAX) * 360 - 180;
    return {latitude, longitude};
}

int main() {
    srand(time(0));
    auto [lat, lon] = generateRandomCoordinates();
    std::cout << std::fixed << std::setprecision(4)
              << std::abs(lat) << "° " << (lat >= 0 ? "N" : "S") << ", "
              << std::abs(lon) << "° " << (lon >= 0 ? "E" : "W") << std::endl;
    return 0;
}
def generate_random_coordinates
  latitude = rand(-90.0..90.0)
  longitude = rand(-180.0..180.0)
  [latitude, longitude]
end

lat, lon = generate_random_coordinates
puts format("%.4f° %s, %.4f° %s", 
            lat.abs, lat >= 0 ? 'N' : 'S', 
            lon.abs, lon >= 0 ? 'E' : 'W')
<?php
function generateRandomCoordinates() {
    $latitude = mt_rand(-90 * 10000, 90 * 10000) / 10000;
    $longitude = mt_rand(-180 * 10000, 180 * 10000) / 10000;
    return [$latitude, $longitude];
}

list($lat, $lon) = generateRandomCoordinates();
printf("%.4f° %s, %.4f° %s\n", 
       abs($lat), $lat >= 0 ? 'N' : 'S', 
       abs($lon), $lon >= 0 ? 'E' : 'W');
?>

コピー ボタンの実装

コピー ボタン機能を実装するために、Clipboard APIを使用できます。以下はシンプルなJavaScriptの例です:

function copyToClipboard(text) {
  navigator.clipboard.writeText(text).then(() => {
    alert('座標がクリップボードにコピーされました!');
  }, (err) => {
    console.error('テキストをコピーできませんでした: ', err);
  });
}

// 使用法
const copyButton = document.getElementById('copyButton');
copyButton.addEventListener('click', () => {
  const coordinates = document.getElementById('coordinates').textContent;
  copyToClipboard(coordinates);
});

この関数は、コピー ボタンがクリックされたときに呼び出され、生成された座標をコピーするテキストとして渡されます。

[... 残りの既存のコンテンツ ...]

Loading related tools...
Feedback