Documentazione Grules, versione 2.1


Terza applicazione: coperture areali e stili

Atte

Grules permette di visualizzare layer areali o lineari in multirisoluzione o livello di dettaglio: il numero di segmenti che compongono un'area (per esempio un comune) cambia a seconda della risoluzione, in maniera da mantenere la forma dell'area. Questo permette di visualizzare in dettagli aree che sarebbero troppo pesanti computazionalmente.

Un piccolo insieme di coperture di uso comune (comuni, province, idrografia etc) sono fornite di default. In questo caso il formato va specificato come 'mjson' e l'url punta alla directory dove sono contenuti i files della copertura.

Questi vengono creati a partire da shapefiles usando il tool multires.

Qualora venisse visualizzato un errore durante il caricamento, esso dipende dal modello di sicurezza di Chrome, che non permette httpxmlrequest su file html caricati da disco. Per risolvere il problema è possibile lanciare chrome con l'opzione --disable-web-security, oppure usare un'altro browser.

In questo esempio assoceremo ad ogni comune un colore usando una stylemap. L'info, nell'esempio fa riferimento ad una jsp e non funzionerà, è solo un esempio.

var bandalarga = {
  id: "bandalarga",
  format: "mjson",
  geometry: { url: "coperture/comuni/" },
  style: { fillColor: "#dd0", cursor: 'pointer', fillOpacity: 0.5, 
           strokeOpacity: 0.5 ,strokeColor:"#888" , strokeWidth:1.5 },
  stylemap: "bandalarga/attivazione.js",
  info: { url: "info_bl.jsp?comune_istat=<%=id%>" }
};

Nel precedente esempio avevamo specificato lo stile delle farmacie come una mappa a partire dal campo tipo. In questo caso il file attivazione.js contiene l'elenco dei comuni e associa ad ogni codice istat un colore. Il file può essere statico o generato dinamicamente a partire da una tabella di database.

{
...
  "9046029": {"fillColor": "#0F0"},
  "9052033": {"fillColor": "#CCC"},
  "9053026": {"fillColor": "#FF0"},
...
}

Le mappe di stile sono applicabili anche agli oggetti puntuali.