Item |
Text |
|---|---|
1 |
Lorem ipsum dolor sit amet, consectetur adipiscing elit. An haec ab eo non dicuntur? Quae rursus dum sibi evelli ex ordine nolunt, horridiores evadunt, asperiores, duriores et oratione et moribus. Claudii libidini, qui tum erat summo ne imperio, dederetur. Ista ipsa, quae tu breviter: regem, dictatorem, divitem solum esse sapientem, a te quidem apte ac rotunde; Bona autem corporis huic sunt, quod posterius posui, similiora. Illud mihi a te nimium festinanter dictum videtur, sapientis omnis esse semper beatos; Duo Reges: constructio interrete. At iam decimum annum in spelunca iacet. Id enim volumus, id contendimus, ut officii fructus sit ipsum officium. Nam si propter voluptatem, quae est ista laus, quae possit e macello peti? Sit sane ista voluptas. Quod praeceptum quia maius erat, quam ut ab homine videretur, idcirco assignatum est deo. Neque enim civitas in seditione beata esse potest nec in discordia dominorum domus; Epicurei num desistunt de isdem, de quibus et ab Epicuro scriptum est et ab antiquis, ad arbitrium suum scribere? |
2 |
Quae quidem res efficit, ne necesse sit isdem de rebus semper quasi dictata decantare neque a commentariolis suis discedere. Earum etiam rerum, quas terra gignit, educatio quaedam et perfectio est non dissimilis animantium. Nam constitui virtus nullo modo potesti nisi ea, quae sunt prima naturae, ut ad summam pertinentia tenebit. Si est nihil nisi corpus, summa erunt illa: valitudo, vacuitas doloris, pulchritudo, cetera. Nos quidem Virtutes sic natae sumus, ut tibi serviremus, aliud negotii nihil habemus. Polemoni et iam ante Aristoteli ea prima visa sunt, quae paulo ante dixi. Placet igitur tibi, Cato, cum res sumpseris non concessas, ex illis efficere, quod velis? Mene ergo et Triarium dignos existimas, apud quos turpiter loquare? Negat enim summo bono afferre incrementum diem. Atqui haec patefactio quasi rerum opertarum, cum quid quidque sit aperitur, definitio est. |
3 |
Nam, ut paulo ante docui, augendae voluptatis finis est doloris omnis amotio. Cenasti in vita numquam bene, cum omnia in ista Consumis squilla atque acupensere cum decimano. Qui non moveatur et offensione turpitudinis et comprobatione honestatis? Vitae autem degendae ratio maxime quidem illis placuit quieta. |
4 |
Faceres tu quidem, Torquate, haec omnia; Quod vestri non item. Vidit Homerus probari fabulam non posse, si cantiunculis tantus irretitus vir teneretur; Laboribus hic praeteritis gaudet, tu iubes voluptatibus, et hic se ad ea revocat, e quibus nihil umquam rettulerit ad corpus, tu totus haeres in corpore. Tum Piso: Atqui, Cicero, inquit, ista studia, si ad imitandos summos viros spectant, ingeniosorum sunt; Quod non subducta utilitatis ratione effici solet, sed ipsum a se oritur et sua sponte nascitur. Satisne igitur videor vim verborum tenere, an sum etiam nunc vel Graece loqui vel Latine docendus? Ergo id est convenienter naturae vivere, a natura discedere. Hoc est dicere: Non reprehenderem asotos, si non essent asoti. |
5 |
An eum discere ea mavis, quae cum plane perdidiceriti nihil sciat? Sic igitur in homine perfectio ista in eo potissimum, quod est optimum, id est in virtute, laudatur. Haec bene dicuntur, nec ego repugno, sed inter sese ipsa pugnant. Res enim fortasse verae, certe graves, non ita tractantur, ut debent, sed aliquanto minutius. Qua exposita scire cupio quae causa sit, cur Zeno ab hac antiqua constitutione desciverit, quidnam horum ab eo non sit probatum; Cum autem dispicere coepimus et sentire quid, simus et quid ab animantibus ceteris differamus, tum ea sequi incipimus, ad quae nati sumus. Non modo carum sibi quemque, verum etiam vehementer carum esse? Tenuit permagnam Sextilius hereditatem, unde, si secutus esset eorum sententiam, qui honesta et recta emolumentis omnibus et commodis anteponerent, nummum nullum attigisset. Mihi quidem Homerus huius modi quiddam vidisse videatur in iis, quae de Sirenum cantibus finxerit. Re mihi non aeque satisfacit, et quidem locis pluribus. Crasso, quem semel ait in vita risisse Lucilius, non contigit, ut ea re minus agelastoj ut ait idem, vocaretur. Longum est enim ad omnia respondere, quae a te dicta sunt. |
Configuration requise¶
Cette section détaille les configurations possibles pour le navigateur dans un contexe cartographique. À l’aide de fichiers de configuration (fichiers JSON) , il est possible de paramétrer:
l’application
le contenu cartographique
Application¶
La configuration de l’application est possible grâce au fichier config.json. Ce dernier est situé dans le répertoire :
Il est également possible de configurer l’application grâce à un second fichier selon l’environnement désiré (test ou production).
Pour modifier le comportement de l’application, vous pouvez modifier:
Si vous désirez changer le chemin d’accès de ce fichier ou bien d’environnement.*.ts , il est spécifié dans le code de l’application dans le fichier:
/src/app/app.module.ts ligne 41.
Important : Notez que le fichier config.json a préséance sur le fichier environment.*.ts
Résumé¶
Analytics¶
Sert à configurer une application pour effectuer le monitoring du site web pour les statistiques.NB. : Pour une application sans statistiques, simplement ne pas mettre ces configurations.
Exemples
"analytics": { "provider": "matomo", "url": "https://geoegl.msp.gouv.qc.ca/matomo/", "id": "40" }
Auth¶
Note
En cours de construction
Sert à effectuer l’authentification des usagers.NB. : Pour une application sans authentification, simplement ne pas mettre ces configurations.
Exemples
"auth": { "url": "/apis/users", "tokenKey": "id_token_igo", "allowAnonymous": true, "hostsWithCredentials": [{ withCredentials: true, domainRegFilters: '(https:\/\/|http:\/\/)(.*domain.com)(.*)' }] }
Propriétés
Important : Les propriétés en caractère gras suivies d’un * sont obligatoires.
Liens
Catalog¶
Cette section de la configuration permet de charger une liste de sources de cataloguage. Une fois les sources chargées, il est possible d’ajouter ces couches d’informations à la carte.Les sources de cataloguage permises:- Service WMS- Service WMTS- Service ArcGIS REST- Service Image ArcGIS Rest- Service Tile ArcGIS RestLes couches d’informations contenues dans ces services sont récupérées grâce aux couches publiées dans le GetCapabilities du service.NB: Il est possible de configurer certaines options dans les catalogues comme le format de présentation des informations(queryFormat) ou la configuration desfiltres temporels souhaités (Voir exemples)Partage de carte:1- Les couches ajoutées (WMS-WMTS) par le catalogue sont partagées lors du partage de carte.2- La structure de l’url pour les couches partagées est la suivante:- wmsUrl => une liste, séparée par une ‘,’ (virgule) listant les url de service ajoutées.- Exemple : wmsUrl=urlDuService1,urlDuService2- layers => une liste, séparée par une ‘,’ (virgule) groupée par un bloc de parenthèses, respectant l’ordre des services déclarés dans wmsUrl- Exemple : layers=(layer1,layer2),(layer3,layer4)- layer1 et layer2 proviennent de l’url “urlDuService1”- layer3 et layer4 proviennent de l’url “urlDuService2”- si un “layer” possède le suffix :igoz13- Il s’agit de la position du “layer” dans la table des matières. Ici la position 13.Chaque couche ajoutée possède un identifiant unique généré à partir du “layer name” et de l’url du service source. Se référer à :igo2-lib/packages/geo/src/lib/datasource/utils/id-generator.ts#L15Note sur le comportement de l’objet Composite Catalog:- la propriété groupImpose met toutes les couches des sous-groupes enfants sur le même niveau.- le titre des couches de même niveau (racine ou groupe) est unique pour une même source.- un tag est ajouté sur les titres identique de couches de même niveau et de source différente.
Exemples
"catalog": { "sources": [ { "id": "Image Arcgis Rest", "title": "Image Arcgis Rest", "url": "https://sampleserver1.arcgisonline.com/ArcGIS/rest/services/Specialty/ESRI_StateCityHighway_USA/MapServer", "externalProvider": true, "type": "imagearcgisrest", "sourceOptions": { "queryable": true, "idColumn": "OBJECTID" } }, { "id": "opendataqc", "title": "Données Ouvertes Québec", "url": "/ws/igo_gouvouvert.fcgi" }, { "id": "mffp", "title": "MFFP", "url": "/ws/mffpecofor.fcgi", "sourceOptions": { "timeFilter": { "style": "calendar", "range": true, "step": 63072000000, "type": "year" } } }, { "id": "mtq", "title": "MTQ", "url": "https://ws.mapserver.transports.gouv.qc.ca/swtq", "sortDirection": "desc", "queryFormat": { "htmlgml2": "*", "json": "stations_meteoroutieres" }, "queryHtmlTarget": "iframe", "count": 365, "tooltipType": "abstract" }, { "id": "regexmtq", "title": "MTQ (filtered by regex)", "url": "https://ws.mapserver.transports.gouv.qc.ca/swtq", "regFilters": ["zpegt"] }, { "id": "group_impose", "title": "(composite catalog) with group imposed", "composite": [ { "id": "tq_swtq", "url": "https://ws.mapserver.transports.gouv.qc.ca/swtq", "regFilters": ["zpegt"], "groupImpose": {"id": "zpegt", "title": "zpegt"} }, { "id": "Gououvert", "url": "https://geoegl.msp.gouv.qc.ca/apis/ws/igo_gouvouvert.fcgi", "regFilters": ["zpegt"], "groupImpose": {"id": "zpegt", "title": "zpegt"} }, { "id": "rn_wmts", "url": "https://servicesmatriciels.mern.gouv.qc.ca/erdas-iws/ogc/wmts/Cartes_Images", "type": "wmts", "crossOrigin": true, "matrixSet": "EPSG_3857", "version": "1.0.0", "groupImpose": {"id": "cartetopo", "title": "Carte topo échelle 1/20 000"} } ] }, { "id": "forced_properties", "title": "Forced properties catalog (layer name and abstract)", "composite": [ { "id": "forcedProperties_wmts", "url": "https://servicesmatriciels.mern.gouv.qc.ca/erdas-iws/ogc/wmts/Cartes_Images", "type": "wmts", "setCrossOriginAnonymous": true, "matrixSet": "EPSG_3857", "version": "1.0.0", "forcedProperties": [{ "layerName": "BDTQ-20K_Allegee", "title": "Nouveau nom pour cette couche WMTS" }] }, { "id": "forcedProperties_wms", "url": "https://ws.mapserver.transports.gouv.qc.ca/swtq", "type": "wms", "forcedProperties": [{ "layerName": "lieuhabite", "title": "Nouveau nom pour cette couche WMS" }] }, { "id": "forcedProperties_arcgisrest", "url": "https://gisp.dfo-mpo.gc.ca/arcgis/rest/services/FGP/Seafloor_SubstratBenthique/MapServer", "externalProvider": true, "type": "imagearcgisrest", "forcedProperties": [{ "layerName": "Sediment substrate / Substrat sédimentaire", "title": "Nouveau nom pour cette couche Image ArcGIS REST" }] }, ] }, ] }
Propriétés¶
Propriétés - Objet Catalog¶
Important : Les propriétés en caractère gras suivies d’un * sont obligatoires.
Context¶
Note
En cours de construction
Permet de rejoindre une API nous fournissant des contextes cartographiques.Cette API sera documentée indépendamment de la présente documentation.
Exemples
context: { "url" : "https://geoegl.msp.gouv.qc.ca/apis/igo2/...", "defaultContextUri" : "5" }
Propriétés
Important : Les propriétés en caractère gras suivies d’un * sont obligatoires.
Liens
Depot¶
Note
En cours de construction
Exemples
depot: { "url" : "https://geoegl.msp.gouv.qc.ca/apis/depot/...", "trainingGuides?" : ["fichier1", "fichier2"] }
Propriétés
Important : Les propriétés en caractère gras suivies d’un * sont obligatoires.
hasSearchPointerSummary¶
Permet d’activé ou non la capacité d’afficher un résumé de la position du curseur.Le résumé est dépendant des sources de recherche utilisées.
hasExpansionPanel¶
Permet d’ouvrir un paneau d’expansion à partird’un bouton situé dans le coin inférieur gauche de la carte.Ce dernier contient les données tabulaires pourles données WFS / Vectorielle / Cluster.
hasGeolocateButton¶
Permet de définir s’il y aura un bouton degéolocalisation par le fureteur dans l’application
showRotationButtonIfNoRotation¶
Permet de définir si le bouton de réinitialisation de larotation est visible si aucune rotation n’est active. False par défaut.
DrawingTool¶
Cette configuration permet de créer un liste d’url représentant des icônes afin que ceux-cipuissent être utilisés dans l’outil de dessin <https://igo2.readthedocs.io/fr/latest/properties.html#draw>
Exemples
drawingTool: { icons: [ "https://icons.duckduckgo.com/ip3/www.google.com.ico", "https://img.icons8.com/color/search/96" ] }
Liens
ImportExport¶
Cette configuration permet de définir un service qui sera en mesure de convertir des formats de fichiers géométriques non gérés par IGO2(OpenLayers).Actuellement, les GeoJson, KML, KMZ sont acceptés par IGO2. Par contre, les Esri Shapefile doivent transiger par un serveur de conversion.C’est à partir ce cette propriété que vous pouvez définir le serveur de conversion qui vous retournera un fichier utilisable par IGO2 (GeoJson).
Exemples
importExport: { url: 'https://geoegl.msp.gouv.qc.ca/apis/ogre', clientSideFileSizeMaxMb: 30, gpxAggregateInComment: false, forceNaming: false, formats: ['GeoJSON', 'GML', 'GPX', 'KML', 'Shapefile', 'CSV'] }
Propriétés
Important : Les propriétés en caractère gras suivis d’un * sont obligatoires.
Liens
interactiveTour¶
Tours intéractifs de présentation de l’application
Exemples
"interactiveTour": { "activateInteractiveTour": true "tourInMobile": true, "pathToConfigFile": "./config/interactiveTour.json" },
Propriétés
Important : Les propriétés en caractère gras suivies d’un * sont obligatoires.
Language¶
Définir le dossier contenant les fichiers de traduction de l’appplication.IGO2 est actuellement disponible en anglais et en francais, selon les paramètres du navigateur.Il est toutefois possible de définir le language désiré à même le code de l’application.
Exemples
language: { "prefix": "./locale/" }
Propriétés
Important : Les propriétés en caractère gras suivies d’un * sont obligatoires.
Liens
MapOverlay¶
Permet de définir des éléments à ajouter par dessus le visuel de la carte.
Exemples
"mapOverlay": [{ "media": ["desktop"], "cssClass": "top-center", "imgSrc": " ./particular/images/FO_logo_2c.png", "imgSize": "280px", "alt": "Foret ouverte", "fixed": true, "marginTop": "10px" }, { "media": ["desktop"], "cssClass": "bottom-left", "link": "https://www.igouverte.org/", "imgSrc": "./particular/images/2a-logo_bleu_sans_icone.png", "imgSize": "30px", "fontSize": "6pt", "marginLeft": "38px", "marginBottom": "10px", "alt": "IGO", "fixed": false } ]
- Liens
optionsApi¶
Permet de définir le chemin vers API pour les options supplémentaires sur les couches ajoutées par la recherche. Par exemple, les configurations de filtre. Retourne un objet JSON venant se fusionner avec les propriété de la couche. La configuration faite au pilotage a priorité à celles fournies par l’API d’options.
Exemple
"optionsApi": { "url": "/apis/igo2/layers/options" }
overlayStyle¶
Permet de définir le style des éléments ajoutés à la carte (overlay), suite a une interrogation par clic ou par une recherche. Les objets sélection et focus sont facultatifs. Les propriétés contenues par ces objets sont également facultatives. Si les objects sont vide ou absent, le style par défaut sera appliqué (bleu et turquoise). Les couleurs acceptées peuvent être en couleur HEX, en liste RGB ou en couleur nommée.
Exemple
"queryOverlayStyle": {}, "searchOverlayStyle": { "base": { "markerColor": "purple", // marker fill "fillColor": [233,66,133], // poly "outlineColor": "LightPink", // marker contour "strokeColor": "green", // line and poly "strokeWidth": 1 // line and poly }, "selection": { "markerColor": "#32a852", // marker fill "fillColor": [95,96,133], // poly "outlineColor": "#a62997", // marker contour "strokeColor": "#a62997", // line and poly "strokeWidth": 4 // line and poly }, "focus": { "markerColor": "blue", // marker fill "fillColor": "red", // poly "outlineColor": "LightPink", // marker contour "strokeColor": "Sienna", // line and poly "strokeWidth": 2 // line and poly } }
Projections¶
Permet de définir une liste de projections non enregistrées par défault par IGO2 (Proj4). On parle ici de projection non mondiale ou à référence locale (ex: mtm, Lambert MTQ…)Référez vous à : https://epsg.io/. Ils y définissent l’entièreté des paramètres nécessaires.
Exemple
projections: [ { "alias": "Québec Lambert", "code": "EPSG:32198", "def": "+proj=lcc +lat_1=60 +lat_2=46 +lat_0=44 +lon_0=-68.5 +x_0=0 +y_0=0 +ellps=GRS80 +datum=NAD83 +units=m +no_defs", "extent": [-886251.0296, 180252.9126, 897177.3418, 2106143.8139] } ]
Propriétés - Objet Projection¶
Important : Les propriétés en caractère gras suivies d’un * sont obligatoires.
RoutingSource¶
Source serveur pour la création des itinéraires. Actuellement, le serveur utilisé est OSRM.
Exemples
"routingSources": { "osrm": { "enabled": true, "url": "https://geoegl.msp.gouv.qc.ca/services/itineraire/route/v1/driving/" }
Propriétés
Important : Les propriétés en caractère gras suivies d’un * sont obligatoires.
Liens
SearchSources¶
Note
En cours de construction
Theme¶
Permet de définir les thèmes (couleurs, fonts) de l’application.Le répertoire où sont conservés les thèmes est le igo2-lib/packages/core/src/style/themes
Exemples
"theme": "blue-theme"
Propriétés
Important : Les propriétés en caractère gras suivies d’un * sont obligatoires.
Liens
WelcomeWindow¶
Affiche une fenêtre accueil à l’entrée dans l’application.NB. : Pour une application sans fenêtre accueil, simplement ne pas mettre ces configurations.
Exemples
"welcomeWindow": { "showAgainOnNewIGOVersion": true, "nbVisitToShowAgain": 30, "nbVisitToShow":3 }
Propriétés
Important : Les propriétés en caractère gras suivies d’un * sont obligatoires.
La configuration du titre et du message présentés se fait dans les fichiers locaux de traduction en.json et fr.json. Les variables de nb. visite et de présentation ou non sont conservés dans le ‘local storage’ du navigateur internet.
{ "title": "Forêt ouverte", "theme": "teal-theme", "description": "Forêt ouverte est un portail de diffusion des données écoforestières du Gouvernement du Québec.", "analytics": { "provider": "matomo", "url": "https://geoegl.msp.gouv.qc.ca/Visiteur", "id": "40" }, "hasSearchPointerSummary": true, "mapOverlay": [ { "media": ["desktop"], "cssClass": "top-center", "imgSrc": " ./particular/images/FO_logo_2c.png", "imgSize": "280px", "alt": "Foret ouverte", "fixed": true, "marginTop": "10px" }, { "media": ["desktop"], "cssClass": "bottom-left", "link": "https://www.igouverte.org/", "imgSrc": "./particular/images/2a-logo_bleu_sans_icone.png", "imgSize": "30px", "fontSize": "6pt", "marginLeft": "38px", "marginBottom": "10px", "alt": "IGO", "fixed": false }, { "media": ["desktop"], "cssClass": "bottom-right", "imgSrc": "./particular/images/QUEB.png", "imgSize": "150px", "link": "https://www.quebec.ca", "marginRight": "60px", "marginBottom": "20px" }, { "media": ["desktop"], "cssClass": "bottom-right", "text": "© Gouvernement du Québec 2019", "fontSize": "10pt", "link": "https://www.droitauteur.gouv.qc.ca/copyright.php", "marginRight": "70px", "marginBottom": "10px" }, { "media": ["mobile"], "cssClass": "top-center", "imgSrc": " ./particular/images/FO_logo_2c.png", "imgSize": "200px", "alt": "Foret ouverte", "marginTop": "60px", "fixed": true }, { "media": ["mobile"], "cssClass": "bottom-left", "link": "https://www.igouverte.org/", "imgSrc": "./particular/images/2a-logo_bleu_sans_icone.png", "imgSize": "33px", "alt": "IGO", "fixed": true, "marginLeft": "50px", "marginBottom": "5px" }, { "media": ["mobile"], "cssClass": "bottom-right", "imgSrc": "./particular/images/QUEB.png", "imgSize": "100px", "link": "https://www.quebec.ca", "marginRight": "37px", "marginBottom": "3px" }, ], "searchSources": { "cadastre": { "title": "Cadastre", "enabled": true }, "nominatim": { "enabled": false }, "ilayer": { "searchUrl": "/apis/icherche/layers", "order": 4, "params": { "limit": 10 }, "queryFormat": { "html": { "urls": ["/apis/ws/mffpecofor.fcgi"] } } }, "icherche": { "title": "ICherche", "searchUrl": "/apis/icherche", "showInPointerSummary": true, "order": 2, "params": { "limit": "5" } }, "icherchereverse": { "searchUrl": "/apis/terrapi", "order": 3, "params": { "limit": 5, "buffer":10 } } }, "optionsApi": { "url": "/apis/igo2/layers/options" }, "importExport": { "url": "/apis/ogre" }, "routingSources": { "osrm": { "url": "/services/itineraire/route/v1/driving/", "enabled": true } }, "language": { "prefix": "./particular/locale/" }, "forceCoordsNA": true, "catalog": { "sources": [ { "id":1, "title": "Découpages territoriaux", "composite": [ { "id": "admin_mern", "url": "https://serviceswebcarto.mern.gouv.qc.ca/pes/services/Territoire/SDA_WMS/MapServer/WmsServer?", "crossOrigin": true, "showLegend":false, "queryFormat": { "geojson": "*" }, "groupImpose": {"id": "decoup_admin", "title": "Découpages administratifs"} }, { "id": "2", "url": "/ws/mffpecofor.fcgi", "sourceOptions": { "crossOrigin": "anonymous", "queryFormat": "htmlgml2", "queryHtmlTarget": "iframe", "type": "wms", "optionsFromCapabilities": true }, "regFilters": ["^feuillets_20k$","^fuseaux_mtm$","^fuseaux_utm$"], "groupImpose": { "id": "decoup_carto", "title": "Découpages cartographiques"} } ] }, { "id":3, "title": "Données Québec", "url": "/ws/igo_gouvouvert.fcgi", "crossOrigin": true, "showLegend":false, "queryFormat": { "gml": "*" } }, { "id": 5, "title": "Imagerie aérienne et satellitaire", "composite": [ { "id": "5", "url": "/ws/mffpecofor.fcgi", "sourceOptions": { "crossOrigin": "anonymous", "queryFormat": "htmlgml2", "queryHtmlTarget": "iframe", "type": "wms", "optionsFromCapabilities": true }, "regFilters": ["telecharge_index_250k"], "groupImpose": { "id": "telechargement", "title": "Téléchargement - mosaïques d'images satellites"} }, { "id": "5", "url": "/ws/mffpecofor.fcgi", "regFilters": ["^sentinel","^lsat"], "groupImpose": { "id": "mosaiques", "title": "Mosaïques d'images satellites"} }, { "id": "5", "url": "https://servicesvectoriels.atlas.gouv.qc.ca/IDS_INVENTAIRE_ECOFORESTIER_WMS/service.svc/get?", "queryFormat": "htmlgml2", "queryHtmlTarget": "iframe", "groupImpose": { "id": "giin", "title": "Photos aériennes de l'inventaire écoforestier"} }, { "id": "5", "title": "test wmts-GIIN", "url": "https://servicesmatriciels.mern.gouv.qc.ca/erdas-iws/ogc/wmts/Inventaire_Ecoforestier?", "crossOrigin": true, "matrixSet": "GoogleMapsCompatibleExt2:epsg:3857", "type": "wmts", "groupImpose": { "id": "giin", "title": "Photos aériennes de l'inventaire écoforestier"} } ] } ] } }
Contenu cartographique¶
- La configuration du contenu cartographique est possible grâce aux fichiers de contextes:
base.json
nom_du_contexte.json
- Ces derniers sont situés dans le répertoire :
Le fichier nom_du_contexte.json contient les éléments spécifiques selon le contexte à exploiter. Exemple, dans une application cartographique vous pouvez avoir plusieurs contextes(thématiques):
hydrograhie.json
routes.json
risques.json
…
- On peut y définir:
l’étendue cartographique
les couches d’informations disponibles
les outils accessibles
certaines configurations d’outils
Quant à lui, le fichier base.json contient les éléments partagés entre chancun des contextes l’héritant.
Selon l’exemple précédent, dans une application cartographique, vous avez 3 contextes (thématiques):
hydrograhie.json
routes.json
risques.json
Plutôt que de répéter 3 fois les mêmes éléments (fonds cartographiques, outils, couches de base) dans chaque contexte, il est possibe de déclarer dans le base.json les éléments communs aux 3 contextes. La maintenance de l’application en sera facilitée.
Le contexte _default, sera le contexte affiché à l’arrivée dans l’application.
Important : Notez que le fichier nom_du_contexte.json a préséance sur le fichier _base.json.
Résumé fichier de contexte¶
Important : Les propriétés en caractère gras suivies d’un * sont obligatoires.
Base¶
Exemples
Définition : igo2/src/contexts/_base.json
Utilisation: igo2/src/contexts/_default.json
Layers¶
Permet de définir une liste de couches d’informations disponibles à l’usager lors de l’ouverture dans l’application.L’ordre d’apparition des couches dans la liste présentée à l’utilisateur peut être contrôlée de divers moyens:1- L’ordre d’apparition des couches dans le contexte. Plus la couche est au début de la liste, plus elle sera au bas de la la liste présentée dans l’application.2- La propriété zIndex de chaque couche d’information. Plus le zIndex et élevé, plus la couche sera au haut de la liste présentée.
Exemples
"layers": [ { "id": "fond_osm", "title": "OSM", "visible": false, "baseLayer": true, "sourceOptions": { "type": "osm", "attributions": "© les contributeurs <a href='https://www.openstreetmap.org/copyright' target='_blank'>d’OpenStreetMap</a> / <a href='https://www.igouverte.org/' target='_blank'>IGO2</a>" } }, { "title": "Satellite", "baseLayer": true, "visible": false, "sourceOptions": { "url": "https://geoegl.msp.gouv.qc.ca/apis/carto/tms/1.0.0/orthos@EPSG_3857/{z}/{x}/{-y}.jpeg", "attributions": "© <a href='https://www.droitauteur.gouv.qc.ca/copyright.php' target='_blank'><img src='https://geoegl.msp.gouv.qc.ca/gouvouvert/public/images/quebec/gouv_qc_logo.png' width='64' height='14'>Gouvernement du Québec</a> / <a href='https://www.igouverte.org/' target='_blank'>IGO2</a>", "type": "xyz", "crossOrigin": "anonymous" } }, { "title": "Blanc", "baseLayer": true, "visible": false, "sourceOptions": { "attributions": "<a href='https://www.igouverte.org/' target='_blank'>IGO2</a>", "url": "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAQAAAC1HAwCAAAAC0lEQVR42mP8/x8AAwMCAO+ip1sAAAAASUVORK5CYII=", "type": "xyz" } } ]
- Propriétés
- Permet de définir une liste de couches. Référez-vous à la description de ce qu’est un layer.
Liens
Map¶
Permet de définir les propriétés de la carte à l’ouverture du contexte.
Exemples
"map": { "view": { "projection": "EPSG:3857", "center": [-71.938087, 48.446975], "geolocate": true, "zoom": 6, "maxZoom": 17, "rotation": 15, "enableRotation": true } }
- Propriétés
- Référez vous à map.
Liens
Message¶
Message affiché à l’ouverture du contexte
Exemples
"message": { "format": "html", "html": " "<head><meta charset='utf-8'><style> .page{padding-left: 0px;margin-right:-45px;} </style> </head> <body> <div class='page' style='color: white;'> Bienvenue sur <b>IGO</b></div> </body>", "type": "info", "options": { "timeOut": 30000 } },
Propriétés
Important : Les propriétés en caractère gras suivis d’un * sont obligatoires.
Title¶
Nom du contexte qui sera affiché dans l’application.
Exemples
"title": "Nom de votre contexte",
Toolbar¶
Définit la liste des outils permis dans le contexte.L’ordre d’apparition des outils dans cette liste est importante puisqu’ellereprésente l’ordre des outils dans l’application.Les outils existant:Chacun de ces outils fait référence à un nom d’outil tel que définit dansle package “integration” d’IGO2. Pour en modifier les propriétésréférez-vous à tools .
Exemples
"toolbar": [ "searchResults", "contextManager", "mapDetails", "catalog", "ogcFilter", "timeFilter", "spatialFilter" "print", "measurer", "shareMap", "about" ]
Liens
Tools¶
Définit la liste des configurations permises pour chaque outil.Pour les options spécifiques à chaque outil, veuillez vous référer aux descriptif de l’outil. Cette section détaille seulement les propriétés communes.
Exemples
{ "icon" : "iconName", "name" : "catalogBrowser", "title": "TitreOutilQuiDoitEtreTraduit", "options" : { ... } }
Propriétés
Important : Les propriétés en caractère gras suivies d’un * sont obligatoires.
Liens
Uri¶
Identifiant du contexte. Particulièrement utile pour le partage de cartes. C’est cette propriété du contexte qui est utilisée pour bâtir l’url de partage de carte:ex: …/?context=uriDuContexte…Si votre contexte est dans un sous-répertoire, y inscrire également dans l’uri le chemin (repertoire/uriDuContexte)Ne pas y inscrire d’extension du fichier.
Exemples
"uri": "uriDuContexte",