grid poligonale su raster

classic Classic list List threaded Threaded
4 messages Options
Reply | Threaded
Open this post in threaded view
|

grid poligonale su raster

marcello marcellone
Salve sono Tony da Ischia, siccome è la prima volta che scrivo qui mi presento brevemente sono un progettista e DBA ORACLE che sta aiutando un gruppo di amici ricercatori sui mammiferi marini nel comprensorio di ischia a creare un SIT per l'analisi delle popolazioni locali di cetacei. Per l'occasione ho fatto un mini corso di 4 giorni all'IRST di Trento con Furlanello. Ho completato la prima fase ed ho disegnato la base di dati in postgres con relativa migrazione dai dati delle campagne marine di osservazione,
Adesso sto iniziando ad implementare l'analisi spaziale sotto postgis e qgis per "visualizzare" ma sono alle prime armi in questo settore.
Ho creato una tabella di parametri di grid che mi permette di generare reticoli di celle poligonali e reticoli di celle 'linestring'.
I reticoli poligonali mi servono per calcolare dei tassi di osservazione per cella ma se cerco di visualizzare il reticolo poligonale sulla mappa raster in formato grd, il reticolo vettoriale mi ricopre la mappa, come posso fare per sovrappore il layer vettoriale sul raster visualizzando solo i confini di cella e non anche le aree che ricoprono la cella raster sottostante ?
 


_______________________________________________
Iscriviti all'associazione GFOSS.it: http://www.gfoss.it/drupal/iscrizione
[hidden email]
http://lists.faunalia.it/cgi-bin/mailman/listinfo/gfoss
Questa e' una lista di discussione pubblica aperta a tutti.
I messaggi di questa lista non rispecchiano necessariamente
le posizioni dell'Associazione GFOSS.it.
Reply | Threaded
Open this post in threaded view
|

Re: grid poligonale su raster

Andrea Peri
>...Ho creato una tabella di parametri di grid che mi permette di generare reticoli 
>di celle poligonali e reticoli di celle 'linestring'.

Forse faccio confusione a seguirti.

Ricordo che in Oracle si tendeva a confondere il cocncetto di raster georeferenziato con il dato grid.
Visto che entrambi erano a cella.
Ma in postgres non puoi caricare dati grid.
Forse ti riferisci a un normale layer vettoriale con poligoni a forma di grigliato,
ma allora cosa sarebbe la tabella di parametri di grid ?

>I reticoli poligonali mi servono per calcolare dei tassi di osservazione per cella ma se
>cerco di visualizzare il reticolo poligonale sulla mappa raster in formato grd,

Se parli di un vero grid non saprei che dirti.

Se invece e' un semplice poligono , allora rendi a trasparente il fill.



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


_______________________________________________
Iscriviti all'associazione GFOSS.it: http://www.gfoss.it/drupal/iscrizione
[hidden email]
http://lists.faunalia.it/cgi-bin/mailman/listinfo/gfoss
Questa e' una lista di discussione pubblica aperta a tutti.
I messaggi di questa lista non rispecchiano necessariamente
le posizioni dell'Associazione GFOSS.it.
Reply | Threaded
Open this post in threaded view
|

Re: grid poligonale su raster

marcello marcellone
In reply to this post by marcello marcellone
--- Dom 28/2/10, Zucchini Antonio <[hidden email]> ha scritto:
IOvviamente parlo sempre di dato vettoriale per il postgis, per il qgis non ho capito come rendere trasparente il fill perchè se metto tutto trasparente sopra il raster sotto non appare in ogni caso,
avevo già capito che dovevo rendere trasparente solo il fill e non il contorno ma non trovo in qgis l'opzione adatta.

Per la tabella di parametri di grid la utilizzo per generare dinamicamente delle grid vettoriale partendo da parametri che possono essere anche definiti dall'utente finale (i ricercatori) che nula sanno e nulla vogliono sapere dei dettagli implementativi del modello logico e di archittetura del GIS.

Riporto un esempio di script di generazione:

INSERT
INTO   delphis.grids
      (parameter
      ,lon_index
      ,lat_index
      ,quota_index
      ,lon_south_west
      ,lat_south_west
      ,quota_south_west
      ,lon_south_east
      ,lat_south_east
      ,quota_south_east
      ,lon_north_east
      ,lat_north_east
      ,quota_north_east
      ,lon_north_west
      ,lat_north_west
      ,quota_north_west
      ,polygon_utm_wgs84
      )
SELECT polygrid.parameter
      ,lon_index
      ,lat_index
      ,0                                                 as quota_index
      ,lon_south_west      + (lon_index-1) * cell_length as lon_sw
      ,lat_south_west      + (lat_index-1) * cell_length as lat_sw
      ,quota_south_west    + 0                           as quota_sw
      ,lon_south_east      + (lon_index-1) * cell_length as lon_se
      ,lat_south_east      + (lat_index-1) * cell_length as lat_se
      ,quota_south_east    + 0                           as quota_se
      ,lon_north_east      + (lon_index-1) * cell_length as lon_ne
      ,lat_north_east      + (lat_index-1) * cell_length as lon_ne
      ,quota_north_east    + 0                           as quota_ne
      ,lon_north_west      + (lon_index-1) * cell_length as lon_nw
      ,lat_north_west      + (lat_index-1) * cell_length as lat_nw
      ,quota_north_west    + 0                           as quota_nw  
      ,ST_TRANSLATE(cell,(lon_index-1) * cell_length , (lat_index-1) * cell_length, 0)            as grid_element
