Risposte:
Gli Shapefile supportano quattro tipi di dati fondamentali: Point, Polyline, Polygon e Multipoint. I punti sono semplici funzioni {X, Y}. Le polilinee sono ordinate serie di punti e i poligoni sono le aree racchiuse da linee semplici chiuse. Polilinee e poligoni possono essere multi-parte per modellare elementi discontinui, come una strada di superficie separata da un'autostrada o una collezione di isole.
Nel modello dello shapefile, i punti non possono essere multiparte, ma esiste un tipo multipunto distinto per assumere quel ruolo. La differenza ha a che fare con l'inviluppo nel set di dati necessario per le forme multipunto e il diverso approccio all'indicizzazione spaziale di oggetti punto e multipunto.
I multipunti sono un'opzione di rappresentazione oscura per la maggior parte delle funzionalità point-ish, ma possono essere utilizzati per ottimizzare la visualizzazione di un gran numero di punti. Avevo un set di dati che coinvolge decine di milioni di funzioni che coprono il globo e sono stato in grado di disegnare con successo centinaia di migliaia di funzioni all'interno di un singolo quadrato di un grado con tempistiche secondarie unendo i punti in punti multipli per ridurre il numero di funzioni renderizzate per ogni riquadro .
Si noti che gli shapefile non supportano nulla di simile a una raccolta di geometrie, ma consentono solo il tipo di forma specificato o una forma nulla (zero vertici) all'interno di un file, quindi se sono richieste sia forme a punti singoli che a più parti, i punti a parte singola verranno essere memorizzato come punti multipli degenerati (con un conteggio dei punti pari a uno e una "busta" con gli angoli inferiore sinistro e superiore destro coincidenti con il punto stesso). Questo è meno efficiente nello stoccaggio (52 btyes vice 16) e nello spazio L'indice non è altrettanto efficiente, quindi se hai solo punti a parte singola, dovresti usare il tipo di dati Punto.
Dai un'occhiata a come la geometria è correlata ai record del file Dbase. Se si dispone di un file shapefile, ogni punto è correlato a un record. Se si dispone di uno shapefile multipunto, una serie di punti è correlata a un record.