Am un set de date de caracteristici care folosește GCS_WGS_1984 ca sistem de coordonate geografice. Include câteva clase de caracteristici.

Acest set de date de caracteristici este el însuși într-o geodatabase de fișiere care conține încă câteva clase de caracteristici în rădăcina gdb. Una dintre acestea este o clasă de caracteristici numită „puncte” care folosește și GCS_WGS_1984 ca sistem de coordonate.

M-am gândit că ar fi banal să folosim ArcCatalog pentru a trage clasa de caracteristici din rădăcina gdb în setul de date de caracteristici, deoarece au același sistem de coordonate. Din păcate, ArcGIS oferă un dialog de eroare care spune:

Failed to paste points The spatial references do not match 

De ce nu reușește acest lucru? Dacă GCS-ul clasei de caracteristici și setul de date de caracteristici sunt aceleași, nu ar trebui să funcționeze? Am verificat acest lucru prin intermediul dialogurilor, precum și exportând fișierul prj atât pentru setul de date, cât și pentru clasă și folosind un instrument diff pentru a compara cele două. Sunt identice.

Este referința spațială a unei clase de caracteristici diferită de sistemul de coordonate / proiecție?

Încercarea de a copia clasa de caracteristici în setul de date de caracteristici ținând apăsat ctrl în timp ce trageți rezultatele în ArcCatalog se prăbușește de fiecare dată (rușine pentru ESRI).

Cred că aș putea încerca mijloace alternative de mutare a claselor de caracteristici. Utilizați CopyFeatures în setul de date. Proiectați din clasa de caracteristici într-o nouă clasă de caracteristici în setul de date de caracteristici?

