[Gfoss] Segnalazione in merito a incompatibilita' sugli shapefiles di QGIS

On 10/26/16, Andrea Peri <aperi2007@gmail.com> wrote:

Se guardi lo shapefile inserito nel ticket da Santilli.
Vedi 1 record o tre ?

chiedo scusa per la domanda tangente, ma come/dove è segnalata la
feature fantasma? forse con isValid()/setValid()?

grazie, ciao,
giuliano

No.
Isvalid non aiuta in questo caso.
Qgis ignora il record e quindi non si vede e non si può operare in nessun
modo su di essa da qgis

Forse in python, ma non lo so.

Sono dei record che te hai cancellato su qgis. O meglio, credi di avere
cancellato, ma che in realtà qgis non cancella e si limita a ignorarli.
Poi se vai ad aprire lo shapefile su altri software GIS ricompaiono.
È un problema esclusivamente degli shapefile su qgis 2.x fino alla 2
14.x con x<5.
Da.quello che riporta Marco Curreli questo problema non sembra esserci
nella 1.8.

Il 26 ott 2016 17:50, "Giuliano Curti" <giulianc51@gmail.com> ha scritto:

On 10/26/16, Andrea Peri <aperi2007@gmail.com> wrote:
> Se guardi lo shapefile inserito nel ticket da Santilli.
> Vedi 1 record o tre ?

chiedo scusa per la domanda tangente, ma come/dove è segnalata la
feature fantasma? forse con isValid()/setValid()?

grazie, ciao,
giuliano
_______________________________________________
Gfoss@lists.gfoss.it
http://lists.gfoss.it/cgi-bin/mailman/listinfo/gfoss
Questa e' una lista di discussione pubblica aperta a tutti.
I messaggi di questa lista non hanno relazione diretta con le posizioni
dell'Associazione GFOSS.it.
807 iscritti al 31/03/2016

On 10/26/16 , Andrea Peri wrote:

Se guardi lo shapefile inserito nel ticket da Santilli.
Vedi 1 record o tre ?

Domani controllo in ufficio. Il controllo non è immediato; non
avendo Arcmap, devo coinvolgere un mio collega.

Ciao,
  Marco

On 10/26/16, Marco Curreli <marcocurreli@tiscali.it> wrote:

On 10/26/16 , Andrea Peri wrote:

Se guardi lo shapefile inserito nel ticket da Santilli.
Vedi 1 record o tre ?

ciao,
ho fatto alcune verifiche sul file postato da Sandro
(logical_delete.zip se non ho fatto errori) con questi risultati:

comandi da menu QGIS (2.4)
  visualizzazione in canvas: 1 feature
  layer feature count: 3 features

comandi da python console:
  layer.featureCount(): 3 features
  layer.getFeatures(): 1 feature
  feat.id(): 0
  feat.isValid(): True
  layer.setSelectedFeatures([0]): selezione corretta
  layer.setSelectedFeatures([1,2]): nessuna selezione
  vlayer.extent().asWktCoordinates():
    1554745.4189, 4852052.8289*
    1612298.7470*, 4924782.4594
  feat.geometry().boundingBox().asWktCoordinates():
    1554745.4189, 4911957.5*
    1572934.5*, 4924782.4594

a prima vista parrebbe qualche incongruenza: alcuni comandi
(visualizzazione, getFeatures(), setSelectedFeatures()) vedono una
sola feature, altri (featureCount(), zoom, extent()) vedono anche
quelle fantasma;

my 2 cents, ciao,
giuliano

Appunto.

A questo si aggiunge che se questo shapefile viene aperto da utente
che usa chesso'
arcgis della esri, oppure il recentemente segnalato "mapwindow",
oppure OpenJump, o altro software.

Oppure viene caricato su postgise da li' usato oppure pubblicato su
internet tramite geoserver o mapserver,
si vedono 3 records.

