Calcolo dell'area di un terreno a partire da una mappa

Stampa
( 0 Votes ) 
Valutazione attuale:  / 0
ScarsoOttimo 
Categoria: Informatica
Data pubblicazione
Scritto da Magellano Visite: 6733

Calcolo dell'area di un terreno a partire da una mappa

In questo esempio si scoprirà un’interessante proprietà dei grafici di Excel: l’interazione con i dati da cui derivano.
Non so se vi è mai capitato di dover calcolare l’area di un appezzamento di terreno a partire da una mappa catastale: vi sono vari metodi per la sua determinazione, che fanno ricorso molto spesso alle lunghezze dei lati ed alla misura degli angoli di una poligonale che ne approssima il confine. Spesso, partendo da una carta millimetrata, si contano i cm quadrati, poi i mm quadrati che rientrano nel contorno della poligonale, ed in base alla scala di riduzione si risale all’area del terreno.



Ci si rende però conto che l’informazione sul valore dell’area dev’essere contenuta nelle coordinate dei vertici di tale poligonale, e che quindi si potrebbe trovare un metodo per il calcolo dell’area a partire dalle coordinate di tali punti. Studiando il problema sono arrivato ad una soluzione, salvo poi scoprire che qualcuno (ovviamente) ci aveva già pensato più di due secoli fa: il solito Gauss, che secondo me è il più grande matematico di tutti i tempi.

Partiamo da una poligonale:

L'immagine è stata ridimensionata. Clicca qui per vedere l'immagine ingrandita. Le dimensioni originali sono 600x600



Se la si percorre in senso antiorario, l’area è data dalla differenza tra le due aree rpresentate nelle due figure al centro.

Infatti mentre la prima poligonale viene percorsa in senso senso antiorario quando si segue la poligonale data col verso di rotazione positivo, la seconda poligonale è percorsa in senso orario e quindi va presa con segno negativo.

Ognuna delle due superfici precedenti può essere scomposta in triangoli che hanno un vertice nell’origine degli assi; anche questi triangoli si devono percorrere in senso antiorario per avere un’area positiva.

Consideriamo allora i tre vertici OAB, in ordine di percorrenza in senso antiorario (O è l’origine degli assi). Siano A(x1,y1), B(x2,y2). L’area del triangolo può a sua volta scomporsi nell’area di due triangoli ed un trapezio:

S=1/2(x2y2)-1/2(x1y1)-1/2(x2-x1)(y2+y1)
Semplificando:
S=1/2(x1y2-x2y1)

valore certamente positivo, poiché nella figura il lato OB ha pendenza maggiore del lato OA, da cui:

y2/x2 > y1/x1, cioè y2x1>y1x2 e quindi S>0.

Per calcolare l’area di una poligonale basta allora scomporla nei triangoli che hanno uno dei tre vertici nell’origine e fare la sommatoria delle aree.

Esempio per un triangolo:

Si abbia un triangolo ABC con A(x1,y1), B(x2,y2), C(x3,y3). L’area sarà data da:

S = 1/2(x1y2-x2y1+x2y3-x3y2+x3y1-x1y3)

formula estremamente semplice che fa ricorso unicamente alle coordinate dei tre vertici e non alle lunghezze dei lati e alle ampiezze degli angoli.

Creiamo ora una cartella di lavoro di Excel.
Scriviamo i valori nelle celle:
A2: 1
A3: 2

Selezioniamo le due celle come già fatto altre volte e riempiamo la prima colonna con i valori progressivi fino a 30.

Poi:
B1: x (m); C1: y (m); D1: superficie (Ha); E1: perimetro (m)
Ora incolliamo i valori di esempio seguenti sotto x (m):

236
274,2
265
272
278
276
269
260
241
224
218
193,1
186
150
130
115
97,5
98
79
63
61
74
88
102
115
131
141
162
181
215
236


E questi altri sotto y (m):

39
86
123
142
163
174
182
186
190
163
147
129
124
118,2
122
119
102,1
68
65
55
42
28
19
15
17
27
43
55,6
60
49
39


Si noti che c’è un 31° punto che coincide col primo punto, per chiudere la poligonale.

Si sono prese coordinate tutte positive per semplicità (figura nel quarto quadrante del piano cartesiano; l’area calcolata non cambia se si considera la figura in un’altra posizione relativamente all’origine degli assi. Oltre all’area si vuole calcolare anche il perimetro.

Inseriamo le formule:
D3: =(B2*C3-B3*C2)/2/10000
E3: =RADQ((B3-B2)*(B3-B2)+(C3-C2)*(C3-C2))

La prima formula è quella che abbiamo ricavato e dà l’area del triangolo elementare con un vertice nell’origine; essa si può inserire rapidamente cliccando direttamente sulle celle invece di scrivere il riferimento. Si è diviso per 10.000, oltre che per 2, perché l’area è data in ettari: 1 Ha =10000 mq.

La seconda formula dà la lunghezza del segmento della poligonale in base al teorema di Pitagora. Queste due formule vanno incollate su tutta l’area di interesse nelle colonne (D3, E32).

Infine inseriamo la sommatoria delle aree e delle lunghezze dei lati della poligonale:

posizioniamoci in D2 e clicchiamo sul pulsante della sommatoria per inserire automaticamente la funzione SOMMA; poi selezioniamo l’area tra le celle D3 e D32 e diamo Invio. Il valore che compare nella cella è l’area della poligonale. Copiamo ed incolliamo il contenuto di questa cella in quella a destra: ciò che compare è il perimetro della poligonale. Evidenziamo queste due celle con un colore di fondo a piacere.

Bene, ora viene la parte più simpatica del lavoro.

Selezioniamo l’area da B2 a C32, clicchiamo sul pulsante Grafico, scegliamo Dispers. (XY), scegliamo il grafico a spezzata (l’ultimo), poi Avanti; dovremmo vedere la nostra poligonale chiusa, poi ancora Avanti, selezioniamo Griglia principale per entrambi gli assi, poi ancora Avanti e scegliamo di posizionare il nostro grafico nello stesso foglio contenente i dati.

E qui viene il bello: se si clicca sulla figura, compaiono i punti della poligonale; se proviamo a trascinare uno di questi punti, i dati vengono automaticamente modificati!

Posso cioè aggiustare rapidamente i dati in funzione di ciò che voglio vedere (lascio a voi qualunque commento sull’uso che si può fare di questo trucco…)

Questa possibilità si ha solo se i dati non provengono da formule ma da un inserimento manuale, e il motivo è facilmente comprensibile.

Un’applicazione molto interessante di questo fatto è la possibilità di eseguire divisioni del terreno rappresentato, o il riallineamento di un confine, spostando opportunamente i punti della poligonale.

 

Joomla 1.7 Templates designed by College Jacke