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

GeoDataDays 2025

#1 Thu 16 June 2011 13:47

fowlie
Participant occasionnel
Date d'inscription: 16 Jun 2011
Messages: 22

Problème zoom openlayer

Bonjour,

Je découvre openlayer et j'ai suivi ce tuto :http://softlibre.gloobe.org/openlayers/introduction qui marche trés bien. mais si je copie l'image sur mon serveur (j'utilise Wamp), lorsque je zoom j'affiche plusieur fois la même image plutot que mon image en plus gros. Aprés quelques recherche j'ai vu qu'il fallait faire du tuillage ou du dallage de l'image je me trompe?
Cependant je ne sais pas comment faire celà, pourriez-vous me guider?
Dois-je passer par un autre serveur que celui que j'ai créé avec wamp?


Merci d'avance pour vos réponses

Hors ligne

 

#2 Thu 16 June 2011 14:11

Yves
Membre du bureau
Lieu: Aix-les-Bains
Date d'inscription: 22 Mar 2006
Messages: 9973
Site web

Re: Problème zoom openlayer

Bonjour,

OpenLayers réalise un tuilage par défaut, c'est pour cela que tu as un dallage d'image identique. À mon avis il y a un problème de configuration dans le code Javascript et/ou tes services. La page est elle publique ?

Y.


Yves Jacolin, bénévole de l'association GeoRezo.net, agit au nom et pour le compte de l'association - Partageons ce qui nous départage !!  - GeoRezo vous aide ? Aidez GeoRezo !

Hors ligne

 

#3 Thu 16 June 2011 14:13

fowlie
Participant occasionnel
Date d'inscription: 16 Jun 2011
Messages: 22

Re: Problème zoom openlayer

Oui il me semble que la page est publique (comment vérifier?)
Voici mon code :

Code:

<html>
<head>
    <title>http://localhost:8080/OL/OpenLayers-2.10/OpenLayers.js</title>
    <script src="http://openlayers.org/api/OpenLayers.js"></script>
        <script defer="defer" type="text/javascript">
      function init() {
        var map = new OpenLayers.Map('map');
        var wms = new OpenLayers.Layer.WMS( "OpenLayers WMS","http://localhost:8080/OL/stx1.jpg", {layers: 'basic'} );
        map.addLayer(wms);
        map.zoomToMaxExtent();
      }
    </script>
</head>
<body onload="init()">
    <div style="width:100%; height:100%" id="map"> toto</div>

</body>
</html>

Hors ligne

 

#4 Thu 16 June 2011 14:40

Tony VINCENT
Participant actif
Lieu: Poitiers
Date d'inscription: 13 Jan 2010
Messages: 86

Re: Problème zoom openlayer

Bonjour,

Oui il me semble que la page est publique (comment vérifier?)


C'est pour savoir si ta page est sur un serveur web qui peut être vu par tout les internautes.
Afin de voir le résultat de ta page.


Si oui, peux-tu communiquer l'URL (ex: http://nom_domaine.???/ta_page.html)


Tony

Hors ligne

 

#5 Thu 16 June 2011 14:43

fowlie
Participant occasionnel
Date d'inscription: 16 Jun 2011
Messages: 22

Re: Problème zoom openlayer

Oh j'avais mal compris :s dans ce cas non elle n'est pas publique, je n'y accéde que en local sur mon PC avec wamp. mais je suis sur que mon url est bon vu que je peux voir l'image si je rentre mon url dans IE ou firefox.

Hors ligne

 

#6 Thu 16 June 2011 14:50

Tony VINCENT
Participant actif
Lieu: Poitiers
Date d'inscription: 13 Jan 2010
Messages: 86

Re: Problème zoom openlayer

Re-bonjour,


si tu remplace cela :

Code:

   var wms = new OpenLayers.Layer.WMS( "OpenLayers WMS","http://localhost:8080/OL/stx1.jpg", {layers: 'basic'} );

par ca :

Code:

var wms = new OpenLayers.Layer.WMS( "OpenLayers WMS", 
            "http://labs.metacarta.com/wms/vmap0", {layers: 'basic'} );

Est-ce que le zoom fonctionne correctement ?


Tony

Hors ligne

 

#7 Thu 16 June 2011 14:53

fowlie
Participant occasionnel
Date d'inscription: 16 Jun 2011
Messages: 22

Re: Problème zoom openlayer

Si je fais celà oui ça fonctionne, c'est dés que je met une image en local et que je met l'url pour l'atteindre, je l'affiche mais je ne zoom pas

Hors ligne

 

#8 Thu 16 June 2011 15:07

Yves
Membre du bureau
Lieu: Aix-les-Bains
Date d'inscription: 22 Mar 2006
Messages: 9973
Site web

Re: Problème zoom openlayer

Bonjour,

Tony a trouvé ton problème : tu dois mettre en place un serveur WMS sur ton serveur local ou bien rajouter l'option singleTrue: true voici un exemple :

Code:

            var new_ol_wms = new OpenLayers.Layer.WMS( "WMS w/singleTile", 
                "http://vmap0.tiles.osgeo.org/wms/vmap0?", {layers: 'basic'}, 
                { singleTile: true, ratio: 1 } );

Y.


Yves Jacolin, bénévole de l'association GeoRezo.net, agit au nom et pour le compte de l'association - Partageons ce qui nous départage !!  - GeoRezo vous aide ? Aidez GeoRezo !

Hors ligne

 

#9 Thu 16 June 2011 15:11

fowlie
Participant occasionnel
Date d'inscription: 16 Jun 2011
Messages: 22

Re: Problème zoom openlayer

Voici mon nouveau code avec votre sugestion :

Code:

<html>
<head>
    <title>http://localhost:8080/OL/OpenLayers-2.10/OpenLayers.js</title>
    <script src="http://openlayers.org/api/OpenLayers.js"></script>
        <script defer="defer" type="text/javascript">
      function init() {
        var map = new OpenLayers.Map('map');
     //   var wms = new OpenLayers.Layer.WMS( "OpenLayers WMS","http://localhost:8080/OL/stx1.jpg", {layers: 'basic'} );
        var new_ol_wms = new OpenLayers.Layer.WMS( "WMS w/singleTile", 
                "http://localhost:8080/OL/stx1.jpg", {layers: 'basic'}, 
                { singleTile: true, ratio: 1 } );
        map.addLayer(wms);
        map.zoomToMaxExtent();
      }
    </script>
</head>
<body onload="init()">
    <div style="width:100%; height:100%" id="map"> toto</div>

</body>
</html>

Mais là je n'affiche plus du tout l'image :s juste la barre de zoom

Dernière modification par fowlie (Thu 16 June 2011 15:15)

Hors ligne

 

#10 Thu 16 June 2011 15:19

fowlie
Participant occasionnel
Date d'inscription: 16 Jun 2011
Messages: 22

Re: Problème zoom openlayer

Aprés quelques modification voici le code :

Code:

<html>
<head>
    <title>http://localhost:8080/OL/OpenLayers-2.10/OpenLayers.js</title>
    <script src="http://openlayers.org/api/OpenLayers.js"></script>
        <script defer="defer" type="text/javascript">
      function init() {
        var map = new OpenLayers.Map('map');
     //   var wms = new OpenLayers.Layer.WMS( "OpenLayers WMS","http://localhost:8080/OL/stx.jpg", {layers: 'basic'} );
        var new_ol_wms = new OpenLayers.Layer.WMS( "WMS w/singleTile",
                "http://localhost:8080/OL/stx", {layers: 'basic'}, 
                { singleTile: true, ratio: 1 } );
        map.addLayer(new_ol_wms);
        map.zoomToMaxExtent();
      }
    </script>
</head>
<body onload="init()">
    <div style="width:100%; height:100%" id="map"> toto</div>

</body>
</html>

J'affiche bien mon image, elle prend même la place de tous l'écran ... mais je ne peut plus me servir du zoom, que je fasse + ou - ça ne change rien :s
Et si j'utilise les flêches directionnelles je bouge un l'image mais ça finit par revenir à sa position initial.
le map.ZoomToMaxExtent() est-il réellement nécessaire? si oui pourriez-voue me dire exactement son role?

Dernière modification par fowlie (Thu 16 June 2011 15:24)

Hors ligne

 

#11 Thu 16 June 2011 16:03

Loic_GR
Membre
Lieu: Besancon
Date d'inscription: 12 May 2011
Messages: 1029
Site web

Re: Problème zoom openlayer

map.ZoomToMaxExtent() permet de revenir au zoom arrière maximum il me semble. On pourrait appeler ça "revenir à la maison"

Dernière modification par heretik25 (Thu 16 June 2011 16:03)


Freelance traitements ETL FME certifié: www.sitdi-france.fr Twitter : @sitdifrance
Site perso ~ www.partir-en-vtt.com

Hors ligne

 

#12 Thu 16 June 2011 16:14

fowlie
Participant occasionnel
Date d'inscription: 16 Jun 2011
Messages: 22

Re: Problème zoom openlayer

Merci pour l'info wink
j'ai testé tous les tutos de ce lien : http://geotribu.net/node/3#comment-1104
Et je n'ai aucun problème d'affichage, c'est juste avec mon image que j'ai mis sur mon serveur local que j'ai des problèmes.

Hors ligne

 

#13 Fri 17 June 2011 08:59

fowlie
Participant occasionnel
Date d'inscription: 16 Jun 2011
Messages: 22

Re: Problème zoom openlayer

Bonjour, je n'ai pas réussi à résoudre ce problème, quelqu'un a une idée? j'ai essayé avec l'image en .gif ou en .jpg mais cela ne change rien.
Mon but au final sera d'afficher un fichier .dwg, mais je ne pense pas qu'openlayer supporte ce format, suis-je obliger de convertir mon fichier? c'est ce que j'ai fait pour le moment mais la solution n'est pas satisfaisante.

---EDIT---
Quelqu'un pourrait-il m'aider? je suis bloqué et j'avoue que je suis un peu perdu aussi :s

Dernière modification par fowlie (Fri 17 June 2011 12:27)

Hors ligne

 

#14 Fri 17 June 2011 13:11

Tony VINCENT
Participant actif
Lieu: Poitiers
Date d'inscription: 13 Jan 2010
Messages: 86

Re: Problème zoom openlayer

Bonjour,

après quelques recherche, pour afficher une image avec OpenLayers, il faut utiliser ceci :

Code:

OpenLayers.Layer.Image

à la place de

Code:

OpenLayers.Layer.WMS

Tony

Hors ligne

 

#15 Fri 17 June 2011 13:32

fowlie
Participant occasionnel
Date d'inscription: 16 Jun 2011
Messages: 22

Re: Problème zoom openlayer

Ah merci beaucoup ça marche mieux comme ça big_smile

Code:

    <script defer="defer" type="text/javascript">
      function init() {
        var map = new OpenLayers.Map('map');
        var options = {numZoomLevels: 3};
 
        var graphic = new OpenLayers.Layer.Image('City Lights',
            'http://localhost:8080/OL/gapart1.gif',
            new OpenLayers.Bounds(-180, -88.759, 180, 88.759),
            new OpenLayers.Size(580, 288),
            options, {layers: 'basic'}, 
                { singleTile: true, ratio: 1 }
        );
        map.addLayer(graphic);
        map.setCenter(new OpenLayers.LonLat(0, 0), 2);
        map.addControl(new OpenLayers.Control.LayerSwitcher());
        map.zoomToMaxExtent();
      }
    </script>

Je copie mon code pour ceux que ça pourrait intéréssé smile
Merci encore.

Si je peux me permettre une autre question. OpenLayer permet-il l'affichage de fichier .dwg? si non faut-il vraiment les convertir? quel format supporte openlayer?

Dernière modification par fowlie (Fri 17 June 2011 14:26)

Hors ligne

 

#16 Fri 17 June 2011 16:00

fowlie
Participant occasionnel
Date d'inscription: 16 Jun 2011
Messages: 22

Re: Problème zoom openlayer

J'ai tenté d'afficher un fichier .dwg avec cette ligne de code :

Code:

var wms = new OpenLayers.Layer.WMS( "OpenLayers WMS","http://localhost:8080/OL/ga04.dwg", {layers: 'basic'},{ singleTile: true, ratio: 1 } );

mais j'affiche un grand carré rose là ou devrait appraitre l'image. Est-ilimpossible d'afficher ce genre d'image? ou mon code est-il faut?
J'ai le même problème avec ce fichier si j'utilise OpenLayers.Layer.Image.

Dernière modification par fowlie (Fri 17 June 2011 16:01)

Hors ligne

 

#17 Mon 20 June 2011 09:42

fowlie
Participant occasionnel
Date d'inscription: 16 Jun 2011
Messages: 22

Re: Problème zoom openlayer

Personne n'a une idée pour m'aider? je ne trouve pas beaucoup d'infos sur le net, et c'est le seul forum vraiment spécialisé que j'ai trouvé.
Est-ce une bonne idée d'utiliser la bibliothéque OpenLayer pour travailler sur des plans .dwg? ou faut-il utiliser autre chose, OpenLayer c'est ce qu'on m'a conseillé mais je me doute qu'il existe d'autre possibilités.
Merci d'avance

Hors ligne

 

#18 Mon 20 June 2011 10:45

Yves
Membre du bureau
Lieu: Aix-les-Bains
Date d'inscription: 22 Mar 2006
Messages: 9973
Site web

Re: Problème zoom openlayer

Bonjour,

Personne ne répond parce que tu mélanges tout : service Web, fichier brute. OpenLayers n'est pas un SIG desktop et ne sait lire que les flux WMS, WFS, etc. C'est important de bien comprendre ce que tu fais : lorsque tu écris OpenLayers.Layer.WMS cela signifie que tu crées une couche WMS au sein d'OpenLayers. Sais tu ce qu'est un service WMS ?

Je t'invite à parcourir le wiki de GeoRezo, notamment la page des standards : http://georezo.net/wiki/main/standards/start cela devrait t'aider à bien comprendre d'où vient ton erreur wink

Y.


Yves Jacolin, bénévole de l'association GeoRezo.net, agit au nom et pour le compte de l'association - Partageons ce qui nous départage !!  - GeoRezo vous aide ? Aidez GeoRezo !

Hors ligne

 

#19 Mon 20 June 2011 10:58

fowlie
Participant occasionnel
Date d'inscription: 16 Jun 2011
Messages: 22

Re: Problème zoom openlayer

tu as raison je mélange un peu tout, j'essai de comprendre trop de choses en même temps et pas forcément dans le bon ordre :s

Le Web Map Service (WMS) est un standard OGC de service web qui permet de produire dynamiquement des cartes à partir de données géoréférencées.Sa mise en œuvre suppose l'utilisation d'un serveur WMS,


cela signifie-t-il qu'on apporte des données et c'est le serveur qui se charge de créer la carte? Dans ce cas en effet ce n'est pas ce que je recherche.

Mais alors si je souhaite travailler avec des fichiers AutoCAD, je ne peux utiliser ni la couche WMS, ni la couche Image, existe-t-il une autre couche que je pourrais utiliser? Ou alors OpenLayer ne me permet tout simplement pas de travailler avec ces fichiers et il faut que je les convertise moi-même en gif, png ou jpeg?

Je m'excuse si je m'éloigne un peu du sujet de base du forum que j'ai créé mais j'avoue être un peu perdue quand à la direction que je dois prendre pour réaliser mon projet.

Hors ligne

 

#20 Mon 20 June 2011 11:13

Yves
Membre du bureau
Lieu: Aix-les-Bains
Date d'inscription: 22 Mar 2006
Messages: 9973
Site web

Re: Problème zoom openlayer

Bonjour,

Oui il faut soit un serveur cartographique soit transformer tes fichiers "brutes" en image. Mais pour cela il faut "styliser" les géométries donc tu auras besoin d'un moteur cartographique : QGIS (desktop), MapServer (web et scripts). Tu peux installer les deux en locals et générer une image (je te conseil à la rigueur MapServer car couplé avec TileCache tu pourras générer des images sous forme de tuile. Ces tuiles tu les placeras sur ton serveur et OpenLayers pourra  les récupérer (via une couche OL de type xyz).

Contraintes : il y a des étapes de préparation à chaque mise à jour des données, cela peut prendre du temps et beaucoup d'espace en fonction de l'étendue de tes données. Mais généralement les données autocad sont localisé sur une "petite" surface.

Y.


Yves Jacolin, bénévole de l'association GeoRezo.net, agit au nom et pour le compte de l'association - Partageons ce qui nous départage !!  - GeoRezo vous aide ? Aidez GeoRezo !

Hors ligne

 

#21 Mon 20 June 2011 11:21

fowlie
Participant occasionnel
Date d'inscription: 16 Jun 2011
Messages: 22

Re: Problème zoom openlayer

Je te remercie pour tes réponses, je vais suivre tes conseils smile

Hors ligne

 

#22 Mon 20 June 2011 13:21

damien_boilley
Participant assidu
Lieu: Grenoble
Date d'inscription: 16 Apr 2009
Messages: 224

Re: Problème zoom openlayer

fowlie a écrit:

Si je peux me permettre une autre question. OpenLayer permet-il l'affichage de fichier .dwg? si non faut-il vraiment les convertir? quel format supporte openlayer?


Un peu après la bataille, et parce que personne ne semble avoir répondu clairement : la réponse est non, pour autant que je sache, le format DWG est le format propriétaire d'AutoCAD, aucun logiciel libre ne le lit facilement, il ne peut pas être utilisé par OpenLayers.

Hors ligne

 

#23 Mon 20 June 2011 15:27

fowlie
Participant occasionnel
Date d'inscription: 16 Jun 2011
Messages: 22

Re: Problème zoom openlayer

damien_boilley a écrit:

Un peu après la bataille, et parce que personne ne semble avoir répondu clairement : la réponse est non, pour autant que je sache, le format DWG est le format propriétaire d'AutoCAD, aucun logiciel libre ne le lit facilement, il ne peut pas être utilisé par OpenLayers.


J'avais malheureusement cru comprendre cela sad si je passe par mapserver tu pense que cela deviendra possible ou toujours pas?
Est-ce que le format .svg pourrait être utilisé? je pense convertir mes fichiers autocad en .svg, mais si cela reste impossible à afficher quand même je ne vais pas le faire.

Hors ligne

 

#24 Tue 21 June 2011 10:20

damien_boilley
Participant assidu
Lieu: Grenoble
Date d'inscription: 16 Apr 2009
Messages: 224

Re: Problème zoom openlayer

Mapserver est un logiciel libre, DWG est un format propriétaire fermé, donc Mapserver ne peut pas diffuser du DWG.

La seule solution est donc de convertir dans un format plus ouvert sinon libre, comme SVG peut-être, ou GIF, PNG ou JPEG si du raster suffit, ou alors passer par du DXF (format d'export ouvert d'AutoCAD) si ce sont des données géoréférencées et le convertir ensuite dans un format compatible SIG comme MIF-MID, Shapefile, etc. qui pourront être traités par Mapserver. Bon courage !

Hors ligne

 

#25 Tue 21 June 2011 10:23

fowlie
Participant occasionnel
Date d'inscription: 16 Jun 2011
Messages: 22

Re: Problème zoom openlayer

Merci, je pense en effet passer pas du format SVG ou DXF, j'ai créer un nouveau sujet pour savoir comment faire avec ces formats.

Hors ligne

 

#26 Tue 28 June 2011 11:05

fowlie
Participant occasionnel
Date d'inscription: 16 Jun 2011
Messages: 22

Re: Problème zoom openlayer

Bonjour, je reviens vers vous car j'essai d'avancer avec OpenLayer grâce au exemple fourni dans cette page : http://softlibre.free.fr/ol/html/librar … ys-fr.html
Mais j'ai quelques problème.

Si je reviens au code le plus simple :

Code:

<html>
<head>
    <title>OpenLayers Example</title>
    <script src="http://openlayers.org/api/OpenLayers.js"></script>
        <script defer="defer" type="text/javascript">
      function init() {
        var map = new OpenLayers.Map('map');
        var wms = new OpenLayers.Layer.WMS( "OpenLayers WMS","http://labs.metacarta.com/wms/vmap0", {layers: 'basic'} );
        map.addLayer(wms);
        map.zoomToMaxExtent();
      }
    </script>
</head>
<body>
    <div style="width:100%; height:100%" id="map"></div>

</body>
</html>

Je n'affiche rien y a-t'il un problème avec l'url http://labs.metacarta.com/wms/vmap0 car la derniére fois que j'ai essayé cela marchait, enfin j'affichais la carte, comme j'essai de comprendre OpenLayer en travaillant sur cette carte pour le moment, si je ne l'affiche pas je ne risque pas de voir si mon code autour marche :s

Le sujet n'est peut-être pas placé dans le bon post, si c'est le cas je peux le déplacer.

Merci

Hors ligne

 

#27 Tue 28 June 2011 11:12

Yves
Membre du bureau
Lieu: Aix-les-Bains
Date d'inscription: 22 Mar 2006
Messages: 9973
Site web

Re: Problème zoom openlayer

Bonjour,

Ta fonction init() tu la lances où ? wink

Code:

<body onload="init();">

Y.


Yves Jacolin, bénévole de l'association GeoRezo.net, agit au nom et pour le compte de l'association - Partageons ce qui nous départage !!  - GeoRezo vous aide ? Aidez GeoRezo !

Hors ligne

 

#28 Tue 28 June 2011 11:21

fowlie
Participant occasionnel
Date d'inscription: 16 Jun 2011
Messages: 22

Re: Problème zoom openlayer

Euh ... ok j'aurais du mieux relire mon code avant de posé une question aussi bête ^^ désolé

Hors ligne

 

Pied de page des forums

Copyright Association GeoRezo