Comment ajouter une carte Googlemap : Différence entre versions
(39 révisions intermédiaires par 2 utilisateurs non affichées) | |||
Ligne 1 : | Ligne 1 : | ||
+ | ==Préalable: organisation des lieux dans PhpGedView== | ||
+ | |||
+ | Avant toute chose, pour que les cartes GOOGLEMAPS fonctionnent, il faut que les lieux soient organisés selon des modalités bien précises. Ces modalités vous sont détaillées dans ce tutoriel: [[Comment organiser les lieux dans PhpGedView]] | ||
+ | |||
==Ajouter des cartes à PhpGedView== | ==Ajouter des cartes à PhpGedView== | ||
Ligne 89 : | Ligne 93 : | ||
===Lieux=== | ===Lieux=== | ||
− | Les noms de lieux sont définis par ordre d'importance | + | Les noms de lieux sont définis par ordre d'importance décroissant, d'un point de vue géographique, et sont séparés par des virgules. Ainsi, les lieux français sont classés comme suit : Pays, Région, Département, Ville. Vous n'avez besoin de rentrer un lieu particulier une seule fois lorsque vous cliquez sur "éditer un lieu" - le logiciel PhpGedView le réutilisera autant que de besoin. |
===Comment ajouter un lieu en utilisant le module Googlemap de PhpGedView <font color="green"> (méthode recommandée)</font>=== | ===Comment ajouter un lieu en utilisant le module Googlemap de PhpGedView <font color="green"> (méthode recommandée)</font>=== | ||
Ligne 105 : | Ligne 109 : | ||
En utilisant vos droits d'administrateur, allez dans le menu d'administration et (à la fin de ce menu en bas à droite) cliquez sur "éditer les coordonnées d'un lieu". La partie supérieure gauche de l'écran ressemblera à ceci: | En utilisant vos droits d'administrateur, allez dans le menu d'administration et (à la fin de ce menu en bas à droite) cliquez sur "éditer les coordonnées d'un lieu". La partie supérieure gauche de l'écran ressemblera à ceci: | ||
− | [[Image: | + | [[Image: Editer_un_lieu.jpg|center|Figure 6a]] |
+ | |||
+ | Le mot "Sommaire" qui apparaît sur cette fenêtre représente le niveau le plus haut de l'arbre hiérarchisé des lieux que vous utilisez dans votre logiciel. En règle générale, ce niveau le plus élevé correspond au pays, mais il pourrait correspondre à un continent si vous avez décidé de rentrer tous vos lieux sous la forme [Continent, Pays, Région, Département, Ville]. | ||
+ | |||
+ | Cliquez sur 'Ajouter un lieu', et nous allons vous illustrer comment cette saisie de lieu se déroule pour le cas le plus courant où la niveau le plus élevé de l'arbre des lieux est le pays, et nous prendrons comme pays l'exemple de la France. | ||
+ | |||
+ | Une fois que l'on a cliqué sur "Ajouter un lieu", cette nouvelle fenêtre apparaît: | ||
+ | |||
+ | [[Image:Carteediterpays.jpg|center|452px|thumb|Figure 6b]] | ||
+ | |||
+ | Tapez alors 'France' dans la case "lieu", cliquez sur 'Pays' dans la case "précision", puis cliquez sur "Recherche" (Nota: il faut avoir place le curseur de votre souris à l'extérieur de la boite "pays" pour que le lien "Recherche" apparaisse et puisse être cliqué). | ||
+ | |||
+ | Si vous êtes connectés à Internet, le module Googlemap de PhpGedView va alors se connecter sur le site [http://www.geonames.org/ Geonames], qui dispose de l'enregistrement de 2.2 millions de lieux différents sur la planète entière. Si le lieu que vous avez entré a été trouvé par ce site, les détails apparaîtront automatiquement sur cette fenêtre. Vous pouvez toujours visiter le site par vous-même(http://www.geonames.org/). | ||
+ | |||
+ | Ainsi, pour la France, vous voyez alors apparaître sur la carte du monde 4 repères jaunes placés sur la France, l'Ile Maurice, l'Ile de France, et l'arrondissement de Fort de France. Et en dessous de la carte, ces quatre lieux apparaissent sous forme de liens cliquables. | ||
+ | |||
+ | [[Image:Carteediterpays2.jpg|center|452px|thumb|Figure 6c]] | ||
+ | |||
+ | Parmi ces quatre choix de lieux qui vous sont proposés par ce site, choisissez celui qui correspond à celui que vous voulez en cliquant sur 'Utiliser cette valeur'. | ||
+ | |||
+ | La fenêtre de dialogue fait alors apparaître une seul repère rouge placé sur la France, et les coordonnées moyennes en latitude et longitude de la France sont renseignées dans cette fenêtre: | ||
+ | |||
+ | [[Image:Carteediterpays3.jpg|center|452px|thumb|Figure 6d]] | ||
+ | |||
+ | Vous pouvez alors cliquer sur "Sauvegarder". Maintenant, vous aurez une entrée dans votre table des lieux chaque fois que vous cliquerez sur "Sommaire" (cf. figure 6a) | ||
+ | |||
+ | [[Image:Carteediterpays4.jpg|center|452px|thumb|Figure 6e]] | ||
+ | |||
+ | Vous pouvez remarquer que le pays, France, est un lien hypertexte que lequel on peut cliquer. Vous remarquez la présence d'une croix rouge <font color="red"> '''X''' </font> en bout de ligne qui indique que vous pouvez supprimer ce lieu si vous le désirez. La suppression est effective si vous cliquez sur cette croix. | ||
+ | |||
+ | Si vous cliquez sur ce lien "France" une fenêtre s'affiche vous indiquant qu'il n'y a aucun lieu à afficher. Celà signifie que les lieux qui constituent la France (les régions, les départements, les villes) n'ont pas encore été renseignés dans le logiciel. | ||
+ | |||
+ | Maintenant vous pouvez entrer la ville de Paris….Il suffit de cliquer sur 'Ajouter un lieu' et de recommencer la procédure indiquée au début de ce paragraphe. | ||
+ | |||
+ | La croix rouge <font color="red"> '''X''' </font> a été mentionnée. Au fur et à mesure que vous ajouter des niveaux hiérarchiques aux différents lieux, seules les catégories de lieux enregistrées correspondant au niveau le plus bas dans la hiérarchie des lieux feront apparaître le X. Les lieux qui correspondent à un niveau hiérarchique supérieur ne feront pas apparaître de X, parce qu'il existe des lieux de niveau inférieur qui dépendent de ce niveau supérieur. Si vous voulez supprimer quelque chose en utilisant cette croix rouge <font color="red"> '''X''' </font>, vous devrez commencer par détruire le lieu qui se situe au plus bas niveau hiérarchique - supprimer la ville, puis le département, puis la région, puis le pays. En clair, vous ne pourrez pas supprimer par cette méthode un département si vous n'avez pas supprimé l'ensemble des villes du département que vous aurez rentrées dans le logiciel. | ||
+ | |||
+ | ===Ajouter des lieux un par un à partir du fichier GEDCOM <font color="red">(non recommandé)</font>=== | ||
+ | |||
+ | Cette méthode est expliquée ici afin que ayez une idée sur la façon des les enregistrements de lieux sont écrits dans un fichier GEDCOM. Vous n'avez pas besoin d'utiliser le module Googlemap pour utiliser cette procédure. | ||
+ | |||
+ | Les événements peuvent avoir des lieux qui leur sont "attachés", ainsi vous pouvez ajouter des lieux à des événements manuellement. Cette procédure est délicate et n'est pas conseillée. Ce processus ne permet pas à un lieu qui serait rentré de pouvoir être utilisé par plusieurs événements individuels | ||
+ | |||
+ | Les coordonnées géographiques d'un événement peuvent être ajoutées de manière isolée directement sur un fichier GEDCOM. Pour le faire, il suffit d'ajouter dans le fichier GEDCOM une balise PLAC suivie des informations: | ||
+ | ::2 PLAC <Nom du lieu> | ||
+ | ::3 MAP (Vérifiez bien que la balise ‘3 MAP’ est placée après la balise PLAC) | ||
+ | ::4 LONG <Longitude> | ||
+ | ::4 LATI <Latitude> | ||
+ | |||
+ | Les lignes MAP, LONG and LATI doivent être ajoutées directement après la ligne PLAC. | ||
+ | |||
+ | Dans la fenêtre d'édition qui s'affiche, il y a un signe ‘+’ sous le ‘lieu’ où vous pouvez enregistrer le pays, la région, le département et la ville qui existe dans le répertoire ‘places’ de votre logiciel PhpGedView. Celà peut vous éviter des doublons en rentrant une même commune avec des orthographes légèrement différentes. La configuration de PhpGedView vous permet, si vous sélectionnez l'option "découper les lieux" dans le menu administration, d'être guidé lors de la saisie de vos lieux afin d'éviter de tels doublons. | ||
+ | |||
+ | Cette méthode place 4 icônes en relation avec l'événement sur la fiche de l'individu. Ces icônes vous offrent les options d'utilisation des sites de cartographie Mapquest, Google Maps, Multimap ou Terraserver. Vous n'obtenez pas par cette méthode, d'affichage automatique d'onglet "carte". | ||
+ | |||
+ | ===Importer les données de votre (ou de vos) fichier(s) GEDCOM=== | ||
+ | |||
+ | En important les données de votre fichier GEDCOM, vous peuplez la table des "lieux" (appelée "''placelocation''" en anglais) avec tous les lieux qui sont présents dans votre fichier GEDCOM. MaiS – ces lieux n'auront pas de coordonnées en LATITUDE / LONGITUDE. Vous aurez besoin d'entrer ces coordonnées pour chacun des lieux existants. Voir plus bas le paragraphe ‘Vous pouvez éditer et supprimer…’. | ||
+ | |||
+ | ===Importer à partir d'un fichier=== | ||
+ | |||
+ | Cette option vous permet d'importer des données de lieux, en incluant tous les champs nécessaires pour la table des coordonnées en LATITUDE/LONGITUDE, à partir de fichiers préparés à l'avance au format Excel (.csv). | ||
+ | |||
+ | Vous pouvez: | ||
+ | * créer votre propre table, | ||
+ | * utiliser celles qui sont fournies dans le répertoire ‘modules/googlemap/extra’, | ||
+ | * utiliser les tables des villes françaises qui ont été spécialement créées par les membres du forum. '''Je vous conseille cette méthode'''. Vous pouvez télécharger ces fichiers sur le [http://forum.fr.phpgedview.free.fr/spip.php?article28 site du forum français de PhpGedView] | ||
+ | Si vous avez un nombre important de pays disponibles sous forme de fichiers Excel (.csv), c'est la méthode la plus rapide et la plus facile pour créer automatiquement vos cartes. | ||
+ | |||
+ | Pour accéder à cette fonction, il faut aller dans le menu "Administration --> Configuration Googlemaps --> Editer les coordonnées d'un lieu". | ||
+ | |||
+ | '''ATTENTION !''' lors de l'import d'un fichier de lieux, une fois le fichier importé, il vous faut cocher la case "Voir les lieux inutilisés" puis cliquer sur le bouton "Afficher". Dans le cas contraire, vous ne verrez pas immédiatement le résultat de votre import ! | ||
+ | |||
+ | [[image:Googlemaps éditer coordonnées lieu.png|centre|450px|thumb|Menu affiché à l'administrateur -Cliquer sur l'image pour l'agrandir]] | ||
+ | |||
+ | Cependant – il est conseillé de vérifier que les marqueurs PLAC qui sont présents dans votre fichier GEDCOM correspondent très EXACTEMENT aux lieux qui sont présents dans les fichiers au format Excel que vous importez, en respectant la structure et la hiérarchie – c'est à dire, avez-vous chaque ville dans le bon département et/ou la bonne région ? | ||
+ | |||
+ | ==Vous pouvez éditer et supprimer les coordonnées…..== | ||
+ | |||
+ | Cette méthode est intuitive. Cliquez sur "Editer les coordonnées du lieu" à partir du menu administration et vous afficherez une fenêtre qui ressemble à celle de la figure 8. | ||
+ | |||
+ | La crois rouge X permet de supprimer l'élément. Si la croix X est grise (ou s'il n'y a pas de croix X), celà indique que l'élément a des lieux de niveau inférieur qui ont été entrées dans la table. Si vous voulez supprimer l'entité de niveau supérieur, vous devez d'abord supprimer les entités de niveaux inférieurs. Lisez le paragraphe technique ci-dessous si vous voulez en savoir plus sur ce point. | ||
+ | |||
+ | [[Image:Editer_un_lieu1.jpg|center|532px|thumb|Figure 8]] | ||
+ | |||
+ | ==Paragraphe technique== | ||
+ | |||
+ | Les données de lieux du module GoogleMaps sont placées dans une table à part, distincte de la table des lieux du logiciel PhpGeView. Cette table, appelée "placelocation" a la structure suivante: | ||
+ | |||
+ | <center><b>Table 1: placelocation</b></center> | ||
+ | |||
+ | {| class="wikitable" style="margin: 1em auto 1em auto" table border="1" | ||
+ | |- | ||
+ | !Field!!Def!!Desc | ||
+ | |- | ||
+ | |pl_id||int(11)||Index incrémental | ||
+ | |- | ||
+ | |pl_parent_id||int(11)||Fait référence au niveau hiérarchique ‘parent’ | ||
+ | |- | ||
+ | |pl_level||int(11)||Niveau hiérarchique (Le niveau 0 correspond au pays, le niveau 3 à une commune) | ||
+ | |- | ||
+ | |pl_place||varchar(255)||Le nom du lieu | ||
+ | |- | ||
+ | |pl_long||varchar(30)||Coordonnées de Longitude | ||
+ | |- | ||
+ | |pl_lati||varchar(30)||Coordonnées de Latitude | ||
+ | |- | ||
+ | |pl_zoom||int(4)||Niveau de zoom dans Googlemap | ||
+ | |- | ||
+ | |pl_icon||varchar(255)||Indique l'icône qui sera utilisée pour marquer le lieu | ||
+ | |- | ||
+ | |} | ||
+ | |||
+ | Les données sont enregistrées dans une table séparée afin que cette table puisse être utilisée par plusieurs fichiers GEDCOM. Ainsi, lorsque vous supprimez un fichier GEDCOM, les coordonnées des lieux sont conservées et pourront être utilisées lorsque vous réimporterez votre fichier GEDCOM. | ||
+ | |||
+ | ===Lieux=== | ||
+ | |||
+ | En pratique, tous les ‘lieux’ sont définis par un identifiant qui correspond à ‘Monpays, MaRégion, MonDépartement, MaVille’. Ces identifiants ont un 'niveau' équivalent: | ||
+ | |||
+ | ::Pays = niveau 0<br> | ||
+ | ::Région = niveau 1<br> | ||
+ | ::Département = niveau 2<br> | ||
+ | ::Commune = niveau 3<br> | ||
+ | |||
+ | Lorsque vous recherchez le nom d'un lieu dans la table, le logiciel va rechercher si ce lieu existe dans la table de manière séquentielle en commençant par le niveau le plus haut et en desendant jusqu'au niveau le plus bas, jusqu'à ce qu'il trouve le lieu. | ||
+ | |||
+ | Quand vous créez une définition pour un lieu, vous le spécifiez de la même façon. Pour pointer sur le lieu auquel vous faites référence, vous ajoutez un 'niveau' à l'ensemble de la description du lieu. Ainsi la description de votre lieu ressemble à ceci: <br> "Niveau, Monpays, MaRégion, MonDépartement, MaVille". | ||
+ | |||
+ | Le niveau correspond à la place du lieu que vous voulez définir dans l'ordre hiérarchique des lieux. Ainsi, Monpays correspond au niveau 0, Macommune correspond au niveau 4. | ||
+ | |||
+ | La longitude, la latitude, le niveau de zoom et l'icône sont des valeurs qui sont simplement ajoutées à la fin de l'identifiant du lieu. | ||
+ | |||
+ | Ainsi la description complète d'un lieu aura la forme suivante:<br> | ||
+ | "Niveau, Monpays, MaRégion, MonDépartement, MaVille, MaLongitude, MaLatitude, Monniveaudezoom, MonIcône". | ||
+ | |||
+ | Vous pouvez omettre une partie de la description du lieu, mais pas le caractère ‘''','''’ qui sépare les différentes composantes de votre description. Vous pouvez ainsi avoir la description suivante (en omettant la région):<br> | ||
+ | "Niveau, Monpays''',,''' MonDépartement, MaVille, MaLongitude, MaLatitude, Monniveaudezoom, MonIcône". (notez bien les deux virgules qui séparent Mopays et Mondépartement). | ||
+ | |||
+ | Le corollaire de ceci est que vous avez besoin de prendre en considération la séquence de lieux quand vous importez des données d'une source quelconque. Vous devez construire dès le début la séquence des lieux, de manière à obtenir, dans l'ordre: <br> | ||
+ | ‘Niveau, MonPays<b>,,,,</b> MaLongitude, MaLatitude, MonfacteurdeZoom, MonIcône’<br> | ||
+ | ‘Niveau, MonPays, MaRégion<b>,,,</b> MaLongitude, MaLatitude, MonfacteurdeZoom, MonIcône’<br> | ||
+ | ‘Niveau, MonPays, MaRégion, MonDépartement<b>,,</b> MaLongitude, MaLatitude, MonfacteurdeZoom, MonIcône’<br> | ||
+ | …et ainsi de suite... | ||
+ | |||
+ | La table ‘placelocation’ enregistre les lieux dans 8 champs, qui ont été conçus pour enregistrer chaque lieu une fois pour toutes, avec une référence au lieu de niveau immédiatement supérieur (appelé niveau parent) qui est enregistré dans le champ pl_parent_id. Le champ pl_id auquel le lieu fait référence est un nombre séquentiel généréré automatiquement. | ||
+ | |||
+ | Une structure typique de la table, ressemble donc à ceci: | ||
+ | [Note – some columns have been ignored for display purposes only] | ||
+ | |||
+ | {| class="wikitable" style="margin: 1em auto 1em auto" table border="1" | ||
+ | |- | ||
+ | !pl_id!!pl_parent_id!!pl_level!!pl-place!!pl_long!! pl_lati | ||
+ | |- | ||
+ | !1!! 0|| 0|| France|| E2.00|| N46.00 | ||
+ | |- | ||
+ | !6!! 1|| 1|| Alsace|| E7.3004|| N47.6894 | ||
+ | |- | ||
+ | !7!! 6|| 2|| Bas-Rhin|| E7.5421|| N48.5602 | ||
+ | |- | ||
+ | !8!! 7|| 3|| Strasbourg 67482|| E7.7500|| N48.5833 | ||
+ | |- | ||
+ | |} | ||
+ | |||
+ | Remarquez qu'il y a 9 champs dans la table. Ce nombre est fixé. Si vous avez l'intention de construire un fichier .CSV afin de l'importer, assurez vous de bien avoir 9 champs sur chaque ligne de votre fichier. | ||
+ | |||
+ | ==Configuration de Googlemap – signification des différentes rubriques== | ||
+ | |||
+ | Référez-vous à la Figure 4 | ||
+ | |||
+ | La première ligne de saisie vous permet d'activer ou non la fonction Googlemap. | ||
+ | |||
+ | La deuxième ligne vous permet d'entrer la clé d'enregistrement API de Googlemap. | ||
+ | |||
+ | La troisième ligne définit le type d'affichage – carte, image satellite, ou une combinaison des deux (hybride). | ||
+ | |||
+ | La quatrième ligne définit la taille de la carte lorsqu'elle est affichée sur l'écran. La taille par défaut (600 x 400 pixels) peut être ajustée à vos desiderata. | ||
+ | |||
+ | La cinquième ligne correspond au niveau de zoom. Le niveau 0 correspond au pays (niveau de détail le plus bas), le niveau maximum correspond au niveau de détail le plus élevé. Remarquez que quelques cartes satellites ne sont pas disponibles pour le niveau de zoom le plus élevé. | ||
+ | |||
+ | Précision: celà détermine le nombre de décimales qui sont utilisés pour les coordonnées des lieux. Un pays a probablement d'une seul décimale, une commune a besoin de 3 décimales. La troisième décimale fait déplacer le pointeur sur la carte par incréments d'environ 110 mètres. La sixième décimale a une précision d'environ 0.1 mètre. | ||
+ | |||
+ | <!-- Category links...DO NOT DELETE --> | ||
+ | [[Category:Tutoriel]] | ||
+ | [[Category:PhpGedView]] | ||
+ | [[Category:Modules]] | ||
[[en: Add Google maps]] | [[en: Add Google maps]] |
Version actuelle datée du 15 mars 2008 à 12:36
Sommaire
- 1 Préalable: organisation des lieux dans PhpGedView
- 2 Ajouter des cartes à PhpGedView
- 3 Comment faire apparaître les cartes
- 3.1 Obtenir les coordonnées (latitude, longitude) des lieux
- 3.2 Coordonnées
- 3.3 Lieux
- 3.4 Comment ajouter un lieu en utilisant le module Googlemap de PhpGedView (méthode recommandée)
- 3.5 Ajouter des lieux un par un à partir du fichier GEDCOM (non recommandé)
- 3.6 Importer les données de votre (ou de vos) fichier(s) GEDCOM
- 3.7 Importer à partir d'un fichier
- 4 Vous pouvez éditer et supprimer les coordonnées…..
- 5 Paragraphe technique
- 6 Configuration de Googlemap – signification des différentes rubriques
Préalable: organisation des lieux dans PhpGedView
Avant toute chose, pour que les cartes GOOGLEMAPS fonctionnent, il faut que les lieux soient organisés selon des modalités bien précises. Ces modalités vous sont détaillées dans ce tutoriel: Comment organiser les lieux dans PhpGedView
Ajouter des cartes à PhpGedView
Un module additionnel a été développé pour PhpGedView (PGV) afin de permettre aux utilisateurs d'ajouter des cartes aux données de leur famille. Ce module s'appelle Googlemap, et fonctionne avec les versions PGV 3.3.8 et 4.0.x.
[Note: Cette carte additionnelle est bien distincte des petites icônes de couleur présentes sur les fiches individuelles qui permettent en cliquant dessus, d'accéder à des cartes sur différents sites web. Ces cartes sont générées à partir des renseignements de longitude et de latitude qui ont été ajoutés dans le fichier GEDCOM.]
Ce module affiche des informations supplémentaires sur les individus - voir Figure 1. Il y a un onglet supplémentaire sur la fiche de chaque individu qui présente une carte issue de Google Maps.
On peut cliquer sur chacun des marqueurs présents sur cette carte afin d'afficher les données qui sont attachées au lieu pointé par le marqueur. Si plus d'un événement s'est déroulé à l'endroit du marqueur, les événéments supplémentaires sont alors affichés dans des tableaux.
Logiciel
Vous devrez télécharger le module "googlemap files" nécessaire à l'adresse suivante [1]
Soyez bien conscient que ce module est encore en cours de développement et peut évoluer de temps à autre.
Si vous voulez être tenu informé des dernières modifications (ainsi que des derniers développements sur l'ensemble de PhpGedView) je vous conseille de visiter régulièrement cette adresse: [2] (évidemment, c'est en anglais !)
Une fois que vous aurez téléchargé ce module, vous obtiendrez les fichiers suivants:
Le répertoire ‘extra’ n'est pas nécessaire: vous pouvez ou non le télécharger (les fichiers qui appartiennent à ce répertoire sont des listes de lieux que vous pouvez importer au moyen de la fonction "Editer des lieux").
Copiez la totalité des fichiers du module googlemap que venez de télécharger (avec ou sans le répertoire extra. N'oubliez pas de télécharger le fichier googlemap.php !) dans le répertoire "modules" du logiciel PhpGedView que vous avez installé. Modifiez les permissions du répertoire "modules" ainsi que celles de tous les fichiers du répertoire à ‘777’.
De plus, les fichiers suivants doivent aussi être mis à jour:
- le fichier admin.php qui se situe à la racine du répertoire de votre logiciel PhpGedView a besoin d'être mise à jour. En effet, cette nouvelle version est nécessaire afin de faire apparaître, au bas de la page d'administration du logiciel, la rubrique "configuration googlemap".
Pour celà, allez à l'adresse http://phpgedview.svn.sourceforge.net/viewvc/phpgedview/trunk/phpGedView/
et récupérez la dernière version de ce fichier. Téléchargez cette nouvelle version sur votre serveur (dans le répertoire d'installation de votre logiciel PhpGedView) afin de remplacer le fichier admin.php qui y était. - le fichier lang.fr.php qui se trouve dans le répertoire 'modules/googlemap/langages' de votre logiciel PhpGedView a également besoin d'être mise à jour. En effet, cette nouvelle version est nécessaire afin de faire apparaître en français la rubrique "configuration googlemap" qui a été ajoutée par la nouvelle version du fichier admin.php que vous avez téléchargée ci-dessus.
Pour celà, allez à l'adresse http://phpgedview.svn.sourceforge.net/viewvc/phpgedview/trunk/phpGedView/modules/googlemap/languages/
Note spéciale pour les utilisateurs de la version PGV3.3.8: allez à la racine de répertoire d'installation de PhpGedView,
et renommez le fichier ‘individual.php’ en ‘zindividual.php’ (ou n'importe quel autre nom).
Puis copiez le fichier ‘individual-3.3.8.php’ à la place du fichier ‘individual.php’
La clé d'enregistrement
Pour permettre une connection au serveur Google Maps, vous devz obtenir une clé d'enregistrement auprès de Google.
Allez à l'adresse suivante http://www.google.com/apis/maps/signup.html. Cette adresse correspond au site Google Map, et vous devrez vous enregistrer en tant que membre de Google pour pouvoir aller à l'étape suivante. Donc, enregistrez-vous. IL n'y a aucun danger.
Une fois que vous avez réalisé votre enregistrement, vous pouvez allors vous connecter avec votre identifiant de membre Google. Google vous demandera alors où se situe votre répertoire d'installation de PhpGedView installation, il vous faut donc rentrer l'URL (l'adresse internet) www.xxxx.yyyy.zz/place de votre répertoire PhpGedView. Choisissez un endroit de votre arborescence qui vous permettra d'utiliser votré clé d'enregistrement pour plusieurs bases de données (si tant est que vous ayez plusieurs bases de données avec votre logiciel PhpGedView).
Une fois que vous avez obtenu votre clé d'enregistrement, gardez en une copie. Sous Windows, surlignez là, faites Ctrl+C - n'essayez pas de copier la clé en recopiant chaque caractère – vous risqueriez de vous tromper! Et, par sécurité, ouvrez Notepad, copiez la clé, et sauvegardez le fichier pour plus tard (au cas où).
Commencer l'opération
Vous pouvez maintenant vous connecter en tant qu'administrateur à PhpGedView. Pendant cette opération, le module Googlemap va créer une nouvelle table (‘placelocation’) dans la base de données de votre serveur.
Le menu d'administration s'affiche alors, et en bas de la page vous verrez apparaitre un lien de configuration de Googlemap. Choisissez ‘Configuration Googlemap’. Si l'option de configuration n'apparait pas, vérifiez que vous avez bien le fichier ‘config.php’ que vous avez créé.
Une nouvelle fenêtre s'ouvre alors:
Sélectionnez "Activer Googlemap" à ‘Oui’ and et copiez votre clé d'enregistrement Googlemap dans l'emplacement "Clé API Google Maps". Sauvegardez votre configuration. Vous pourrez toujours par la suite revenir à cette page de configuration de Googlemap pour modifier les autres paramètres de cette page lorsque vous aurez acquis plus d'expérience.
A ce stade, déconnectez-vous de PhpGedView. Puis connectez-vous à nouveau, et vérifiez que la page de chaque individu dispose bien d'un onglet "Carte", bien que cet onglet soit grisé en clair. Si tel n'est pas le cas, recommencez l'opération depuis le début.….mais, avant de toute recommencer depuis le début, copiez le fichier defaultconfig.php sur votre serveur, et renommez le config.php (celà signifiera que vous avez les deux fichiers config.php et defaultconfig.php dans le répertoire googlemap). Et vérifiez également la configuration de Googlemap configuration afin de vous assurer que vous n'avez pas égaré votre clé d'enregistrement...
Maintenant, revenez au sommet de la page de configuration et recommencez l'opération...
Vous êtes maintenant près à inclure les données de cartographie dans votre fichier. Avant celà, n'oubliez pas de modifier les droits à permission de votre répertoire "modules" à ‘644’.
Comment faire apparaître les cartes
L'étape suivante nécessite quelques explications.
Obtenir les coordonnées (latitude, longitude) des lieux
Les coordonnées (latitude, longitude) des lieux peuvent être obtenues de plusieurs façons.
Voici une liste non exhaustive de sites vous permettant d'obtenir ces coordonnées:
- en utilisant le logiciel Google Earth, vous explorez la planète et obtenez instantanément les coordonnées d'un lieu en pointant votre souris
- en utilisant le site de cartographie Cartes Googlemap, vous pouvez lire les coordonnées directement en parcourant les cartes
- http://www.beeloop.com/maps/flickr_geotagr.php?language=english, est un autre site qui vous permet également de parcourir les cartes de la planète et d'afficher en instantané les des lieux visités
- sur le site officiel de PhpGedView vous pouvez téléchargez les fichiers qui contiennent les coordonnées des villes de différents pays (Allemagne, Royaume Uni, Pays Bas, Etats-Unis sont les pays disponibles à la date du 20 mars 2007), et vous pouvez ensuite importer les fichiers à partir du menu de configuration de Googlemap selon la méthode décrite ci-après.
Il n'est pas inutile de vérifier les données que vous avez importées pour vérifier qu'elles respectent les conventions suivantes:
Coordonnées
Habituellement, les coordonnées sont rentrées en degrés, minutes (il y a 60 degrés dans une minute) et secondes (il y a 60 secondes dans une minute), et sont écrites selon ce format: 33° 44’ 55”. Dans la plupart des ordinateurs, vous pouvez entrer ces coordonnées sans avoir besoin de saisir les symboles ° ' " - 33 44 55, vous pouvez aussi les rentrer au format décimal: 33.7486 (pour arriver à ce format il suffit de multiplier les minutes par 60, d'ajouter les secondes, puis diviser la somme par 3600. Enfin, il faut ajouter les degrés).
Coordonnées positives et négatives: les coordonnées au Nord et à l'Est sont des nombres positifs, les coordonnées au Sud et à l'Ouest sont des nombres négatifs – ainsi -23.456 144.666 correspond à 23.456S 144.666E
Souvenez-vous que les latitudes ne peuvent pas être supérieures à +/- 90 degrés, et que les longitudes ne peuvent pas être supérieures à 180 degrés
Lieux
Les noms de lieux sont définis par ordre d'importance décroissant, d'un point de vue géographique, et sont séparés par des virgules. Ainsi, les lieux français sont classés comme suit : Pays, Région, Département, Ville. Vous n'avez besoin de rentrer un lieu particulier une seule fois lorsque vous cliquez sur "éditer un lieu" - le logiciel PhpGedView le réutilisera autant que de besoin.
Comment ajouter un lieu en utilisant le module Googlemap de PhpGedView (méthode recommandée)
Note préliminaire: le module Google Map est conçu pour fonctionner avec des lieux qui sont décrits de manière hiérarchique, d'un pont de vue géographique, un peu comme un arbre. Si nous considérons une ville de la région parisienne, cet arbre aurait la structure suivante 'France, Ile de France, Val d'Oise, Pontoise'. Cette structure hiérarchique vous aidera ainsi à retrouver un ensemble de personnes habitant ou ayant habité la même ville. Et cette structure est conforme aux spécifications du format GEDCOM, utilisé par PhpGedView.
Et, AVANT que vous ne commenciez votre travail de cartographie des lieux de vos ancêtres, vérifiez attentivement vos données. Assurez-vous que la structure des lieux est bien correcte et respecte la structure hiérarchique, qu'il n'y a pas de doublons, que les lieux sont bien rangés dans le bon département. Alors, le module Googlemap vous affichera très facilement les cartes correspondant aux données que vous aurez entrées.
Cette fonctionnalité utilise de nouvelles tables dans votre base de données SQL pour enregistrer les noms et les coordonnées des lieux. Les lieux existants peuvent être importés et les informations relatives aux coordonnées de ces lieux peuvent être ajoutées en faisant appel aux outils graphiques (zoom/clic sur une carte) ou en entrant des coordonnées.
Les informations de localisation sont enregistrées ailleurs que dans le fichier GEDCOM (et peuvent être échangées entre des fichiers GEDCOM au format PhpGedView) et les données de localisation ne sont entrées qu'une seule fois pour un lieu donné. La restauration des données de localisation est possible par un export des nouvelles tables de la base de données SQL au format CSV. Des ajouts de données de localisation peuvent être effectués par un import de fichiers au format CSV (en respectant la structure hiérarchique exacte de description des lieux).
En utilisant la structure en arbre mentionnée plus haut, les données de localisation sont rentrées pour ce qui concerne les lieux français, en commençant par le pays, puis le région, le département et enfin la ville. En fonction des pays, cette description des localisations peut évoluer (il peut y avoir des comtés, des cantons,...). Dans tous les cas, il est impératif que cette structure soit en arbre (ou en poupées russes), en commençant par l'entité géographique la plus large (le pays) et en terminant par l'entité géographique la plus petite (la ville).
En utilisant vos droits d'administrateur, allez dans le menu d'administration et (à la fin de ce menu en bas à droite) cliquez sur "éditer les coordonnées d'un lieu". La partie supérieure gauche de l'écran ressemblera à ceci:
Le mot "Sommaire" qui apparaît sur cette fenêtre représente le niveau le plus haut de l'arbre hiérarchisé des lieux que vous utilisez dans votre logiciel. En règle générale, ce niveau le plus élevé correspond au pays, mais il pourrait correspondre à un continent si vous avez décidé de rentrer tous vos lieux sous la forme [Continent, Pays, Région, Département, Ville].
Cliquez sur 'Ajouter un lieu', et nous allons vous illustrer comment cette saisie de lieu se déroule pour le cas le plus courant où la niveau le plus élevé de l'arbre des lieux est le pays, et nous prendrons comme pays l'exemple de la France.
Une fois que l'on a cliqué sur "Ajouter un lieu", cette nouvelle fenêtre apparaît:
Tapez alors 'France' dans la case "lieu", cliquez sur 'Pays' dans la case "précision", puis cliquez sur "Recherche" (Nota: il faut avoir place le curseur de votre souris à l'extérieur de la boite "pays" pour que le lien "Recherche" apparaisse et puisse être cliqué).
Si vous êtes connectés à Internet, le module Googlemap de PhpGedView va alors se connecter sur le site Geonames, qui dispose de l'enregistrement de 2.2 millions de lieux différents sur la planète entière. Si le lieu que vous avez entré a été trouvé par ce site, les détails apparaîtront automatiquement sur cette fenêtre. Vous pouvez toujours visiter le site par vous-même(http://www.geonames.org/).
Ainsi, pour la France, vous voyez alors apparaître sur la carte du monde 4 repères jaunes placés sur la France, l'Ile Maurice, l'Ile de France, et l'arrondissement de Fort de France. Et en dessous de la carte, ces quatre lieux apparaissent sous forme de liens cliquables.
Parmi ces quatre choix de lieux qui vous sont proposés par ce site, choisissez celui qui correspond à celui que vous voulez en cliquant sur 'Utiliser cette valeur'.
La fenêtre de dialogue fait alors apparaître une seul repère rouge placé sur la France, et les coordonnées moyennes en latitude et longitude de la France sont renseignées dans cette fenêtre:
Vous pouvez alors cliquer sur "Sauvegarder". Maintenant, vous aurez une entrée dans votre table des lieux chaque fois que vous cliquerez sur "Sommaire" (cf. figure 6a)
Vous pouvez remarquer que le pays, France, est un lien hypertexte que lequel on peut cliquer. Vous remarquez la présence d'une croix rouge X en bout de ligne qui indique que vous pouvez supprimer ce lieu si vous le désirez. La suppression est effective si vous cliquez sur cette croix.
Si vous cliquez sur ce lien "France" une fenêtre s'affiche vous indiquant qu'il n'y a aucun lieu à afficher. Celà signifie que les lieux qui constituent la France (les régions, les départements, les villes) n'ont pas encore été renseignés dans le logiciel.
Maintenant vous pouvez entrer la ville de Paris….Il suffit de cliquer sur 'Ajouter un lieu' et de recommencer la procédure indiquée au début de ce paragraphe.
La croix rouge X a été mentionnée. Au fur et à mesure que vous ajouter des niveaux hiérarchiques aux différents lieux, seules les catégories de lieux enregistrées correspondant au niveau le plus bas dans la hiérarchie des lieux feront apparaître le X. Les lieux qui correspondent à un niveau hiérarchique supérieur ne feront pas apparaître de X, parce qu'il existe des lieux de niveau inférieur qui dépendent de ce niveau supérieur. Si vous voulez supprimer quelque chose en utilisant cette croix rouge X , vous devrez commencer par détruire le lieu qui se situe au plus bas niveau hiérarchique - supprimer la ville, puis le département, puis la région, puis le pays. En clair, vous ne pourrez pas supprimer par cette méthode un département si vous n'avez pas supprimé l'ensemble des villes du département que vous aurez rentrées dans le logiciel.
Ajouter des lieux un par un à partir du fichier GEDCOM (non recommandé)
Cette méthode est expliquée ici afin que ayez une idée sur la façon des les enregistrements de lieux sont écrits dans un fichier GEDCOM. Vous n'avez pas besoin d'utiliser le module Googlemap pour utiliser cette procédure.
Les événements peuvent avoir des lieux qui leur sont "attachés", ainsi vous pouvez ajouter des lieux à des événements manuellement. Cette procédure est délicate et n'est pas conseillée. Ce processus ne permet pas à un lieu qui serait rentré de pouvoir être utilisé par plusieurs événements individuels
Les coordonnées géographiques d'un événement peuvent être ajoutées de manière isolée directement sur un fichier GEDCOM. Pour le faire, il suffit d'ajouter dans le fichier GEDCOM une balise PLAC suivie des informations:
- 2 PLAC <Nom du lieu>
- 3 MAP (Vérifiez bien que la balise ‘3 MAP’ est placée après la balise PLAC)
- 4 LONG <Longitude>
- 4 LATI <Latitude>
Les lignes MAP, LONG and LATI doivent être ajoutées directement après la ligne PLAC.
Dans la fenêtre d'édition qui s'affiche, il y a un signe ‘+’ sous le ‘lieu’ où vous pouvez enregistrer le pays, la région, le département et la ville qui existe dans le répertoire ‘places’ de votre logiciel PhpGedView. Celà peut vous éviter des doublons en rentrant une même commune avec des orthographes légèrement différentes. La configuration de PhpGedView vous permet, si vous sélectionnez l'option "découper les lieux" dans le menu administration, d'être guidé lors de la saisie de vos lieux afin d'éviter de tels doublons.
Cette méthode place 4 icônes en relation avec l'événement sur la fiche de l'individu. Ces icônes vous offrent les options d'utilisation des sites de cartographie Mapquest, Google Maps, Multimap ou Terraserver. Vous n'obtenez pas par cette méthode, d'affichage automatique d'onglet "carte".
Importer les données de votre (ou de vos) fichier(s) GEDCOM
En important les données de votre fichier GEDCOM, vous peuplez la table des "lieux" (appelée "placelocation" en anglais) avec tous les lieux qui sont présents dans votre fichier GEDCOM. MaiS – ces lieux n'auront pas de coordonnées en LATITUDE / LONGITUDE. Vous aurez besoin d'entrer ces coordonnées pour chacun des lieux existants. Voir plus bas le paragraphe ‘Vous pouvez éditer et supprimer…’.
Importer à partir d'un fichier
Cette option vous permet d'importer des données de lieux, en incluant tous les champs nécessaires pour la table des coordonnées en LATITUDE/LONGITUDE, à partir de fichiers préparés à l'avance au format Excel (.csv).
Vous pouvez:
- créer votre propre table,
- utiliser celles qui sont fournies dans le répertoire ‘modules/googlemap/extra’,
- utiliser les tables des villes françaises qui ont été spécialement créées par les membres du forum. Je vous conseille cette méthode. Vous pouvez télécharger ces fichiers sur le site du forum français de PhpGedView
Si vous avez un nombre important de pays disponibles sous forme de fichiers Excel (.csv), c'est la méthode la plus rapide et la plus facile pour créer automatiquement vos cartes.
Pour accéder à cette fonction, il faut aller dans le menu "Administration --> Configuration Googlemaps --> Editer les coordonnées d'un lieu".
ATTENTION ! lors de l'import d'un fichier de lieux, une fois le fichier importé, il vous faut cocher la case "Voir les lieux inutilisés" puis cliquer sur le bouton "Afficher". Dans le cas contraire, vous ne verrez pas immédiatement le résultat de votre import !
Cependant – il est conseillé de vérifier que les marqueurs PLAC qui sont présents dans votre fichier GEDCOM correspondent très EXACTEMENT aux lieux qui sont présents dans les fichiers au format Excel que vous importez, en respectant la structure et la hiérarchie – c'est à dire, avez-vous chaque ville dans le bon département et/ou la bonne région ?
Vous pouvez éditer et supprimer les coordonnées…..
Cette méthode est intuitive. Cliquez sur "Editer les coordonnées du lieu" à partir du menu administration et vous afficherez une fenêtre qui ressemble à celle de la figure 8.
La crois rouge X permet de supprimer l'élément. Si la croix X est grise (ou s'il n'y a pas de croix X), celà indique que l'élément a des lieux de niveau inférieur qui ont été entrées dans la table. Si vous voulez supprimer l'entité de niveau supérieur, vous devez d'abord supprimer les entités de niveaux inférieurs. Lisez le paragraphe technique ci-dessous si vous voulez en savoir plus sur ce point.
Paragraphe technique
Les données de lieux du module GoogleMaps sont placées dans une table à part, distincte de la table des lieux du logiciel PhpGeView. Cette table, appelée "placelocation" a la structure suivante:
Field | Def | Desc |
---|---|---|
pl_id | int(11) | Index incrémental |
pl_parent_id | int(11) | Fait référence au niveau hiérarchique ‘parent’ |
pl_level | int(11) | Niveau hiérarchique (Le niveau 0 correspond au pays, le niveau 3 à une commune) |
pl_place | varchar(255) | Le nom du lieu |
pl_long | varchar(30) | Coordonnées de Longitude |
pl_lati | varchar(30) | Coordonnées de Latitude |
pl_zoom | int(4) | Niveau de zoom dans Googlemap |
pl_icon | varchar(255) | Indique l'icône qui sera utilisée pour marquer le lieu |
Les données sont enregistrées dans une table séparée afin que cette table puisse être utilisée par plusieurs fichiers GEDCOM. Ainsi, lorsque vous supprimez un fichier GEDCOM, les coordonnées des lieux sont conservées et pourront être utilisées lorsque vous réimporterez votre fichier GEDCOM.
Lieux
En pratique, tous les ‘lieux’ sont définis par un identifiant qui correspond à ‘Monpays, MaRégion, MonDépartement, MaVille’. Ces identifiants ont un 'niveau' équivalent:
- Pays = niveau 0
- Région = niveau 1
- Département = niveau 2
- Commune = niveau 3
- Pays = niveau 0
Lorsque vous recherchez le nom d'un lieu dans la table, le logiciel va rechercher si ce lieu existe dans la table de manière séquentielle en commençant par le niveau le plus haut et en desendant jusqu'au niveau le plus bas, jusqu'à ce qu'il trouve le lieu.
Quand vous créez une définition pour un lieu, vous le spécifiez de la même façon. Pour pointer sur le lieu auquel vous faites référence, vous ajoutez un 'niveau' à l'ensemble de la description du lieu. Ainsi la description de votre lieu ressemble à ceci:
"Niveau, Monpays, MaRégion, MonDépartement, MaVille".
Le niveau correspond à la place du lieu que vous voulez définir dans l'ordre hiérarchique des lieux. Ainsi, Monpays correspond au niveau 0, Macommune correspond au niveau 4.
La longitude, la latitude, le niveau de zoom et l'icône sont des valeurs qui sont simplement ajoutées à la fin de l'identifiant du lieu.
Ainsi la description complète d'un lieu aura la forme suivante:
"Niveau, Monpays, MaRégion, MonDépartement, MaVille, MaLongitude, MaLatitude, Monniveaudezoom, MonIcône".
Vous pouvez omettre une partie de la description du lieu, mais pas le caractère ‘,’ qui sépare les différentes composantes de votre description. Vous pouvez ainsi avoir la description suivante (en omettant la région):
"Niveau, Monpays,, MonDépartement, MaVille, MaLongitude, MaLatitude, Monniveaudezoom, MonIcône". (notez bien les deux virgules qui séparent Mopays et Mondépartement).
Le corollaire de ceci est que vous avez besoin de prendre en considération la séquence de lieux quand vous importez des données d'une source quelconque. Vous devez construire dès le début la séquence des lieux, de manière à obtenir, dans l'ordre:
‘Niveau, MonPays,,,, MaLongitude, MaLatitude, MonfacteurdeZoom, MonIcône’
‘Niveau, MonPays, MaRégion,,, MaLongitude, MaLatitude, MonfacteurdeZoom, MonIcône’
‘Niveau, MonPays, MaRégion, MonDépartement,, MaLongitude, MaLatitude, MonfacteurdeZoom, MonIcône’
…et ainsi de suite...
La table ‘placelocation’ enregistre les lieux dans 8 champs, qui ont été conçus pour enregistrer chaque lieu une fois pour toutes, avec une référence au lieu de niveau immédiatement supérieur (appelé niveau parent) qui est enregistré dans le champ pl_parent_id. Le champ pl_id auquel le lieu fait référence est un nombre séquentiel généréré automatiquement.
Une structure typique de la table, ressemble donc à ceci: [Note – some columns have been ignored for display purposes only]
pl_id | pl_parent_id | pl_level | pl-place | pl_long | pl_lati |
---|---|---|---|---|---|
1 | 0 | 0 | France | E2.00 | N46.00 |
6 | 1 | 1 | Alsace | E7.3004 | N47.6894 |
7 | 6 | 2 | Bas-Rhin | E7.5421 | N48.5602 |
8 | 7 | 3 | Strasbourg 67482 | E7.7500 | N48.5833 |
Remarquez qu'il y a 9 champs dans la table. Ce nombre est fixé. Si vous avez l'intention de construire un fichier .CSV afin de l'importer, assurez vous de bien avoir 9 champs sur chaque ligne de votre fichier.
Configuration de Googlemap – signification des différentes rubriques
Référez-vous à la Figure 4
La première ligne de saisie vous permet d'activer ou non la fonction Googlemap.
La deuxième ligne vous permet d'entrer la clé d'enregistrement API de Googlemap.
La troisième ligne définit le type d'affichage – carte, image satellite, ou une combinaison des deux (hybride).
La quatrième ligne définit la taille de la carte lorsqu'elle est affichée sur l'écran. La taille par défaut (600 x 400 pixels) peut être ajustée à vos desiderata.
La cinquième ligne correspond au niveau de zoom. Le niveau 0 correspond au pays (niveau de détail le plus bas), le niveau maximum correspond au niveau de détail le plus élevé. Remarquez que quelques cartes satellites ne sont pas disponibles pour le niveau de zoom le plus élevé.
Précision: celà détermine le nombre de décimales qui sont utilisés pour les coordonnées des lieux. Un pays a probablement d'une seul décimale, une commune a besoin de 3 décimales. La troisième décimale fait déplacer le pointeur sur la carte par incréments d'environ 110 mètres. La sixième décimale a une précision d'environ 0.1 mètre.