Nous utilisons des cookies pour vous garantir la meilleure expérience sur notre site. Si vous continuez à utiliser ce dernier, nous considèrerons que vous acceptez l'utilisation des cookies. J'ai compris ! ou En savoir plus !.
banniere

Le portail francophone de la géomatique


Toujours pas inscrit ? Mot de passe oublié ?
Nom d'utilisateur    Mot de passe              Toujours pas inscrit ?   Mot de passe oublié ?

Annonce

Printemps des cartes 2024

#1 Thu 09 March 2017 13:30

cherbe
Participant occasionnel
Date d'inscription: 1 Nov 2008
Messages: 41

Leaflet : utiliser des tuiles à partir de fichiers locaux png ou jpeg

Bonjour

J'essaie en vain de créer un fond de carte avec mes propres tuiles. Les fichiers sont stockés ainsi :
page_html_contenant_le script_JS
        |
        --dossier_tuiles
              |
              --sous_dossiers02      sous_dossiers04        sous_dossiers05
                        |
                        --sous_sous_dossier01     sous_sous_dossier02
                                |
                                --fichier_0.png fichier_1.png
dans le script, j'utilise :

Code:

L.tileLayer('dossier_tuiles/{z}/{x}{y}.png').addTo(map);

Je n,'ai aucun message d'erreur dans la console du navigateur mais rien ne s'affiche.
J'ai essayé différentes syntaxes :

Code:

L.tileLayer('./dossier_tuiles/{z}/{x}{y}.png').addTo(map);
L.tileLayer('file://dossier_tuiles/{z}/{x}{y}.png').addTo(map);
L.tileLayer('file:///dossier_tuiles/{z}/{x}{y}.png').addTo(map);

Rien ne fonctionne et je n'ai jamais de signalement d''erreur.
A noter que ceci fonctionne parfaitement :

Code:

L.tileLayer('http://{s}.tile.osm.org/{z}/{x}/{y}.png').addTo(map);

Hors ligne

 

#2 Thu 09 March 2017 14:52

nworr
Participant actif
Date d'inscription: 10 Apr 2014
Messages: 74

Re: Leaflet : utiliser des tuiles à partir de fichiers locaux png ou jpeg

J'aurai pensé à une restriction d'accès aux fichier locaux (file://) mais si la console du navigateur ne dit rien ...

Avec Chrome par exemple il faut le lancer avec l'option --allow-file-access-from-files  (cf http://www.chrome-allow-file-access-from-file.com/ ), mais j'aurai tendance à croire qu'il aurait indiqué une erreur dans la console.

Hors ligne

 

#3 Thu 09 March 2017 15:41

cherbe
Participant occasionnel
Date d'inscription: 1 Nov 2008
Messages: 41

Re: Leaflet : utiliser des tuiles à partir de fichiers locaux png ou jpeg

Je n'ai pas pensé à ce problème d'accès aux fichiers. Vu que l'on est en Javascript, ça doit être impossible de cette manière. Pourtant, il y a de nombreux exemples sur le net ?

Hors ligne

 

#4 Thu 09 March 2017 16:11

nworr
Participant actif
Date d'inscription: 10 Apr 2014
Messages: 74

Re: Leaflet : utiliser des tuiles à partir de fichiers locaux png ou jpeg

Je pense que les exemple s'appuient sur un hébergement en local (http://localhost) ce que sous entend d'avoir un petit serveur web (apache, ...) déjà configuré.

Il doit être possible de modifier les options du navigateur pour pouvoir accepter les fichiers locaux, mais ce n'est pas très pérenne.

Hors ligne

 

#5 Thu 09 March 2017 16:27

cherbe
Participant occasionnel
Date d'inscription: 1 Nov 2008
Messages: 41

Re: Leaflet : utiliser des tuiles à partir de fichiers locaux png ou jpeg

En Javascript, je sais lire un seul fichier local avec xmlhttprequest
Mais je ne sais pas comment faire le lien entre  xmlhttprequest et la fonction tileLayer de Leaflet ?

Dernière modification par cherbe (Thu 09 March 2017 16:28)

Hors ligne

 

#6 Thu 09 March 2017 16:33

nworr
Participant actif
Date d'inscription: 10 Apr 2014
Messages: 74

Re: Leaflet : utiliser des tuiles à partir de fichiers locaux png ou jpeg

Si xmlhttprequest arrive a récupérer un fichier local (file:// ) c'est qu'a priori la navigateur autorise l'accès au fichier locaux.
Le problème se situerait alors au niveau de leaflet qui veut forcément du http ?

Hors ligne

 

#7 Thu 09 March 2017 17:23

cherbe
Participant occasionnel
Date d'inscription: 1 Nov 2008
Messages: 41

Re: Leaflet : utiliser des tuiles à partir de fichiers locaux png ou jpeg

nworr a écrit:

Si xmlhttprequest arrive a récupérer un fichier local (file:// ) c'est qu'a priori la navigateur autorise l'accès au fichier locaux.


Pas exactement. Sous toutes réserves car je ne suis pas expert, xmlhttprequest simule un serveur HTTP contenant le fichier à lire.

Hors ligne

 

Pied de page des forums

Powered by FluxBB