Rapsim Koordinat Dönüştürücü

Bu sistem, TUBİTAK BİLGEM’in sunduğu koordinat dönüşüm hizmetini kullanarak ED50 koordinatlarını (X, Y, Grid) sisteminden WGS84 (latitude, longitude) sistemine toplu olarak dönüştürmeyi hedefler.

sabangul67@gmail.com
Mayıs 1, 20255 dk okuma18 görüntülenme

🗺️ Tubitak Rapsimden Otomatik Koordinat Dönüşüm Aracı (ED50 → WGS84)

Excel Dosyasıyla Web Tabanlı Otomatik Dönüşüm Sistemi

🔍 Amaç Nedir?

Bu sistem, TUBİTAK BİLGEM\’in sunduğu koordinat dönüşüm hizmetini kullanarak ED50 koordinatlarını (X, Y, Grid) sisteminden WGS84 (latitude, longitude) sistemine toplu olarak dönüştürmeyi hedefler.


⚙️ Nasıl Çalışır?

Bu araç, manuel olarak web sitesine tek tek koordinat girme derdini ortadan kaldırır.
Bir Excel dosyasıyla tüm işlemi otomatikleştirir.

🔁 Genel İş Akışı:

  1. Kullanıcıdan bir Excel dosyası istenir.
  2. Dosyada:
    • B sütununda X (Sağa)
    • C sütununda Y (Sola)
    • D sütununda Grid No
      yer almalıdır.
      A sütunu isim/etiket olabilir, kullanılmaz.
  3. Script bu verileri web sayfasındaki ilgili alanlara otomatik olarak yazar.
  4. “Dönüştür” butonuna tıklar.
  5. Elde edilen WGS84 Latitude ve Longitude değerleri:
    • E sütununa (WGS84 LAT)
    • F sütununa (WGS84 LON)
      yazılır.
  6. Sonuçlar içeren yeni bir Excel dosyası otomatik olarak indirilir.

📁 Excel Dosyası Formatı

AB (X)C (Y)D (Grid No)
NoktaAdı-150050035
NoktaAdı-250250935

⚠️ Sadece B, C ve D sütunları kullanılır.
A sütunu etiket içerebilir ama dönüşümde kullanılmaz.


🧠 Teknik Altyapı

Sistem aşağıdaki teknolojileri kullanır:

  • JavaScript (Tarayıcı konsolu)
  • SheetJS (xlsx.js) – Excel dosyasını okumak ve düzenlemek için
  • Web Sayfası DOM Manipülasyonu – Formlara otomatik veri yazımı
  • Blob API – Excel dosyasını yeniden dışa aktarmak için

Kod, herhangi bir kurulum gerektirmez. Tamamen tarayıcı üzerinden çalışır.


✅ Bu JavaScript Kodunu Nasıl Çalıştıracaksın?

Hedef: .xlsx dosyasındaki ED50 koordinatlarını web sayfasında otomatik dönüştürmek ve sonucu aynı Excel\’e yazdırmak.


🧭 1. Doğru Sayfaya Git

Tarayıcını aç (Chrome önerilir) ve aşağıdaki bağlantıyı ziyaret et:

👉 https://rapsim.bilgem.tubitak.gov.tr/hizmetlerimiz/teknik-etkilesim-analizi/koordinat-donusturucu/

Bu sayfa, ED50 → WGS84 dönüşümünü yapan TÜBİTAK\’ın resmi arayüzüdür.


🧑‍💻 2. Geliştirici Konsolu Aç (F12)

Açtığın web sayfasında:

  • Klavyeden F12 tuşuna bas.
  • Veya sağ tıkla → \”İncele (Inspect)\” seçeneğine tıkla.
  • Üstte açılan panelde \”Console\” sekmesine geç.

Burası, JavaScript kodlarını yazabileceğimiz tarayıcı konsoludur.


📋 3. JavaScript Kodunu Yapıştır

Sana özel hazırlanmış tam otomatik dönüşüm script\’ini buraya kopyala ve yapıştır.

İşte Kod:

// SheetJS (xlsx.js) kütüphanesini yükle
const script = document.createElement(‘script’);
script.src = ‘https://cdnjs.cloudflare.com/ajax/libs/xlsx/0.18.5/xlsx.full.min.js’;
document.body.appendChild(script);

