Differenze
Queste sono le differenze tra la revisione selezionata e la versione attuale della pagina.
Prossima revisione | Revisione precedente | ||
gwusermanual:interface:interface:mappe_e_planimetrie [2019/11/06 09:42] 127.0.0.1 modifica esterna |
gwusermanual:interface:interface:mappe_e_planimetrie [2020/11/24 18:54] (versione attuale) giorgio.scali [Sfondi Cartografici (BaseLayer e WMS)] |
||
---|---|---|---|
Linea 1: | Linea 1: | ||
====== Mappe e Planimetrie ====== | ====== Mappe e Planimetrie ====== | ||
+ | Versioni: | ||
+ | * [[:gwusermanual:interface:interface:Mappe e Planimetrie#Versione 4.5.X|Versione 4.5.X]] | ||
+ | * [[:gwusermanual:interface:interface:Mappe e Planimetrie#Campi Comuni|Campi Comuni]] | ||
+ | * [[:gwusermanual:interface:interface:Mappe e Planimetrie#Configurazione XML|Configurazione XML]] | ||
+ | * [[:gwusermanual:interface:interface:Mappe e Planimetrie#Associazione a MapGuide|Associazione a MapGuide]] | ||
+ | * [[:gwusermanual:interface:interface:Mappe e Planimetrie#Sfondi Cartografici (BaseLayer e WMS)|Sfondi Cartografici (BaseLayer e WMS)]] | ||
+ | * [[:gwusermanual:interface:interface:Mappe e Planimetrie#Layer Openlayers|Layer Openlayers]] | ||
+ | * [[:gwusermanual:interface:interface:Mappe e Planimetrie#Mappa Cartografica|Mappa Cartografica]] | ||
+ | * [[:gwusermanual:interface:interface:Mappe e Planimetrie#Mappa Planimetrica|Mappa Planimetrica]] | ||
+ | * [[:gwusermanual:interface:interface:Mappe e Planimetrie#Mappa Cartografica Parzializzata|Mappa Cartografica Parzializzata]] | ||
+ | * [[:gwusermanual:interface:interface:Mappe e Planimetrie#Versione 4.0.X|Versione 4.0.X]] | ||
+ | |||
+ | |||
+ | ===== Versione 4.5.X ===== | ||
+ | |||
+ | Per poter visualizzare una scheda di tipo //mapLayout2D// (Mappa 2D) occorre preventivamente configurare appositi metadati. | ||
+ | Tale configurazione viene gestita nella sezione “Gestione Mappe e Scene” di Geoweb Admin. | ||
+ | |||
+ | {{ :gwusermanual:admin_maps_and_scene_management.jpg|}} | ||
+ | |||
+ | Una //gwMap// è un particolare metadato di Geoweb che determina in che particolare modo verrà presentata all'utente una scheda di tipo //mapLayout2D//, che utilizza la definizione contenuta nella //gwMap// stessa. Essa può, a seconda della tipologia, legare a se altri metadati di Geoweb. | ||
+ | |||
+ | ==== Campi Comuni ==== | ||
+ | * **Nome**, obbligatorio, deve essere uguale ad una mappa configurata in MapGuide. | ||
+ | * **Descrizione**, opzionale, non funzionale | ||
+ | * **Sistema di Coordinate**, obbligatorio per la cartografia, va configurato in modo coerente con la configurazione MapGuide Maestro. Valori di esempio: 'EPSG:3857', '3857' | ||
+ | * **Tipologia Mappa**, obbligatorio, 'Cartografia', 'Planimetria', 'Cartografia Parzializzata' | ||
+ | * **Colore di Sfondo**, opzionale, default #FFFFFF. permette di configurare un colore di sfondo, visualizzato sotto ogni altra cosa | ||
+ | |||
+ | ==== Configurazione XML ==== | ||
+ | C'è una parte di xml che determina cosa sarà presente nella UI visualizzata dall'utente, comprese le varie funzionalità, anche erogate da plugin. Questa è una configurazione generale, esempi più calzanti per le varie tipologie di mappa sono disponibili sotto. | ||
+ | Sono gestiti commenti dentro '<!--' e ' -->'. I tag non riconosciuti e testo fuori dai tag non danno errori bloccanti. | ||
+ | |||
+ | <code xml> | ||
+ | <?xml version="1.0" encoding="UTF-8"?> | ||
+ | <mode> | ||
+ | <mainToolbar> | ||
+ | <buttonGroup name='selection' /> | ||
+ | <buttonGroup name='navigation' /> | ||
+ | <buttonGroup name='info' /> | ||
+ | <buttonGroup name='refresh' /> | ||
+ | <buttonGroup name='report' /> | ||
+ | <!--<buttonGroup name='googleStreetView' />--> | ||
+ | <buttonGroup name='commandsTab' /> | ||
+ | </mainToolbar> | ||
+ | <tabList> | ||
+ | <tab type='layers' name='layers' label='' /> | ||
+ | <tab type='baseMaps' name='baseMaps' label='' /> | ||
+ | <tab type='edit' name='edit' label=''> | ||
+ | <!--<tabAttribute name='cutCopyPasteToolbar' />--> | ||
+ | <tabAttribute name='singleInsertToolbar' /> | ||
+ | <tabAttribute name='singleMultipleEditToolbar' /> | ||
+ | </tab> | ||
+ | <tab type='pluginTab' name='pluginTab' label='Custom Plugin Tab' icon32=''/> | ||
+ | </tabList> | ||
+ | <properties> | ||
+ | <entry key="showScaleLineControl" value="true" /> | ||
+ | <entry key="showScaleControl" value="true" /> | ||
+ | <entry key="showMousePositionControl" value="true" /> | ||
+ | <entry key="startWithMapSwitcherOpened" value="true" /> | ||
+ | </properties> | ||
+ | </mode> | ||
+ | </code> | ||
+ | |||
+ | Il tag tag //<mode></mode>// ha degli attributi, //name//, //label//, //icon//, //defaultSelected// attualmente non valutati. | ||
+ | Sotto il tag //<mode></mode>//, sono presenti tre sezioni: | ||
+ | * tag **<mainToolbar></mainToolbar>**, ospita tag **<buttonGroup/>**, ognuno dei quali determina la comparsa sulla toolbar principale di un gruppo di bottoni organizzati secondo gruppi predefiniti nel framework, o resi disponibili tramite plugin. | ||
+ | * **<buttonGroup/>** predefiniti (determinati dal //name//): | ||
+ | * //selection// | ||
+ | * //navigation// | ||
+ | * //info// | ||
+ | * //refresh// | ||
+ | * //report// | ||
+ | * //commandsTab// particolare gruppo che rende disponibili sulla toolbar principale scorciatoie per aprire i Tab (configurabili sotto) e collassare/espandere il relativo menu a scomparsa | ||
+ | * //googleStreetView// definito su plugin (configurato, ma veramente disponibile e visualizzato solo in presenza del relativo plugin **googleStreetView**) | ||
+ | * tag **<tabList></tabList>**, ospita tag **<tab/>**, ognuno dei quali determina un tipo di tab disponibile, fra quelli predefiniti od erogati da plugin. | ||
+ | * <tab/> predefiniti (determinati dal //type//): | ||
+ | * //layers//, se presente, viene visualizzata la scheda per la gestione dei //layer erogati da MapGuide// | ||
+ | * //baseMaps//, se presente, viene visualizzata la scheda per la visualizzazione dei //baseLayer// | ||
+ | * //edit//, se presente, viene visualizzata la scheda per l'editing in mappa delle entità sulle quali l'utente è abilitato | ||
+ | * pluginTab, esempio di eventuale tab definito in un qualche plugin. effettivamente visualizzato solo se è presente il relativo plugin | ||
+ | * tag **<properties></properties>**, ospita tag **<entry />**, ognuno dei quali permette di configurare proprietà e relativi valori, che possono essere riletti in vari punti del framework, anche ad uso e consumo dei plugin. Le proprietà, booleane, conosciute e valutate di default (che hanno prevalenza anche sulle corrispettive eventualmente definite nell' xml di progetto), sono: | ||
+ | * //showScaleLineControl// | ||
+ | * //showScaleControl// | ||
+ | * //showMousePositionControl// | ||
+ | * //startWithMapSwitcherOpened// | ||
+ | |||
+ | |||
+ | ==== Associazione a MapGuide ==== | ||
+ | E' prassi associare alla gwMap, una corrispettiva mappa definita in **MapGuide Maestro** (//mgMap//). Questo viene fatto soprattutto per sfruttare le funzionalità del motore cartografico MapGuide, che permette di renderizzare in maniera molto efficiente un numero molto elevato di entità per il //Bounding Box// corrente della mappa (definito, a parità di spazio disponibile in finestra del browser, dalla posizione corrente della finestra di mappa e dal livello corrente di zoom). Inoltre sono presenti logiche di selezioni delle entità renderizzare in mappa, basate su query spaziali, in cui il motore Cartografico di MapGuide è parte fondamentale. | ||
+ | |||
+ | ==== Sfondi Cartografici (BaseLayer e WMS) ==== | ||
+ | A mappe di tipo cartografico, sono in genere associati dei metadati atti a visualizzare uno sfondo cartografico. Questi, i //baseLayer//, sono definiti e configurati a parte (sempre nello stesso albero) e possono essere associati alla singola gwMap. Le tipologie disponibili sono fisse e sono erogate dai principali provider di servizi di cartografia: **Google**, **Bing**, **OpenStreetMap**. | ||
+ | Esistono inoltre dei particolari sfondi cartografici, definiti di tipo **WMS**, e configurati per lavorare con appositi servizi erogati da server esterni a geoweb. Una guida sui servizi WMS e loro configurazioen è disponibile [[https://wiki.geowebframework.com/doku.php?id=custom:external_wms_integration|qui]]. | ||
+ | |||
+ | ==== Layer Openlayers ==== | ||
+ | Esistono poi anche dei layer di tipo **Openlayers**, che possono essere configurati e visualizzati indipendentemente da MapGuide. Essi vanno creati nella sezione 'Layer', delle varie gwClass interessate (nell'albero 'Temi e Classi'), ed associati alla gwMap desiderata. | ||
+ | Essi vengono rendderizzati ad ogni apertura mappa, permettono customizzazioni spinte nelle renderizzazione delle varie entità rappresentate in mappa. | ||
+ | Se esistono si possono utilizzare anche per avere punti di snap aggiuntivi durante le fasi di editing in mappa. | ||
+ | Hanno lo svantaggio che, essendo sempre renderizzati tutti per un dato BoundingBox corrente della gwMap, in caso di un elevato numero di entità ci potrebbe essere un degrado nelle performance. | ||
+ | |||
+ | |||
+ | |||
+ | ==== Mappa Cartografica ==== | ||
+ | E' la tipologia usata per rappresentare entità distribuite sul territorio, mediante il supporto di mappe cartografiche. | ||
+ | La si sceglie configurando 'Cartografia' nel select **Tipologia Mappa**. | ||
+ | Va obbligatoriamente configurato il **Sistema di Coordinate**. | ||
+ | |||
+ | {{ :gwusermanual:admin_carthog_map_manag_1.jpg|}} | ||
+ | |||
+ | Nell'xml notiamo tra i //buttonGroup// la presenza di //googleStreetView//, che è erogato dall' apposito plugin **googleStreetView**, ed è una funzionalità usabile solo nelle mappe cartografiche (a cui tra l'altro sono associati baseLayer Google opportunamente configurati per farsi erogare i vari servizi dal Provider Google). | ||
+ | Essendo una mappa cartografica è presente il tab con type='baseMaps'. | ||
+ | |||
+ | <code xml carthografic_map_template.xml> | ||
+ | <?xml version="1.0" encoding="UTF-8"?> | ||
+ | <mode> | ||
+ | <mainToolbar> | ||
+ | <buttonGroup name='selection' /> | ||
+ | <buttonGroup name='navigation' /> | ||
+ | <buttonGroup name='info' /> | ||
+ | <buttonGroup name='refresh' /> | ||
+ | <buttonGroup name='report' /> | ||
+ | <buttonGroup name='googleStreetView' /> | ||
+ | <buttonGroup name='commandsTab' /> | ||
+ | </mainToolbar> | ||
+ | <tabList> | ||
+ | <tab type='layers' name='layers' label='' /> | ||
+ | <tab type='baseMaps' name='baseMaps' label='' /> | ||
+ | <tab type='edit' name='edit' label=''> | ||
+ | <!--<tabAttribute name='cutCopyPasteToolbar' />--> | ||
+ | <tabAttribute name='singleInsertToolbar' /> | ||
+ | <tabAttribute name='singleMultipleEditToolbar' /> | ||
+ | </tab> | ||
+ | </tabList> | ||
+ | <properties> | ||
+ | <entry key="showScaleLineControl" value="true" /> | ||
+ | <entry key="showScaleControl" value="true" /> | ||
+ | <entry key="showMousePositionControl" value="true" /> | ||
+ | <entry key="startWithMapSwitcherOpened" value="true" /> | ||
+ | </properties> | ||
+ | </mode> | ||
+ | </code> | ||
+ | |||
+ | BaseLayer associati alla mappa (configurati a parte). | ||
+ | |||
+ | {{ :gwusermanual:admin_carthog_map_manag_2.jpg|}} | ||
+ | |||
+ | Associazione con la mappa MapGuide. | ||
+ | |||
+ | {{ :gwusermanual:admin_carthog_map_manag_3.jpg|}} | ||
+ | |||
+ | |||
+ | ==== Mappa Planimetrica ==== | ||
+ | |||
+ | E' la tipologia usata per rappresentare entità distribuite su planimetrie di edifici. La parte architettonica e delle entità presenti è erogata tramite MapGuide. Le entità possono opzionalmente avere anche un layer OpenLayers. | ||
+ | La si sceglie configurando 'Planimetria' nel select **Tipologia Mappa**. | ||
+ | Non va configurato il **Sistema di Coordinate**. | ||
+ | |||
+ | {{ :gwusermanual:admin_plan_map_manag_1.jpg|}} | ||
+ | |||
+ | Essendo una mappa planimetrica non è presente il tab con type='baseMaps'. | ||
+ | |||
+ | Lato xml, è stato aggiunto il tab con type //furniture//, che è reso disponibile dal plugin **fornitureplugin**. | ||
+ | |||
+ | <code xml planimetric_map_template.xml> | ||
+ | <?xml version="1.0" encoding="UTF-8"?> | ||
+ | <mode> | ||
+ | <mainToolbar> | ||
+ | <buttonGroup name='selection' /> | ||
+ | <buttonGroup name='navigation' /> | ||
+ | <buttonGroup name='info' /> | ||
+ | <buttonGroup name='refresh' /> | ||
+ | <buttonGroup name='report' /> | ||
+ | <buttonGroup name='commandsTab' /> | ||
+ | </mainToolbar> | ||
+ | <tabList> | ||
+ | <tab type='layers' name='layers' label='' icon32=''/> | ||
+ | <tab type='edit' name='edit' label=''> | ||
+ | <!--<tabAttribute name='cutCopyPasteToolbar' />--> | ||
+ | <tabAttribute name='singleInsertToolbar' /> | ||
+ | <tabAttribute name='singleMultipleEditToolbar' /> | ||
+ | </tab> | ||
+ | |||
+ | <!--adding some specific planimetry plugins--> | ||
+ | <tab type='furniture' name='furniture' label=''/> | ||
+ | </tabList> | ||
+ | <properties> | ||
+ | <entry key="showScaleLineControl" value="true" /> | ||
+ | <entry key="showScaleControl" value="true" /> | ||
+ | <entry key="showMousePositionControl" value="true" /> | ||
+ | <entry key="startWithMapSwitcherOpened" value="true" /> | ||
+ | </properties> | ||
+ | </mode> | ||
+ | </code> | ||
+ | |||
+ | Essendo una Planimetria, in questo caso non c'è alcun BaseLayer associato alla mappa. | ||
+ | |||
+ | {{ :gwusermanual:admin_plan_map_manag_2.jpg|}} | ||
+ | |||
+ | Associazione con la mappa MapGuide. | ||
+ | |||
+ | {{ :gwusermanual:admin_plan_map_manag_3.jpg|}} | ||
+ | |||
+ | In questo caso è associato anche qualche layer di tipo OpenLayers che anche se configurato (a parte) come invisibile, è utile per lo snap in fase di editing Arredi in Planimetria. | ||
+ | |||
+ | {{ :gwusermanual:admin_plan_map_manag_4.jpg|}} | ||
+ | |||
+ | |||
+ | ==== Mappa Cartografica Parzializzata ==== | ||
+ | |||
+ | Si utilizza per casi particolari, in cui i dati di una mappa fondamentalmente //cartografica//, sono gestiti in maniera simile ai criteri di partializzazione usati per le planimetrie (basati sulla presenza del campo **DRAWING** sulle tabelle, e relative configurazioni). | ||
+ | Questa modalità d'uso è spesso associata alla presenza di specifici parametri in sessione. | ||
+ | |||
+ | |||
+ | |||
+ | ===== Versione 4.0.X ===== | ||
+ | |||
+ | Le configurazioni sono molto simili a quanto descritto sopra, ad eccezione del fatto che non esisteva del tutto la parte xml. | ||
+ | Quindi non c'è la possibilità di scegliere, mappa per mappa, quali gruppi di bottoni o schede laterali mostrare. Le logiche sono regolate da rigidi automatismi. | ||
+ | Inoltre la parte di configurazione presente nel tag //<properties>// del'xml è recuperata in toto dall'xml di progetto, nella sezione //<mapSettings></mapSettings>//. | ||
+ | In caso non fosse configurata si fa ancora riferimento a dei valori di default. |