Quindi.
Il caso d'uso che preoccupa e' quando un utente, deve preparare uno
shapefile per distribuirlo ad altri, e nel prepararlo cancella dei
records.
Poi lo spedisce ad altri.
Questi altri potrebbero vedersi ricomparire i records cancellati (o
che si credevano cancellati).
Con imprevedibili conseguenze.

Chiaramente questo succede se il tecnico gis che cancella usava una
versione di qgis antecedente alla 2.14.5 oppure successiva alla 1.8
(visto che Curreli ci dice che cn la 1.8 questo problema non succede).
E' pero una fascia di versioni abbastanza ampia.

Ci sono dei workarond.
Ad esempio se dopo aver editato lo shapefile si esporta con il "save
as" usando ancora shapefile.

Ma occorre che l'utente sappia parecchio bene perche' lo deve fare.
Perche' altrimenti non ci pensa proprio a esportare in shapefile da un
dato che e' anche esso in shapefile.

Insomma una bella seccatura (per usare un eufemismo).

Per questo serve che questo problema sia ben chiaro.
Se la gente ha chiaro ilproblema.
Quando vede cose accadere cose strane riesce a risalire alla causa e rimedia.
Altrimenti l'utente che non sa' finisce per autodifendersi con l'unica
arma che possiede.
Cambiare software.

A.

Il 27 ottobre 2016 10:24, Giuliano Curti <giulianc51@gmail.com> ha scritto:

On 10/26/16, Marco Curreli <marcocurreli@tiscali.it> wrote:

On 10/26/16 , Andrea Peri wrote:

Se guardi lo shapefile inserito nel ticket da Santilli.
Vedi 1 record o tre ?

ciao,
ho fatto alcune verifiche sul file postato da Sandro
(logical_delete.zip se non ho fatto errori) con questi risultati:

comandi da menu QGIS (2.4)
        visualizzazione in canvas: 1 feature
        layer feature count: 3 features

comandi da python console:
        layer.featureCount(): 3 features
        layer.getFeatures(): 1 feature
        feat.id(): 0
        feat.isValid(): True
        layer.setSelectedFeatures([0]): selezione corretta
        layer.setSelectedFeatures([1,2]): nessuna selezione
        vlayer.extent().asWktCoordinates():
                1554745.4189, 4852052.8289*
                1612298.7470*, 4924782.4594
        feat.geometry().boundingBox().asWktCoordinates():
                1554745.4189, 4911957.5*
                1572934.5*, 4924782.4594

a prima vista parrebbe qualche incongruenza: alcuni comandi
(visualizzazione, getFeatures(), setSelectedFeatures()) vedono una
sola feature, altri (featureCount(), zoom, extent()) vedono anche
quelle fantasma;

my 2 cents, ciao,
giuliano
_______________________________________________
Gfoss@lists.gfoss.it
http://lists.gfoss.it/cgi-bin/mailman/listinfo/gfoss
Questa e' una lista di discussione pubblica aperta a tutti.
I messaggi di questa lista non hanno relazione diretta con le posizioni dell'Associazione GFOSS.it.
807 iscritti al 31/03/2016

--
-----------------
Andrea Peri
. . . . . . . . .
qwerty àèìòù
-----------------

Andrea Peri wrote

Se guardi lo shapefile inserito nel ticket da Santilli.
Vedi 1 record o tre ?

(logical_delete.shp)
Un poligono con QGis 1.8.0 e due poligoni adiacenti con Arcmap.
Però con qgis lo zoom all'estensione del layer mi dà un'area molto più
estesa (il poligono sta a in alto a sinistra a crica 70 km dall'angolo in
basso a destra).

--
View this message in context: http://gfoss-geographic-free-and-open-source-software-italian-mailing.3056002.n2.nabble.com/Segnalazione-in-merito-a-incompatibilita-sugli-shapefiles-di-QGIS-tp7596284p7596338.html
Sent from the Gfoss -- Geographic Free and Open Source Software - Italian mailing list mailing list archive at Nabble.com.