script.onload = () => {
    function xlsxYukleVeGuncelle() {
        const input = document.createElement(“input”);
        input.type = “file”;
        input.accept = “.xlsx”;

        input.onchange = async (event) => {
            const file = event.target.files[0];
            if (!file) return alert(“Dosya seçilmedi!”);

            const reader = new FileReader();
            reader.onload = async (e) => {
                const data = new Uint8Array(e.target.result);
                const workbook = XLSX.read(data, { type: ‘array’ });
                const sheetName = workbook.SheetNames[0];
                const sheet = workbook.Sheets[sheetName];
                const rows = XLSX.utils.sheet_to_json(sheet, { header: 1 });

                // Başlık varsa koru, yoksa boş geç
                const header = rows[0];
                if (header.length < 5) {
                    header[4] = “WGS84 LAT”;
                    header[5] = “WGS84 LON”;
                }

                const delay = ms => new Promise(resolve => setTimeout(resolve, ms));

                for (let i = 1; i < rows.length; i++) {
                    const row = rows[i];
                    const x = parseFloat(row[1]); // B
                    const y = parseFloat(row[2]); // C
                    const grid = parseInt(row[3]); // D

                    if (!x || !y || !grid) continue;

                    document.getElementById(“ed50x”).value = x;
                    document.getElementById(“ed50y”).value = y;
                    document.getElementById(“gridno”).value = grid;
                    document.getElementById(“btnconverted502wgs84”).click();

                    await delay(1000);

                    const lat = document.getElementById(“wgs84lat”).value;
                    const lon = document.getElementById(“wgs84lon”).value;

                    // E ve F sütunlarına yaz (4 ve 5 index)
                    row[4] = lat;
                    row[5] = lon;

                    console.log(`Satır ${i}: X=${x}, Y=${y}, Grid=${grid} → LAT=${lat}, LON=${lon}`);
                }

                const newSheet = XLSX.utils.aoa_to_sheet(rows);
                const newWorkbook = XLSX.utils.book_new();
                XLSX.utils.book_append_sheet(newWorkbook, newSheet, sheetName);

                XLSX.writeFile(newWorkbook, “donusum_sonuclu_sagul.xlsx”);
                alert(“Yeni Excel dosyan indirildi ✅”);
            };

            reader.readAsArrayBuffer(file);
        };

        input.click();
    }

    xlsxYukleVeGuncelle();
};

Kodun tamamını seç → Ctrl + C
Console’a yapıştır → Ctrl + V
Sonra Enter tuşuna bas.

🟢 Kod çalışmaya başlayacak ve ekranına bir dosya seçici (file picker) çıkacak.


📁 4. Excel Dosyasını Seç

Kod, senden .xlsx uzantılı bir dosya seçecek:

A (Ad)B (X)C (Y)D (Grid No)
Nokta-150050035

Yalnızca B, C, D sütunları kullanılır.
A sütunundaki ad/etiket istersen olur, kullanılmaz.


🌀 5. Kod Otomatik Olarak Şu İşlemleri Yapar:

Her satır için:

  1. X, Y, Grid No alanlarına koordinatları yazar
  2. \”ED50 → WGS84\” dönüşüm butonuna tıklar
  3. Sayfadaki sonuç alanlarından Latitude/Longitude değerini alır
  4. Excel\’de ilgili satırın E ve F sütunlarına bu değerleri yazar
  5. Tüm satırlar tamamlandığında, Excel dosyasını otomatik indirir
    → Dosya adı: donusum_sonuclu.xlsx

📥 6. Sonuç Dosyasını Al

Kod çalışmasını bitirdiğinde, tarayıcınız otomatik olarak yeni bir .xlsx dosyası indirecek.
Bu dosyada artık E ve F sütunlarında WGS84 LAT/LON değerleri olacak.


⛑️ Sık Karşılaşılan Sorular:

❓ “Hiçbir şey olmuyor”
🔸 Muhtemelen kod eksik yapıştırıldı.
🔸 Sayfa yüklenmemiş olabilir. Önce sayfa tam yüklensin.
🔸 F12 → Console kısmında hata varsa paylaş, yardımcı olurum.

