summaryrefslogtreecommitdiff
path: root/docs/fr/customisation.rst
blob: 2596519bf9412c54cd51ae730f90e1fad00e2dda (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
.. -*- coding: utf-8 -*-

================
Personnalisation
================

:Auteur: Étienne Loks, Valérie-Emma Leroux
:date: 2017-07-22
:Copyright: CC-BY 3.0

Ce document présente la personnalisation de Chimère.
Il est à jour pour la version 3.0.0 de Chimère.

.. _managing-layers:

Gestion des couches
-------------------

Les couches correspondent au fond de carte utilisé.

Par défaut, la couche disponible est le rendu OSM Mapnik. Vous pouvez ajouter 
d'autres couches en utilisant les pages d'administration de Chimère, dans 
*Chimere > Couches*.

La nouvelle couche est définie en utilisant une chaîne de code Javascript adéquate
de la bibliothèque  `Openlayers <http://openlayers.org/>`_. Ce code Javascript
doit être une instance de *Openlayers Layer*, sans point virgule final.

Par exemple, utiliser le rendu OSM Humanitaire est possible avec ce code : ::

    new ol.layer.Tile({
        title: "OSM - Humanitaire",
        'type': 'base',
        source: new ol.source.XYZ({
            url: 'http://{a-c}.tile.openstreetmap.fr/osmfr/{z}/{x}/{y}.png'
            })
        })
          
et définir une couche d'imagerie aérienne Bing peut être fait avec un code de ce type : ::

    new ol.layer.Tile({
        title: "Imagerie aérienne Bing",
        type: 'base',
        preload: Infinity,
        source: new ol.source.BingMaps({
            key: "my-bing-API-key",
            imagerySet: 'Aerial',
            })
        })

Référez vous à la `documentation de l'API Openlayers
<http://openlayers.org/en/v3.17.0/apidoc/ol.layer.Tile.html>`_
pour plus de détail.

.. _managing-overlays:

Gestion des surcouches
----------------------

Les fichiers de surcouche permettent d'ajouter des éléments vectoriels fixes. 
Par exemple, des limites territoriales.

Vous pouvez ajouter des fichiers de surcouche en utilisant les pages 
d'administration de Chimère, dans *Chimere > Fichiers de surcouche*.

Le fichier importé doit être au format GeoJSON. Le système de coordonnées 
de référence du GeoJSON doit être en WGS84 (EPSG:4326).

.. Note::
   Vous pouvez récupérer les contours territoriaux (communes, EPCI, départements, 
   régions) au format shapefile sur la `plateforme ouverte des données publiques 
   françaises <http://www.data.gouv.fr/fr/>`_, en extraire les contours pertinents 
   et les enregistrer au format GeoJSON dans le logiciel libre de SIG QGIS.

.. Note::   
   Les fichiers de surcouche doivent être légers pour ne pas ralentir le chargement 
   de la carte, pensez à simplifier la géométrie de vos tracés !

Pour modifier le style d'un fichier de surcouche, il faut utiliser une chaîne de code 
Javascript de la bibliothèque  `Openlayers <http://openlayers.org/>`_. Ce code Javascript
doit être une liste d'instances de *Openlayers Style*, sans point virgule final.

Par exemple : ::

    [
        new ol.style.Style({
            stroke: new ol.style.Stroke({
                color: 'red',
                width: 2
            }),
            fill: new ol.style.Fill({
                color: 'rgba(255, 255, 255, 0.4)'
            })
        })
    ]

Référez vous à la `documentation de l'API Openlayers
<https://openlayers.org/en/v3.17.0/apidoc/ol.style.html>`_
pour plus de détail.

Gestion des pages
-----------------

Vous avez la possibilité d'ajouter des pages web statiques à votre Chimère, pour
décrire le projet, les mentions légales.

La mise en page du conteu se fait par balises html. Vous pouvez également ajouter
un gabarit ; voir ci-dessous les informations sur les gabarits de page Django.


Personnalisation de l'agencement et du design
---------------------------------------------

Si vous souhaitez simplement améliorer la feuille de style CSS, le plus simple
est d'ajouter un lien vers une feuille de style supplémentaire dans vos *Zones*
(cf. :ref:`managing-areas`).

Si vous souhaitez faire des changements plus importants dans l'agencement et la
présentation, le projet *example_project* peut être personnalisé pour
correspondre à vos besoins. Chaque fichier de gabarit de page présent dans le
dossier *chimere/templates* peut être copié dans votre dossier
*monprojet/templates* puis modifié.

Il est juste nécessaire de copier les fichiers que vous souhaitez modifier.
Ces fichiers sont écrits dans le langage de gabarit Django principalement composé
de HTML avec des éléments de logique. Référez vous à la `documentation des
gabarits Django <https://docs.djangoproject.com/fr/1.8/ref/templates/>`_ pour
plus de détails.