Giusto per chiarire:
nelle versioni tra la 1.8 e la 2.14.5 apro una sessione di editing,
cancello dei record, salvo e chiudo la sessione.
Esporto tramite "save as" in formato shp.
In questo secondo shp NON CI SONO i record cancellati e non sono visibili
con nessun altro sw.

E' corretto?

Il giorno 27 ottobre 2016 11:32, Andrea Peri <aperi2007@gmail.com> ha
scritto:

Appunto.

A questo si aggiunge che se questo shapefile viene aperto da utente
che usa chesso'
arcgis della esri, oppure il recentemente segnalato "mapwindow",
oppure OpenJump, o altro software.

Oppure viene caricato su postgise da li' usato oppure pubblicato su
internet tramite geoserver o mapserver,
si vedono 3 records.

Quindi.
Il caso d'uso che preoccupa e' quando un utente, deve preparare uno
shapefile per distribuirlo ad altri, e nel prepararlo cancella dei
records.
Poi lo spedisce ad altri.
Questi altri potrebbero vedersi ricomparire i records cancellati (o
che si credevano cancellati).
Con imprevedibili conseguenze.

Chiaramente questo succede se il tecnico gis che cancella usava una
versione di qgis antecedente alla 2.14.5 oppure successiva alla 1.8
(visto che Curreli ci dice che cn la 1.8 questo problema non succede).
E' pero una fascia di versioni abbastanza ampia.

Ci sono dei workarond.
Ad esempio se dopo aver editato lo shapefile si esporta con il "save
as" usando ancora shapefile.

Ma occorre che l'utente sappia parecchio bene perche' lo deve fare.
Perche' altrimenti non ci pensa proprio a esportare in shapefile da un
dato che e' anche esso in shapefile.

Insomma una bella seccatura (per usare un eufemismo).

Per questo serve che questo problema sia ben chiaro.
Se la gente ha chiaro ilproblema.
Quando vede cose accadere cose strane riesce a risalire alla causa e
rimedia.
Altrimenti l'utente che non sa' finisce per autodifendersi con l'unica
arma che possiede.
Cambiare software.

A.

Il 27 ottobre 2016 10:24, Giuliano Curti <giulianc51@gmail.com> ha
scritto:
> On 10/26/16, Marco Curreli <marcocurreli@tiscali.it> wrote:
>> On 10/26/16 , Andrea Peri wrote:
>>> Se guardi lo shapefile inserito nel ticket da Santilli.
>>> Vedi 1 record o tre ?
>
> ciao,
> ho fatto alcune verifiche sul file postato da Sandro
> (logical_delete.zip se non ho fatto errori) con questi risultati:
>
> comandi da menu QGIS (2.4)
> visualizzazione in canvas: 1 feature
> layer feature count: 3 features
>
> comandi da python console:
> layer.featureCount(): 3 features
> layer.getFeatures(): 1 feature
> feat.id(): 0
> feat.isValid(): True
> layer.setSelectedFeatures([0]): selezione corretta
> layer.setSelectedFeatures([1,2]): nessuna selezione
> vlayer.extent().asWktCoordinates():
> 1554745.4189, 4852052.8289*
> 1612298.7470*, 4924782.4594
> feat.geometry().boundingBox().asWktCoordinates():
> 1554745.4189, 4911957.5*
> 1572934.5*, 4924782.4594
>
> a prima vista parrebbe qualche incongruenza: alcuni comandi
> (visualizzazione, getFeatures(), setSelectedFeatures()) vedono una
> sola feature, altri (featureCount(), zoom, extent()) vedono anche
> quelle fantasma;
>
> my 2 cents, ciao,
> giuliano
> _______________________________________________
> Gfoss@lists.gfoss.it
> http://lists.gfoss.it/cgi-bin/mailman/listinfo/gfoss
> Questa e' una lista di discussione pubblica aperta a tutti.
> I messaggi di questa lista non hanno relazione diretta con le posizioni
dell'Associazione GFOSS.it.
> 807 iscritti al 31/03/2016

