Re: [Portugal] Não consigo visualizar as layers WFS...

Luís de Sousa luis.a.de.sousa at gmail.com
Fri Jun 11 03:37:16 EDT 2010


Olá Óscar,

Ainda bem que conseguiste resolver a questão, eu estava longe de
perceber que o problema estava nas bounds. Mas fico curioso quanto a
uma questão: no uDig também já aparece tudo bem?

Bom trabalho,

Luís

2010/6/10 Òscar Vidal Calbet <oscarblo at gmail.com>:
> Olá,
>
> Finalmente a problema foi resolvido. Depois de ter dado tantas voltas, não
> termino de perceber porque é assim, mas funciona. Basicamente, acho que era
> por não ter definido correctamente as bounds, mas o estranho é que eu
> conseguia visualizar a área correcta do mapa, se não, não tivesse conseguido
> ver a layer WMS, eu acho.
>
> Agradeço imenso a ajuda do Luís e do Fernando. Espero poder retornar isto
> algum dia.
>
> Segue em baixo o código final das OpenaLayers (só mostro isto porque é o
> único que alterei), a cor verde identifica o código acrescentado/alterado:
>
>
>
>     <script src="http://openlayers.org/api/OpenLayers.js"></script>
>     <script type="text/javascript">
>
>         OpenLayers.IMAGE_RELOAD_ATTEMPTS = 3;
>         var map;
>
>         function init(){
>
>            var bounds = new OpenLayers.Bounds(
>                     -119192.24, -42077.98,
>                     -96875.16, -26545.94
>             );
>
>            var options = {
>                     controls: [],
>                     maxExtent: bounds,
>                     maxResolution: 87.17609375,
>                     projection: "EPSG:20791",
>                     units: 'm'
>             };
>
>             map = new OpenLayers.Map('map', options);
>
>             var political = new OpenLayers.Layer.WMS(
>                 "State",
>                 "/geoserver/wms",
>                 {layers: 'space:peniche',
>                  projection: new OpenLayers.Projection("EPSG:20791"),
>                  displayProjection: new OpenLayers.Projection("EPSG:20791"),
>                  format: 'image/png'}
>             );
>
>
>            var eixos_via = new OpenLayers.Layer.WFS(
>                 "Eixos de Via",
>                 "http://IP_DO_TEU_SERVIDOR:8080/geoserver/wfs",
>                 {typename: 'space:eixos_via_peniche'},
>                 {
>                     typename: 'eixos_via_peniche',
>                     featureNS: 'http://IP_DO_TEU_SERVIDOR:8080/space',
>                     extractAttributes: false,
>                     srsName: 'EPSG:20791',
>                     geometryName: 'the_geom'
>
>                 }
>             );
>
>             eixos_via.style = OpenLayers.Util.applyDefaults({strokeColor:
> "#ff0000"},
>                     OpenLayers.Feature.Vector.style["default"]);
>
>             var pontos_interesse = new OpenLayers.Layer.WFS(
>                 "Pontos de Interesse",
>                 "http://IP_DO_TEU_SERVIDOR:8080/geoserver/wfs",
>                 {typename: 'space:pontos_interese_peniche'},
>                 {
>                     typename: 'pontos_interese_peniche',
>                     featureNS: 'http://IP_DO_TEU_SERVIDOR:8080/space',
>                     extractAttributes: false,
>                     srsName: 'EPSG:20791',
>                     geometryName: 'the_geom'
>                 }
>             );
>             pontos_interesse.style =
> OpenLayers.Util.applyDefaults({strokeColor: "#0000ff"},
>                     OpenLayers.Feature.Vector.style["default"]);
>
>
>             map.addLayers([political, eixos_via, pontos_interesse]);
>
>
>             var panel = new OpenLayers.Control.Panel(
>                 {displayClass: 'olControlEditingToolbar'}
>             );
>
>             var drawLine = new OpenLayers.Control.DrawFeature(
>                 eixos_via, OpenLayers.Handler.Path,
>                 {displayClass: 'olControlDrawFeaturePath'}
>             );
>             drawLine.featureAdded = function(feature) {
>                 feature.layer.eraseFeatures([feature]);
>                 // cast to multilinestring
>                 feature.geometry = new OpenLayers.Geometry.MultiLineString(
>                     feature.geometry
>                 );
>                 feature.style.strokeColor = "#ff0000";
>                 feature.state = OpenLayers.State.INSERT;
>                 feature.layer.drawFeature(feature);
>             }
>
>             var drawPoint = new OpenLayers.Control.DrawFeature(
>                 pontos_interesse, OpenLayers.Handler.Point,
>                 {displayClass: 'olControlDrawFeaturePoint'}
>             );
>             drawPoint.featureAdded = function(feature) {
>                 feature.layer.eraseFeatures([feature]);
>                 feature.style.strokeColor = "#0000ff";
>                 feature.state = OpenLayers.State.INSERT;
>                 feature.layer.drawFeature(feature);
>             }
>
>             panel.addControls(
>                 [new OpenLayers.Control.Navigation(), drawLine, drawPoint]
>             );
>
>             map.addControl(panel);
>             map.addControl(new OpenLayers.Control.LayerSwitcher());
>             map.addControl(new OpenLayers.Control.ScaleLine());
>             map.addControl(new OpenLayers.Control.PanZoomBar());
>             map.addControl(new OpenLayers.Control.MousePosition());
>
>             map.zoomToExtent(bounds);
>
>         }
>     </script>
>
>
>
>
> _______________________________________________
> Portugal mailing list
> Portugal at lists.osgeo.org
> http://lists.osgeo.org/mailman/listinfo/portugal
>
>


More information about the Portugal mailing list