Comentarii

  • Puteți posta fișierul gdb undeva? Poate că ștergeți toate caracteristicile sau unele dintre ele dacă este mare, sună ca și cum ar putea fi reprodus chiar și cu elemente goale goale.
  • Mi-aș dori să am timp să rămân în jos la fiecare mică ciudățenie pe care o întâlnesc cu ArcGIS, de multe ori Trebuie doar să trăiesc cu el și să găsesc următoarea soluție cel puțin plăcută. Am folosit Managementul datelor – > Copy Feature pentru a copia într-o nouă clasă de caracteristici (denumită temporar), ștearsă vechea clasă de caracteristici, redenumită nouă clasă de caracteristici pentru a se potrivi cu cea veche. Utilizarea ArcGIS nu ar trebui ‘ să necesite o diplomă în testarea software-ului. = (
  • ” nu ar trebui să ‘ să necesite o diplomă în testarea software ” , chat.stackexchange.com/transcript/message/1116371
  • este doar numele , se pot potrivi, dar dacă au un nume diferit, elimină acest mesaj, ignorați-l.

Răspundeți

Sistemul de coordonate același nu este întotdeauna un sistem de coordonate identic . Am întâlnit situații în care unele operațiuni și instrumente de geoprocesare cred că clasele de caracteristici nu au un sistem de coordonate comun, deoarece denumirea descriptivă a proiecției diferă („Yukon Albers” vs „Albers – custom”), deși parametrii sunt identici sau din cauza pozițiilor zecimale diferite (fals northing 500000.00 vs 500000.0000).

Ce fac de obicei este asigurat că sistemele de coordonate Feature Dataset (și F.class) sunt create cu fișierul nostru standard .prj plasat în partea de sus a C:\path\to\ArcGIS\Desktop10.0\Coordinate Systems (face ca CS-ul să fie disponibil cu mai puține clicuri) și / sau să copiați CS-ul dintr-un șablon principal de clasă de caracteristici stocat undeva la îndemână.

Parțial ca răspuns la acest lucru problema, am, de asemenea, un set de date de funcții gol (D:\s.gdb\_template) prin care canalizez toate datele noastre ca un filtru de prim pas înainte de a face orice altceva cu ele. Printre un sistem de coordonate comun, acest lucru asigură, de asemenea, precizia și domeniul spațial etc. sunt identice.

Actualizare: Consultați răspunsul Andy despre utilizarea python, doar 2 linii, pentru a copia sistemul de referință spațială a setului de date funcționale dintr-o clasă de caracteristici șablon. Acest lucru a funcționat pentru mine în ArcCatalog 10.3 când metoda interactivă de definire a SR prin selectarea unei clase de caracteristici pentru a importa una nu a funcționat.

Comentarii

  • Nu ar ‘ aceste mici modificări ale numelui de tipar frumos sau pozițiile zecimale pe care le menționați sunt prezente în fișierul .prj care ‘ este exportat cu opțiunea Salvare ca ? Dacă da, de ce diferite fișiere prj nu arată nimic? Mă întrebam dacă ușoare diferențe în rezoluția x, y ar putea provoca și conflictul.
  • Ar putea fi fișierul .prj creat cu ” Salvare ca ” nu este exact același cu cel stocat intern. Folosesc un set de date cu caracteristici ” filtru ” pentru a asigura rezoluția spațială comună etc.
  • I ‘ voi adăuga o fațetă suplimentară la aceasta: Uneori seturile de date din alte surse vor fi generate ca conținând valori M și Z atunci când acestea nu au de fapt M sau Z.Am ‘ constatat că unele instrumente ESRI detectează sistemul de coordonate Z gol ca nepotrivindu-se, în ciuda faptului că sistemele de coordonate X / Y chiar se potrivesc exact.

Răspuns

Aceasta este mai degrabă o explicație decât un răspuns.

Noi (Esri) facem teste destul de stricte ale numelor și valorilor sistemului de referință de coordonate. Testul „este egal” nu va întoarce un eșec atunci când se compară 500000.00 și 500000.000000, dar ar putea eșua dacă unul este într-adevăr 500000.0 și celălalt 500000.00000005. „Lucrăm la adăugarea aliasurilor pentru nume, astfel încât„ este egal ”va trece mai mult.

După cum au menționat mindless.panda și matt wilkie, diferențele ar putea fi în celelalte valori ale unei referințe spațiale. referința include sistemul de coordonate de referință și valorile de stocare / procesare. Pentru stocare: xy, z și măsurați rezoluția și măsurile. Pentru procesare: xy, z și măsurați valorile toleranței. Orice diferență între acestea poate provoca o eroare nu egală.

Comentarii

  • răspunsul dvs. este foarte apreciat. Mi-ar plăcea cu adevărat să se îmbunătățească gestionarea erorilor, în special în ceea ce este raportat utilizatorului, în ArcGIS. Mai multe sunt necesare erori informative, cu opțiunea de a obține informații și mai detaliate, dacă se dorește. Din nou, vă mulțumim ESRI pentru că ați acordat timp pentru a răspunde.
  • A doua propunere pentru a oferi mai multe informații despre erori. Peste în ultimele două săptămâni am avut aceeași eroare (Error code: 999999: Error executing function. Description: This is a generic error for which the cause of the error does not have an appropriate error ID. ) din cauza unei serii de probleme. Aceasta este o problemă mesaj furios de primit deoarece nu pot face altceva decât să încerc să rulez ceea ce am făcut a doua oară pentru a vedea dacă eroarea se repetă sau să renunț și să folosesc o altă metodă (sau software, ceea ce se întâmplă din ce în ce mai mult).

Răspuns

Iată ce am făcut pentru a rezolva problema (folosind arcpy în ArcGIS 10.0) –

Aceasta presupune următoarele:

  • FGDB – C: \ gisdata \ Test.gdb
  • Clasă de caracteristici – C: \ gisdata \ Test.gdb \ bldg

Puteți modifica căile și numele obiectelor din cod și le puteți lipi în fereastra python din ArcCatalog.

sr = arcpy.Describe(r"C:\gisdata\Test.gdb\bldg").spatialReference arcpy.CreateFeatureDataset_management(r"C:\gisdata\Test.gdb", "MyFeatureDataset", sr) 

După setul de date al caracteristicilor este creat în care puteți trage și plasa clasele de caracteristici.

Comentarii

  • Vă mulțumim! Asta a funcționat pentru mine astăzi într-o situație în care utilizarea instrumentului interactiv pentru a defini noul sistem de coordonate al setului de date de caracteristici prin selectarea unei clase de caracteristici existente nu a funcționat (v10.3).

Răspunde

Această problemă mă omora! După ce am salvat o grămadă de clase de caracteristici dintr-un fișier CAD, am încercat de mai multe ori să le definesc sistemele de coordonate, apoi să le organizez în seturi de date de caracteristici. Am încercat atât definirea tuturor f.classes, cât și f.datasets necesare din proiecția oficială WGS_1984_UTM_42N din ESRI, precum și setarea proiecției pentru setul de date, apoi importarea acelei proiecții pentru f.classes folosind instrumentul Define Projection. Fie nu ar fi lipite nicio clasă f, sau 1 ar fi și ceilalți nu ar.

Mulțumesc mult lui @Matt Wilkie din această postare , instrumentul Clasă de caracteristici până la clasa de caracteristici pare să fi rezolvat problema. Importă cu succes f.classes în setul de date dorit, chiar dacă nu am definit încă sistemul de coordonate pentru f.class în cauză.

În plus, am constatat că Clasa de caracteristici în Geodatabase (multiplu) script-ul funcționează excelent pentru mutarea f.classes într-un f.dataset în bloc, cu excepția faptului că acest lucru trebuie făcut de la Geodatabase la altul ( nu într-un set de date f.din aceeași geodatabase). Acest lucru pare a fi deoarece scriptul nu redenumește automat clasele f.când sunt copiate (sau cere operatorului un nume nou, ca în clasa de caracteristici în clasa de caracteristici). Cu toate acestea, după cum au subliniat alții (același fir legat mai sus), eroarea dată este un generic 999999.

Răspuns

I a avut această problemă atunci când doreați pur și simplu să mutați o clasă de caracteristici într-un set de date de caracteristici dintr-o bază de date geografică. Mi-am creat setul de date de funcții și m-am asigurat că are același sistem de coordonate. De nenumărate ori am primit „Nu am putut lipi xyz Referințele spațiale nu se potrivesc” Cea mai rapidă lucrare pe care am găsit-o a fost aceea de a importa referința spațială identică în setul meu de date nou creat din clasa de caracteristici pe care am vrut import în el. La al doilea pas al vrăjitorului „Creați un set de date de funcții noi”.

Nu știu de ce diferă referințele spațiale.

Comentarii

  • Bună ziua, @Alan! Vă mulțumim că ne-ați împărtășit experiența și ați venit pe site-ul nostru.
  • Bună Alan, vrăjitorul pentru crearea de seturi de date / clase noi nu este ‘ t trăgând întotdeauna toate valorile de stocare / procesare când se utilizează ” sistem de coordonate de import „.’ lucrăm la remedierea acesteia. Cred asta este ceea ce ‘ întâlnești.
  • Eu ‘ m văzând această problemă – chiar dacă creez setul de date de funcții și folosesc mecanismul de import și am selectat clasa de caracteristici, tot nu pot ‘ să trag / copiez clasa de caracteristici în noul set de date de caracteristici fără eroarea menționată mai sus.

Răspuns

Cred că unul dintre mesajele către ESRI este să furnizeze parametri mai specifici diferențele depanează informațiile atunci când apare această eroare. Și eu am întâlnit această eroare chiar și după ce am controlat cu atenție sistemele de referință spațiale și proiecțiile, așa cum cred că fac majoritatea utilizatorilor GIS.

Am găsit procedura de utilizare a funcțiilor ArcToolbox Copy pentru a remedia mesajele de eroare care apar atunci când se folosesc mecanismele de import sau copiere. Aici depindem de procedura din caseta de instrumente Copy Features pentru a rezolva corect diferențele de referință sau proiecție înainte de a introduce clasa de caracteristici în setul de date de caracteristici.

Am încercat chiar să creez setul de date de caracteristici cu un sistem de proiecție definit timpul de creare a setului de date și apoi proiectarea claselor de caracteristici în setul de caracteristici folosind instrumentul de proiecție ArcToolbox cu aceeași proiecție și totuși am primit eroarea descrisă aici când încerc să import sau să copiez clasa de caracteristici în setul de date.

Aceste probleme ale sistemului de coordonate devin mascate atunci când utilizați date în ArcMap. Deoarece ArcMap efectuează proiecție din mers, mai multe clase de caracteristici fiecare cu proiecții diferite pot fi adăugate la o hartă ArcMap fără ca utilizatorul să devină conștient. ArcMap va avertiza asupra diferitelor sisteme de referință de coordonate.

Răspuns

Lasă un răspuns

Adresa ta de email nu va fi publicată. Câmpurile obligatorii sunt marcate cu *