--
-----------------
Andrea Peri
. . . . . . . . .
qwerty àèìòù
-----------------
_______________________________________________
Gfoss@lists.gfoss.it
http://lists.gfoss.it/cgi-bin/mailman/listinfo/gfoss
Questa e' una lista di discussione pubblica aperta a tutti.
I messaggi di questa lista non hanno relazione diretta con le posizioni
dell'Associazione GFOSS.it.
807 iscritti al 31/03/2016

--
_____________________________

Daniele Bonaposta,
Cartografia - G.I.S.

via Don Minzoni 13a
40121 - Bologna
mobile: +39.338.3377044
e-mail: daniele.bonaposta@gmail.com

*Linked*in: http://www.linkedin.com/pub/daniele-bonaposta/26/487/872

_____________________________

On Thu, Oct 27, 2016 at 02:47:44AM -0700, Marco Curreli wrote:

Andrea Peri wrote
> Se guardi lo shapefile inserito nel ticket da Santilli.
> Vedi 1 record o tre ?

(logical_delete.shp)
Un poligono con QGis 1.8.0 e due poligoni adiacenti con Arcmap.

Interessante, quindi Arcmap e' piu' bacato di QGIS ?

--strk;

In sostanza si.
Però aggiungo dei dettagli per chiarire meglio.

Il problema emerge solo se si esegue editing su uno shapefile.
Se editi su uno spatialite o su un PostGIS o altro formato geografico
editabile il problema non sussiste.
La cosa non è trascurabile.
Infatti , mentre ha un senso logico editare un layer iin PostGIS ed
esportarlo poi in shp.
Editare uno shapefile e poi esportarlo ancora in shapefile occorre proprio
volerlo fare.
A questo aggiungo che esportando in shp si cambia la struttura dello
shapefile originale e questo disincentivare l esportazione in shp.
Per cui chi edita uno shapefile lo esporta in shp solo se deve proprio.

Il 27 ott 2016 11:59, "Daniele Bonaposta" <daniele.bonaposta@gmail.com> ha
scritto:

Giusto per chiarire:
nelle versioni tra la 1.8 e la 2.14.5 apro una sessione di editing,
cancello dei record, salvo e chiudo la sessione.
Esporto tramite "save as" in formato shp.
In questo secondo shp NON CI SONO i record cancellati e non sono visibili
con nessun altro sw.

E' corretto?

Il giorno 27 ottobre 2016 11:32, Andrea Peri <aperi2007@gmail.com> ha
scritto:

Appunto.

A questo si aggiunge che se questo shapefile viene aperto da utente
che usa chesso'
arcgis della esri, oppure il recentemente segnalato "mapwindow",
oppure OpenJump, o altro software.

Oppure viene caricato su postgise da li' usato oppure pubblicato su
internet tramite geoserver o mapserver,
si vedono 3 records.

Quindi.
Il caso d'uso che preoccupa e' quando un utente, deve preparare uno
shapefile per distribuirlo ad altri, e nel prepararlo cancella dei
records.
Poi lo spedisce ad altri.
Questi altri potrebbero vedersi ricomparire i records cancellati (o
che si credevano cancellati).
Con imprevedibili conseguenze.

Chiaramente questo succede se il tecnico gis che cancella usava una
versione di qgis antecedente alla 2.14.5 oppure successiva alla 1.8
(visto che Curreli ci dice che cn la 1.8 questo problema non succede).
E' pero una fascia di versioni abbastanza ampia.

Ci sono dei workarond.
Ad esempio se dopo aver editato lo shapefile si esporta con il "save
as" usando ancora shapefile.

Ma occorre che l'utente sappia parecchio bene perche' lo deve fare.
Perche' altrimenti non ci pensa proprio a esportare in shapefile da un
dato che e' anche esso in shapefile.

Insomma una bella seccatura (per usare un eufemismo).