❓ “Bekleme süresi çok kısa/uzun”
🔸 Kodda şu satırı bul:

javascriptKopyalaDüzenleawait delay(2000);

İstersen bu süreyi 1000 (1 saniye) ya da 3000 (3 saniye) yaparak hızını ayarlayabilirsin.


🔐 Güvenli mi?

Evet. Kod:

  • Tarayıcıda çalışır
  • Hiçbir veri dışarı gönderilmez
  • Excel dosyan senin bilgisayarında okunur ve tekrar sana kaydedilir

🎯 Kısaca: \”Yapılacaklar Listesi\”

✅ [ ] Web sayfasına git
✅ [ ] F12 → Console aç
✅ [ ] Kodu yapıştır
✅ [ ] Excel dosyanı seç
✅ [ ] Sonuçları indir!


🧪 Uygulama Adımları (5 Dakikada Hazır!)

  1. Web sayfasını aç
    TÜBİTAK Koordinat Dönüştürücü
  2. F12 ile Geliştirici Konsolunu aç
    (Tarayıcıda: Sağ tık → İncele → Console sekmesi)
  3. Hazırlanan script\’i konsola yapıştır ve Enter\’a bas.
  4. Açılan dosya penceresinden .xlsx dosyasını seç.
  5. Script her satır için dönüşüm işlemini yapar ve sonuçları Excel\’de E ve F sütunlarına yazar.
  6. İşlem bitince otomatik olarak yeni bir dosya indirilir:
    donusum_sonuclu.xlsx

📝 Sonuç Excel Dosyası Örneği:

Nokta AdıXYGrid NoWGS84 LATWGS84 LON
Nokta-15005003539.90923832.853912
Nokta-25025093539.91103732.857142

✅ Avantajları

  • ⚡ Hızlı ve otomatik: 100’lerce koordinat tek tıklamayla işlenebilir.
  • ⛔ Manuel hatayı ortadan kaldırır
  • 🧩 Herhangi bir yazılım kurulumu gerekmez
  • 📊 Orijinal Excel yapısını korur, sadece yeni sütunlar ekler.

💬 Sık Sorulan Sorular (SSS)

Q: Sayfa kapanırsa dönüşümler bozulur mu?
A: Evet, işlem tarayıcı içinde gerçekleştiği için sayfa kapanırsa işlem durur. Sayfayı açık tutmalısınız.

Q: 2000 koordinat da işlenebilir mi?
A: Evet, ama bekleme süresi satır başı 2 saniye olduğundan işlem süresi artar. Script’e küçük optimizasyonlar eklenebilir.

Q: Aynı Excel’e yazar mı?
A: Evet, E ve F sütunlarına yeni değerleri ekler. Orijinal veriyi bozmaz.


🚀 Gelişmiş Versiyonlar?

İstersen bu sistemin:

  • ✅ Python + Selenium ile tümüyle arka planda çalışan hali
  • ✅ Sonuçları KML/GeoJSON gibi dosyalara yazan hali
  • ✅ Leaflet.js veya Google Maps ile haritada gösteren hali
    da geliştirilebilir.

🚀 Tarayıcıda Excel Destekli Koordinat Dönüşümü! (ED50 → WGS84)

Manuel koordinat dönüşümleriyle zaman kaybetmeye son!
Tarayıcıda çalışan bir JavaScript koduyla artık:

📌 Excel dosyasındaki ED50 koordinatlarını,
📌 TÜBİTAK’ın web tabanlı dönüşüm arayüzünü kullanarak,
📌 Otomatik olarak WGS84\’e çevirip,
📌 Sonuçları yine Excel’e kaydedebiliyoruz!


Nasıl mı çalışıyor?

🔹 Sayfayı açıyorsunuz
🔹 F12 > Console diyorsunuz
🔹 Kodu yapıştırıyorsunuz
🔹 Excel dosyanızı seçiyorsunuz
🔹 Gerisini kod hallediyor:
→ Her satırı web formuna yazıyor
→ “Dönüştür” butonuna tıklıyor
→ Sonuçları Excel’e ekliyor
→ Ve dosya otomatik iniyor ✅


Yazar

sabangul67@gmail.com

Bu yazarın yayınladığı diğer içerikleri inceleyebilirsiniz.

Tüm yazıları