Burada verilen cevapların birçoğu artık QGIS 3 için seçenek değildir ve / veya yalnızca vektör dosyalarının doğrusal olarak dönüştürülmesine izin verilir. Bu OP'nin sorusuna cevap verebilir, ancak bu gönderiye bakanlar diğerleri coğrafi referans vektör dosyaları için başka dönüşüm seçenekleri de isteyebilirler.
Coğrafi referans vektör dosyaları için bazı çözümlerle ilgili sorunlar:
QgsAffine eklentisi yalnızca doğrusal dönüşümlere izin verir. Bu, vektör dosyasını ölçekleyebilir, döndürebilir ve taşıyabilir, ancak vektör dosyasını bükemez veya bükemez. Tarama dosyaları için Georeferencer daha fazla seçenek sunar ve ikinci dereceden polinom ve ince plaka spline da dahil olmak üzere çeşitli dönüşümler için izin verir. Ayrıca, qgsAffine eklentisinin hala QGIS 3'te mevcut olduğu görünmüyor.
GRASS modülü v.transform, qgsAffine eklentisine benzer ve yalnızca doğrusal dönüşümlere izin verir.
Vector Bender eklentisi iyi bir seçenektir, ancak QGIS 3'e tam olarak taşınmamıştır, bu nedenle şu anda bir seçenek değildir. Artık korunuyor gibi görünmüyor.
HeikkiVesanto'nun gönderisinde önerildiği gibi ogr2ogr kullanmak iyi bir seçenektir. GCP'leri (Yer Kontrol Noktaları) kullanabilmenizi ve ne tür bir dönüşüm istediğinizi belirtmenizi sağlar. Bunun nasıl yapılacağına ilişkin hiçbir talimat bulamadım, bu yüzden aşağıda bazı talimatları da ekledim:
GCP çiftleri kümesi oluşturun; bir nokta eoseoferenced vektör dosyasındaki orijinal konumdur ve diğer nokta georeferenced çalışma alanınızdaki istenen konumdur.
GSO'ları üretmenin çeşitli yolları vardır. QGIS'de Georeferencer GDAL eklentisini kullandım. Bu, Eklenti yöneticisi kullanılarak yüklendikten sonra Raster açılır menüsünde kullanılabilir. Yalnızca raster dosyalar üzerinde çalışır, bu yüzden önce vektör dosyasını bir raster dosyasına dönüştürmelisiniz. Bu "İşleme Araç Kutusu: GDAL: Vektör dönüşüm: Rasterleştir (rasterden vektöre)" ile mümkündür. Çözünürlüğü vektör dosyasının özelliklerini görmenize izin veren sayıya ayarlayın.
Georeferencer, birçok GCP noktası eklemenizi sağlayan hoş bir arayüze sahiptir. Ayrıca farklı dönüşümleri test edebilir ve hangisinin en iyi sonucu verdiğini görebilirsiniz. Ayrıca, GCP puanlarınızdan herhangi birinin, artıklarına bakarak, hatalı olup olmadıklarını görebilirsiniz. Tüm GCP puanlarınızı ekledikten ve çıktının hoşunuza gittiğini kontrol ettikten sonra, orijinal vektör dosyasını georeferencing için kullanmak üzere GCP dosyasını Georeferencer'dan dışa aktarabilirsiniz.
GCP dosyasının aşağıdaki biçimde olması gerekiyor. İstediğiniz kadar GCP noktası ekleyebilirsiniz, her biri bir -gcp ile devam eder ve bir boşlukla ayrılır. Bunu 800+ GCP puanıyla yaptım ve harika çalıştı.
-gcp <ungeoref_x1> <ungeoref_y1> <georef_x1> <georef_y1> -gcp <ungeoref_x2> <ungeoref_y2> <georef_x2> <georef_y2>
GCP puanlarını doğru formata dönüştürmenin çeşitli yolları vardır. Bunları Excel'e bir csv dosyası olarak içe aktardım ve her nokta için doğru formatın çıktısını alacak bir sütun oluşturdum. Sonra bu sütunu TextEdit'e yapıştırdım ve satırın sonunu boşluklarla değiştirdim.
Georeference yapmak istediğiniz vektör dosyası, çalışma alanınızla aynı SRS olması gereken son georeferenced dosya için istediğiniz aynı SRS kullanılarak çalışma alanınıza alınmalıdır. İlk başta farklı bir SRS kullandıysa, olması gereken yerden uzun bir yol olabilir, ancak dönüşüm onu doğru yere taşıyacaktır.
"İşleme Araç Kutusu: GDAL: Vektör dönüşüm: Format dönüştürme" ile ogr2ogr'a erişin. Bu, georeference yapmak istediğiniz vektör dosyasını ve çıkış dosyanızı seçmenizi sağlar. "Ek oluşturma seçenekleri" alanına, hangi dönüşüm türünü istediğinizi belirten bir komut ve ardından tüm GCP puanlarınızın bulunduğu satırı ekleyin.
Farklı dönüşüm türleri için komutlar şunları içerir:
- Doğrusal için "-order 1"
- ikinci dereceden polinom için "-order 2"
- üçüncü dereceden polinom için "-order 3"
- İnce Plakalı Spline için "-tps".
Örneğin, "Ek oluşturma seçenekleri" alanına eklenen kod şöyle görünebilir:
-order 2 -gcp <ungeoref_x1> <ungeoref_y1> <georef_x1> <georef_y1> -gcp <ungeoref_x2> <ungeoref_y2> <georef_x2> <georef_y2>