Per questo serve che questo problema sia ben chiaro.
Se la gente ha chiaro ilproblema.
Quando vede cose accadere cose strane riesce a risalire alla causa e
rimedia.
Altrimenti l'utente che non sa' finisce per autodifendersi con l'unica
arma che possiede.
Cambiare software.

A.

Il 27 ottobre 2016 10:24, Giuliano Curti <giulianc51@gmail.com> ha
scritto:
> On 10/26/16, Marco Curreli <marcocurreli@tiscali.it> wrote:
>> On 10/26/16 , Andrea Peri wrote:
>>> Se guardi lo shapefile inserito nel ticket da Santilli.
>>> Vedi 1 record o tre ?
>
> ciao,
> ho fatto alcune verifiche sul file postato da Sandro
> (logical_delete.zip se non ho fatto errori) con questi risultati:
>
> comandi da menu QGIS (2.4)
> visualizzazione in canvas: 1 feature
> layer feature count: 3 features
>
> comandi da python console:
> layer.featureCount(): 3 features
> layer.getFeatures(): 1 feature
> feat.id(): 0
> feat.isValid(): True
> layer.setSelectedFeatures([0]): selezione corretta
> layer.setSelectedFeatures([1,2]): nessuna selezione
> vlayer.extent().asWktCoordinates():
> 1554745.4189, 4852052.8289*
> 1612298.7470*, 4924782.4594
> feat.geometry().boundingBox().asWktCoordinates():
> 1554745.4189, 4911957.5*
> 1572934.5*, 4924782.4594
>
> a prima vista parrebbe qualche incongruenza: alcuni comandi
> (visualizzazione, getFeatures(), setSelectedFeatures()) vedono una
> sola feature, altri (featureCount(), zoom, extent()) vedono anche
> quelle fantasma;
>
> my 2 cents, ciao,
> giuliano
> _______________________________________________
> Gfoss@lists.gfoss.it
> http://lists.gfoss.it/cgi-bin/mailman/listinfo/gfoss
> Questa e' una lista di discussione pubblica aperta a tutti.
> I messaggi di questa lista non hanno relazione diretta con le posizioni
dell'Associazione GFOSS.it.
> 807 iscritti al 31/03/2016

--
-----------------
Andrea Peri
. . . . . . . . .
qwerty àèìòù
-----------------
_______________________________________________
Gfoss@lists.gfoss.it
http://lists.gfoss.it/cgi-bin/mailman/listinfo/gfoss
Questa e' una lista di discussione pubblica aperta a tutti.
I messaggi di questa lista non hanno relazione diretta con le posizioni
dell'Associazione GFOSS.it.
807 iscritti al 31/03/2016

--
_____________________________

Daniele Bonaposta,
Cartografia - G.I.S.

via Don Minzoni 13a
40121 - Bologna
mobile: +39.338.3377044
e-mail: daniele.bonaposta@gmail.com

*Linked*in: http://www.linkedin.com/pub/daniele-bonaposta/26/487/872

_____________________________

Ho scoperto che i record cancellati si vedono se si apre il dbf con un
editore di testo, oppure con cat (su linux): logical-delete.dbf aperto in
questo modo ha una riga come questa:

a aa aaa aaaa 1.00000000000 11.00000000000 1*b bb bbb bbbb 2.00000000000
22.00000000000 1*c cc ccc cccc 3.00000000000 33.00000000000 1

