I layer di file di forma in QGIS non vengono visualizzati se non eseguo lo zoom indietro


15

Ho due layer shapefile in un progetto Qgis che hanno problemi con lo zoom. Uno è una linea che ho copiato / incollato in un nuovo livello da una serie di contorni di altezza e l'altro è un livello poligonale che ho creato dissolvendo tutte le caratteristiche in un altro livello.

In entrambi i casi, i livelli non verranno visualizzati a meno che l'intero livello non venga visualizzato nell'area di disegno. Quando ingrandisco o trascino la vista, non appena parte del livello è fuori dalla tela, l'intero livello scompare.

Nel caso del livello poligonale, se lo elimino e lo genera di nuovo funziona correttamente, ma quando inizio a riempire gli anelli raggiunge un punto in cui smette di funzionare bene (voglio finire con un singolo poligono che racchiude tutte le funzionalità in il livello originale). Immagino che abbia a che fare con la geometria del livello, ma non ho trovato la causa.

Entrambi i livelli in precedenza funzionavano bene e rimuoverli / aggiungerli di nuovo non risolve il problema.

Tutti gli altri strati del progetto funzionano bene (incluso l'insieme dei contorni dell'altezza e il livello dei poligoni che ho usato per generare i livelli fastidiosi).

Questo problema è stato mostrato sia in Qgis 2.4 che in 2.6

C'è qualcosa che sto facendo di sbagliato?


Ho avuto questo problema con alcuni shapefile, ma non sono sicuro di cosa lo stia causando ...
DPSSpatial

5
Prova a ricostruire l'indice spaziale.
Vince il

2
Mi chiedo se c'è qualcosa di sbagliato nelle forme come una geometria corrotta o non valida. O un problema di indice spaziale.
SaultDon

Ho rigenerato l'indice spaziale per entrambi i livelli e ancora non vengono visualizzati. Penso che debba essere un problema di geometria, poiché nel livello poligonale il problema appare quando modifico i vertici per eliminare gli anelli. Sto modificando attentamente il livello per vedere se riesco a isolare il problema.
JPH,

Risposte:


4

I miei colleghi e io avevamo tutti questo problema nelle versioni di QGIS che vanno dalla 2.6.1 alla nuova 2.14. La soluzione che abbiamo elaborato è eseguire:

Vettore> Strumenti geometria> Multipart in Singlepart ...

Il nuovo shapefile prodotto verrà ora visualizzato a tutti i livelli di zoom. Credo che il problema sia che il vecchio file di forma aveva un ordine di suoneria errato (presumendo che il file avesse degli anelli interni) e che la correzione fosse quindi simile all'esecuzione di "Ripara geometria" in ArcMap.


L'ho provato con uno strato di linea multipart, e ha funzionato. Ora ho più voci di riga nel mio livello poligonale, che volevo evitare: questo è il punto delle funzioni multipart. Mi chiedo perché sia ​​successo, per evitare il problema in futuro. Qualche commento?
R'n'E,

3

Avevo lo stesso problema. Quello che mi ha risolto è stato usare sia ciò che RickOrth ha detto sia quello che ha detto Vince.

Da Livello> Proprietà> Generale Imposta il sistema di riferimento di Coordinate da un UTENTE: al sistema corretto. Quindi fare clic su Crea indice spaziale.


2

Supponendo che non hai impostato la visibilità dipendente dalla scala nella finestra delle proprietà ...

Uso GRASS per la pulizia dei dati, se è necessario riempire buchi e intraprendere altri lavori di topologia v.clean è un ottimo punto di partenza.


1
Ho affrontato questo problema oggi. L'esecuzione di v.clean ha funzionato molto bene in QGIS 3.6.2.
Pooneil,

1

Verificare che il valore del sistema di riferimento Coordinate in Proprietà livello sia impostato correttamente. Ho visto shapefile con file prj validi reimpostare questo valore su USER CRS generato (...): 10000x. Questo CRS generato può far scomparire i dati nello stesso modo in cui non sono stati impostati CRS.


1

Sono andato su Proprietà -> CRS - Crea indice spaziale

Funziona ora! Non sono sicuro se questo è ciò che intendeva @Vince, ma ha funzionato.

-- MODIFICARE --

Ho parlato troppo presto. Il mio problema era che avevo importato un .csv che aveva alcuni NaN negli Eastings / Northings. Questi sono stati sostituiti con 1s. Una volta che mi sono liberato di quelli non ho avuto problemi.


@Vince intendeva ricostruirlo, mentre sembra che tu non ne abbia avuto uno, ma equivale alla stessa cosa. Nessun indice spaziale, prestazioni orribili.
John Powell,

1

Ho avuto lo stesso problema. Nel mio caso, il problemfile shapefile era stato creato da ArcGIS. L'ho risolto rimuovendo gli inutili file extra che ESRI aggiunge ai file shape (.cpg, .qpj, .sbx e .shp.xml) mantenendo solo quelli utili (.dbf, .shp, .prj, .shx). Et voilà!


Ottima soluzione! Ero nella stessa situazione; usando un .shp di un collega che era stato creato in Arc. Ho spostato i file .dbf, .shp e .shx in un'altra cartella (no .prj ma non sembrava importare), l'ho aperto in QGIS e poi salvato come un altro livello. Sembra funzionare bene. Grazie!
EcologiaTom

0

Ho avuto questo problema anche prima, soprattutto durante l'importazione di file .shp in un database SpatialLite. Ho scoperto che un modo molto semplice per risolverlo è selezionare tutte le funzionalità, attivare l'editor, utilizzare lo strumento Sposta funzionalità, quindi fare semplicemente clic e rilasciare. In realtà non sposti alcuna funzionalità ma costringe il programma a riscrivere tutti i vertici e, in qualche modo, dopo questo la geometria è stata riparata. Può richiedere un po 'di tempo per file di grandi dimensioni, ma per me è stato sicuro.


0

Ho provato tutte le soluzioni presentate qui per un problema simile che ho avuto con una parte di un poligono che è scomparso quando ho ingrandito. L'unico che ha funzionato per me era usare v.clean dalla casella degli strumenti di elaborazione con l'opzione rmdupl e il set di tolleranze a 0. Ciò rimuove tutti i nodi duplicati e fornisce un file topologicamente corretto.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.