:: Python :: v.quota :: |
|---|
|
In questo esempio (v.quota.py) si mostra come integrare la libreria
grass.script con le librerie
grass.lib.gis(*)
e grass.lib.vector(*).
Dai commenti e dal codice stesso, è possibile anche trarre utili riferimenti sull'utilizzo della
libreria ctypes fondamentale per interfacciare
Python con le librerie vettoriali e raster presenti in
Grass.
L'applicativo chiede all'utente di inserire il nome di una copertura vettoriale e le coordinate X e Y di un punto. Il codice verifica se la copertura è 3D, in caso affermativo calcola la quota, ma ne stampa il risultato se e solo se il punto cade all'interno del vettoriale. Per la realizzazione di coperture vettoriali 3D si faccia riferimento alle pagine dedicate alle realizzazione dei TIN: Costruzione TIN da Punti Quotati, Costruzione TIN da Curve di Livello e Costruzione TIN da Entità Quotate.
#!/usr/bin/env python
#****************************************************************
#*
#* MODULE: v.quota, v 1.0.0
#*
#* AUTHOR(S): Antonio Alliegro
#*
#* PURPOSE: Calcola la quota di un punto di un vettoriale 3D
#*
#* COPYRIGHT: (C) 2011 Antonio Alliegro Civil Engineer
#* Salerno, Italy
#* antonioall(at)libero.it
#*
#* First Version: 2011/08/16
#* Last Version: 2011/08/16
#*
#* This program is free software under the
#* GNU General Public License (>=v2).
#* Read the file COPYING that comes with GRASS
#* for details.
#*
#****************************************************************
#%module
#% description: Calcola la quota di un punto di un vettoriale 3D
#% keywords: vector
#%end
#%option
#% key: map
#% type: string
#% gisprompt: old,vector,vector
#% key_desc: nome
#% description: Nome copertura vettoriale 3D
#% required: yes
#%end
#%option
#% key: x
#% type: double
#% key_desc: Coordinata X
#% description: Coordinata X
#% required: yes
#% answer: 2515000
#%end
#%option
#% key: y
#% type: double
#% key_desc: Coordinata Y
#% description: Coordinata Y
#% required: yes
#% answer: 4456000
#%end
import os, sys
import grass.script as grass
from grass.lib.gis import *
from grass.lib.vector import *
def main():
input = options['map']
x = options['x']
y = options['y']Visualizza il file sorgente di v.quota.py
NOTA (*): La libreria grass.lib è disponibile a partire dalla versione 6.4.2 di Grass. Pertanto il presente applicativo non è utilizzabile nelle versioni 6.4.1, 6.4.0 e precedenti.
Argomenti correlati:
|