(su un'unica riga, coi singoli campi molto più distanziati).

Ho fatto un'altra prova con QGis 1.8.0, con tre poligoni di cui due
cancellati. Il dbf aperto con l'editor di testo mi fa vedere solo 1
poligono.

--
View this message in context: http://gfoss-geographic-free-and-open-source-software-italian-mailing.3056002.n2.nabble.com/Segnalazione-in-merito-a-incompatibilita-sugli-shapefiles-di-QGIS-tp7596284p7596342.html
Sent from the Gfoss -- Geographic Free and Open Source Software - Italian mailing list mailing list archive at Nabble.com.

On Thu, 27 Oct 2016 03:30:42 -0700 (MST), Marco Curreli wrote:

Ho scoperto che i record cancellati si vedono se si apre il dbf con un
editore di testo, oppure con cat (su linux): logical-delete.dbf aperto in
questo modo ha una riga come questa:

a aa aaa aaaa 1.00000000000 11.00000000000 1*b bb bbb bbbb 2.00000000000
22.00000000000 1*c cc ccc cccc 3.00000000000 33.00000000000 1

(su un'unica riga, coi singoli campi molto più distanziati).

Marco,

esattamente: il problema e' proprio questo.

il formato DBF prevede che tutte le righe che iniziano con un
carattere '*' (asterisco) nel primo byte indicano una "cancellazione
logica", e la riga corrispondente dovrebbe essere sempre ignorata
proprio come se non esitesse affatto. di conseguenza anche per lo
shapefile nel suo complesso la feature corrispondente dovrebbe
essere completamente scartata.

se ci fai caso, sia davanti al record con tutte 'b' che davanti
a quello con tutte 'c' ci trovi l'asterisco, mentre sul primo
(quello con tutte 'a') ci trovi invece uno spazio, che indica
"ok, record perfettamente valido".

il problema vero e' che molte implementazioni che supportano
gli Shapefiles ignorano le "cancellazioni logiche", e quindi
poi ti trovi precipitato nel bel mezzo del girone infernale
abbondantemente descritto da Andrea Peri.

una buona implementazione realmente conforme e pienamente
interoperabile non dovrebbe _MAI_ lasciare record con le
micidiali "cancellazioni logiche" all'interno del DBF; le
dovrebbe sempre eliminare fisicamente facendo un'operazione
di REPACK prima di chiudere la sessione di lavoro.
se questo non e' assicurato entri in zona "allarme rosso"

ciao Sandro

a.furieri wrote

il formato DBF prevede che tutte le righe che iniziano con un
carattere '*' (asterisco) nel primo byte indicano una "cancellazione
logica" [...]

Infatti, dando i seguenti comandi (su un terminale di linux, o su windows
con Msys):

cp logical_delete.dbf logical_delete_bak.dbf
sed 's/\*/ /g' logical_delete_bak.dbf > logical_delete.dbf

si riottiene lo shapefile originale.

--
View this message in context: http://gfoss-geographic-free-and-open-source-software-italian-mailing.3056002.n2.nabble.com/Segnalazione-in-merito-a-incompatibilita-sugli-shapefiles-di-QGIS-tp7596284p7596344.html
Sent from the Gfoss -- Geographic Free and Open Source Software - Italian mailing list mailing list archive at Nabble.com.

On 10/27/16, a.furieri@lqt.it <a.furieri@lqt.it> wrote:

On Thu, 27 Oct 2016 03:30:42 -0700 (MST), Marco Curreli wrote:

......
a aa aaa aaaa 1.00000000000 11.00000000000 1*b bb bbb bbbb
2.00000000000
22.00000000000 1*c cc ccc cccc 3.00000000000 33.00000000000 1

il formato DBF prevede che tutte le righe che iniziano con un
carattere '*' (asterisco) nel primo byte indicano una "cancellazione
logica", e la riga corrispondente ......

scusa se cerco di rubare a piene mani dalla tua conoscienza, però
avresti voglia di illustrare la relazione fra *.dbf e *.shp; se ad es.
facessimo l'operazione indicata sopra da Marco, cosa garantisce di
mantenere la sincronia fra dbf e shp? dbf si comporta come un indice
rendendo inagibili tutte le eventuali feature presenti in shp, ma non
in dbf? altro?

ciao Sandro

grazie, ciao,
giuliano

Sandro Santilli-2 wrote

On Thu, Oct 27, 2016 at 02:47:44AM -0700, Marco Curreli wrote:
...

(logical_delete.shp)
Un poligono con QGis 1.8.0 e due poligoni adiacenti con Arcmap.

Interessante, quindi Arcmap e' piu' bacato di QGIS ?

Non credo. Il terzo poligono in effetti è molto piccolo in confronto con gli
altri due, e non si vede.
Non ho visto la tabella degli attributi; non ho Arcmap e ho mandato il file
a un collega.

--
View this message in context: http://gfoss-geographic-free-and-open-source-software-italian-mailing.3056002.n2.nabble.com/Segnalazione-in-merito-a-incompatibilita-sugli-shapefiles-di-QGIS-tp7596284p7596346.html
Sent from the Gfoss -- Geographic Free and Open Source Software - Italian mailing list mailing list archive at Nabble.com.

L associazione è per numero di record.
La.prima geometria dello shp si lega con il primo record del dbf.
La.13esima geometria dello shp si lega con il 13esimo record del dbf.

Ergo se nel dbf ci sono cancellazioni logiche analogamente cinsono
cancellazioni logiche anche nello shp.
E questo significherebbe che non basta rimettere a posto il dbf, ma serve
ripulire anche il shp. E poi anche l shx ovviamente.

Il 27 ott 2016 2:30 PM, "Giuliano Curti" <giulianc51@gmail.com> ha scritto:

On 10/27/16, a.furieri@lqt.it <a.furieri@lqt.it> wrote:
> On Thu, 27 Oct 2016 03:30:42 -0700 (MST), Marco Curreli wrote:
>> ......
>> a aa aaa aaaa 1.00000000000 11.00000000000 1*b bb bbb bbbb
>> 2.00000000000
>> 22.00000000000 1*c cc ccc cccc 3.00000000000 33.00000000000 1

> il formato DBF prevede che tutte le righe che iniziano con un
> carattere '*' (asterisco) nel primo byte indicano una "cancellazione
> logica", e la riga corrispondente ......

scusa se cerco di rubare a piene mani dalla tua conoscienza, però
avresti voglia di illustrare la relazione fra *.dbf e *.shp; se ad es.
facessimo l'operazione indicata sopra da Marco, cosa garantisce di
mantenere la sincronia fra dbf e shp? dbf si comporta come un indice
rendendo inagibili tutte le eventuali feature presenti in shp, ma non
in dbf? altro?

> ciao Sandro

grazie, ciao,
giuliano
_______________________________________________
Gfoss@lists.gfoss.it
http://lists.gfoss.it/cgi-bin/mailman/listinfo/gfoss
Questa e' una lista di discussione pubblica aperta a tutti.
I messaggi di questa lista non hanno relazione diretta con le posizioni
dell'Associazione GFOSS.it.
807 iscritti al 31/03/2016

On 10/27/16, Andrea Peri <aperi2007@gmail.com> wrote:

L associazione è per numero di record.
La.prima geometria dello shp si lega con il primo record del dbf.
La.13esima geometria dello shp si lega con il 13esimo record del dbf.

Ergo ......

grazie Andrea, era quello di cui volevo avere conferma;

intanto ho fatto una prova anche con le gdal/ogr con questi risultati,
forse ancor più preoccupanti(*):
  GetExtent (dati in ordine diverso):
    1554745.4189, 4852052.829
    1612298.7470, 4924782.4595
  GetFeatureCount: 3
  for i in range(numFeatures):
    feat = layer.GetNextFeature()
      0 POLYGON
      Traceback (most recent call last):
        File "*/letturaFile.py", line 26, in <module>
          geometry = feat.GetGeometryRef()
      AttributeError: 'NoneType' object has no attribute 'GetGeometryRef'
(*) alludo al fatto che la seconda istruzione "feat =
layer.GetNextFeature()" non segnala problemi, salvo poi dare errore
quando si tenta "geometry = feat.GetGeometryRef()"; sulla lista
sviluppatori c'è Denis R. che mantiene le gdal, sarebbe interessante
avere la sua opinione ma il "mio" inglese non mi consente di porre
decentemente il quesito :slight_smile:

grazie, ciao,
giuliano