17.6. Reproiectarea CRS-urilor
Notă
În această lecție, vom discuta despre modul în care Processing utilizează CRS-urile. Vom vedea, de asemenea, un algoritm foarte util: reproiectarea.
CRS-urile sunt o mare sursă de confuzie pentru utilizatorii QGIS Processing, așa că aici sunt câteva reguli generale cu privire la modul în care pot fi gestionate de către geoalgoritmi, la crearea unui nou strat.
Dacă există straturi de intrare, se va utiliza CRS-ul primului strat. Acesta este presupus a fi CRS-ul tuturor straturilor de intrare, atât timp cât este necesar ca acestea să-l aibă pe același. În cazul în care utilizați straturi cu un CRS diferit, QGIS va emite un avertisment. Observați că CRS-ul straturilor de intrare este afișat alături de numele său, în dialogul parametrilor.
If there are no input layer, it will use the project CRS, unless the algorithm contains a specific CRS field (as it happened in the last lesson with the graticule algorithm)
Deschideți proiectul corespunzător acestei lecții, și veți vedea două straturi denumite 23030 și 4326. Ambele conțin același număr de puncte, dar aflate în diferite CRS-uri (EPSG:23030 și EPSG:4326). Ele apar în același loc, deoarece QGIS este reproiectat „din zbor” în CRS-ul proiectului (EPSG:4326), ele nefiind, de fapt, unul și același strat.
Deschide algoritmul Export/Adăugare coloane de geometrie.
Acest algoritm adaugă coloane noi în tabela de atribute a unui strat vectorial. Conținutul coloanelor depinde de tipul geometriei stratului. În cazul punctelor, se vor adăuga coloane noi, conținând coordonatele X și Y ale fiecărui punct.
În lista de straturi disponibile, pe care le veți găsi în câmpul stratului de intrare, le veți vedea pe fiecare, alături de CRS-ul corespunzător. Astfel, deși apar în același loc pe canevas, ele vor fi tratate în mod diferit. Selectați stratul 4326.
Celălalt parametru al algoritmului permite setarea modului în care algoritmul folosește coordonatele, pentru a calcula noua valoare care se va adăuga la straturile rezultate. Cei mai mulți algoritmi nu au o opțiune de acest gen, și vor folosi în mod direct coordonatele. Selectați opțiunea CRS-ul Stratului pentru a folosi coordonatele așa cum sunt. Acesta este modul în care lucrează aproape toți geo-algoritmii.
Ar trebui să obțineți un nou strat, cu exact aceleași puncte ca și celelalte două. Dacă faceți clic dreapta pe numele stratului și îi deschideți proprietățile, veți vedea că folosește CRS-ul stratului de intrare, adică, EPSG:4326. Atunci când stratul este încărcat în QGIS, nu vi se va cere să introduceți CRS-ul stratului, atât timp cât QGIS îl cunoaște.
Dacă deschideți tabelul de atribute a noului strat, veți vedea că ea conține două noi câmpuri, cu coordonatele X și Y ale fiecărui punct.
Those coordinate values are given in the layer CRS, since we chose that option. However, even if you choose another option, the output CRS of the layer would have been the same, since the input CRS is used to set the CRS of the output layer. Choosing another option will cause the values to be different, but not the resulting point to change or the CRS of the output layer to be different to the CRS of the input one.
Acum, efectuați același calcul, utilizând celălalt strat. Ar trebui să găsiți stratul rezultat, randat exact în același loc ca și celelalte, având același CRS, EPSG:23030, acesta fiind CRS-ul stratului de intrare.
Dacă mergeți la tabela sa de atribute, veți vedea valori care sunt diferite de cele din primul strat pe care l-am creat.
Acest lucru se datorează faptului că datele originale sunt diferite (se folosește un alt CRS), și acele coordonate sunt preluate din ea.
Ce ar trebui să învățați din asta? Ideea principală din spatele acestor exemple este aceea că geoalgoritmii folosesc stratul așa cum se află în sursa sa de date originală, ignorând complet reproiectările pe care QGIS le-ar putea efectua înainte de randare. Cu alte cuvinte, nu aveți încredere în ceea ce vedeți pe pânză, dar aveți întotdeauna în vedere faptul că vor fi utilizate datele originale. Acest lucru nu este atât de important în acest caz, din moment ce folosim doar un singur strat la un moment dat, dar într-un algoritm care are nevoie de mai multe (cum ar fi un algoritm de decupare), straturile care par să se potrivească sau să se suprapună, ar putea fi foarte departe unul față de celălalt, atât timp cât pot avea diferite CRS-uri.
Algoritmii nu realizează nici o reproiectare (cu excepția algoritmului de reproiectare pe care îl vom vedea în continuare), de aceea, trebuie ca dvs. să vă asigurați că straturile au același CRS.
Un modul interesant, care are de-a face cu CRS-ul, este cel de reproiectare. Acesta reprezintă un caz particular, deoarece are un strat de intrare (cel de reproiectat), însă nu îi va folosi CRS-ul pentru stratul de ieșire.
Deschide algoritmul de Reproiectare a stratului.
Selectați oricare dintre straturile ca intrare, și alegeți EPSG:23029 ca CRS destinație. Rulați algoritmul și veți obține un nou strat, identic cu cel de intrare, dar cu un alt CRS. Acesta va apărea în aceeași regiune a canevasului, ca și celelalte, din moment ce QGIS îl va reproiecta din zbor, dar coordonatele sale originale sunt diferite. Puteți vedea acest lucru, prin rularea algoritmului de Exportare/Adăugare coloane de geometrie asupra acestui nou strat de intrare, și prin verificarea diferențelor dintre coordonatele adăugate și cele din tabelele de atribute ale ambelor straturi, calculate anterior.