FROM
(
SELECT parameter
      ,GENERATE_SERIES(1,cells_side+1) as lon_index
FROM   delphis.parameters_grid
WHERE  COALESCE(status_grid,'NOBUILT') = 'NOBUILT'
)      lon_series,
(
SELECT parameter
      ,GENERATE_SERIES(1,cells_side+1) as lat_index
FROM   delphis.parameters_grid
WHERE  COALESCE(status_grid,'NOBUILT') = 'NOBUILT'
)      lat_series,
(
SELECT parameter
      ,cell_length
      ,cells_side
      ,low_corner_lon             as lon_south_west
      ,low_corner_lat             as lat_south_west
      ,low_corner_quota           as quota_south_west
      ,low_corner_lon             as lon_south_east
      ,low_corner_lat+cell_length as lat_south_east
      ,low_corner_quota           as quota_south_east
      ,low_corner_lon+cell_length as lon_north_east
      ,low_corner_lat+cell_length as lat_north_east
      ,low_corner_quota           as quota_north_east
      ,low_corner_lon+cell_length as lon_north_west
      ,low_corner_lat             as lat_north_west
      ,low_corner_quota           as quota_north_west
      ,srid
      ,ST_MAKEPOLYGON(
                      ST_MAKELINE(
                                  ARRAY[ST_SETSRID(ST_MAKEPOINT(low_corner_lon            ,low_corner_lat            ,low_corner_quota),srid)::geometry
                                       ,ST_SETSRID(ST_MAKEPOINT(low_corner_lon            ,low_corner_lat+cell_length,low_corner_quota),srid)::geometry
                                       ,ST_SETSRID(ST_MAKEPOINT(low_corner_lon+cell_length,low_corner_lat+cell_length,low_corner_quota),srid)::geometry
                                       ,ST_SETSRID(ST_MAKEPOINT(low_corner_lon+cell_length,low_corner_lat            ,low_corner_quota),srid)::geometry
                                       ,ST_SETSRID(ST_MAKEPOINT(low_corner_lon            ,low_corner_lat            ,low_corner_quota),srid)::geometry
                                       ]
                                 )
                     ) as cell
FROM   delphis.parameters_grid pg
WHERE  COALESCE(status_grid,'NOBUILT') = 'NOBUILT'
ORDER
BY     cell_length
      ,parameter
)      polygrid
WHERE  lat_series.parameter = polygrid.parameter
AND    lon_series.parameter = polygrid.parameter
ORDER
BY     cell_length
      ,polygrid.parameter
      ,lon_index
      ,lat_index;
update delphis.grids set polygon_wgs84    = st_transform(polygon_utm_wgs84,4326);     
update delphis.grids set polygon_utm_ed50 = st_transform(polygon_utm_wgs84,23033);
update delphis.parameters_grid
set    status_grid                        = 'BUILT'
where  coalesce(status_grid,'NOBUILT')    = 'NOBUILT';
commit;



_______________________________________________
Iscriviti all'associazione GFOSS.it: http://www.gfoss.it/drupal/iscrizione
[hidden email]
http://lists.faunalia.it/cgi-bin/mailman/listinfo/gfoss
Questa e' una lista di discussione pubblica aperta a tutti.
I messaggi di questa lista non rispecchiano necessariamente
le posizioni dell'Associazione GFOSS.it.
Reply | Threaded
Open this post in threaded view
|

Re: grid poligonale su raster

Andrea Peri
In reply to this post by marcello marcellone
>avevo già capito che dovevo rendere trasparente solo il fill e non il
>contorno ma non trovo in qgis l'opzione adatta.

evidenzi il layer nella legenda (o tabella dei contenuti che dir si voglia)
apri le proprieta',
vai su simbologia
a meta' finestra vedi una combo con dentro un quadratino nella sezione "opzioni riempimento"
apri la combo tra le ultime opzioni
trovi la voce
"nessuno"
selezioni tale opzione.

Questo nella versione 1.5.0 trunk di qgis.
Nelle precedenti e' un po' differente, ma similare.


Ciao,

Andrea.



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


_______________________________________________
Iscriviti all'associazione GFOSS.it: http://www.gfoss.it/drupal/iscrizione
[hidden email]
http://lists.faunalia.it/cgi-bin/mailman/listinfo/gfoss
Questa e' una lista di discussione pubblica aperta a tutti.
I messaggi di questa lista non rispecchiano necessariamente
le posizioni dell'Associazione GFOSS.it.