[Spanish] Openlayers SLDSelect

martinmaximilianoflores martinmaximilianoflores at yahoo.com.ar
Sun Sep 9 18:52:00 PDT 2012


Encontre una solucion pero usando el protocolo WFS, habilite mi mapserver
como wfs con 'wfs_enable_request' '*' tanto en la capa en su seccion
metadata como tambien en la seccion WEB del mapa general. les dejo la
funcion para que vean como quedo y la usen quien tenga el mismo problema.
Lo adapte del ejemplo
http://openlayers.org/dev/examples/getfeature-wfs.html, pero no anda y hay
que por alguna razon no manda el parametro  PropertyName, el no es pasado
por OP a mi servidor, esto se arregla agregando en el constructor de la
clase  OpenLayers.Protocol.WFS.fromWMSLayer la propiedad {geometryName:
'msGeometry'}

this._highligh_control = function(_layer)
				 	{
				 	 var control = this.highlighControl;
				 	 var select  = this.highligh_select;
				 	 var hover   = this.highligh_hover;
				 										 
				 	select = new OpenLayers.Layer.Vector("Selection", {styleMap:new
OpenLayers.Style(OpenLayers.Feature.Vector.style["select"]) });
            										hover = new OpenLayers.Layer.Vector("Hover");
            										 
            										this.op_map.addLayer(select);
            										this.op_map.addLayer(hover);
				 										
				 										control = new OpenLayers.Control.GetFeature({protocol:
OpenLayers.Protocol.WFS.fromWMSLayer(_layer,{geometryName:
'msGeometry'}),box: true,hover: true,multipleKey: "shiftKey",toggleKey:
"ctrlKey"});
            
            										control.events.register("featureselected", this,
function(e) {	select.addFeatures([e.feature]); });
            										control.events.register("featureunselected", this,
function(e) { select.removeFeatures([e.feature]); });
            										control.events.register("hoverfeature", this,
function(e) { hover.addFeatures([e.feature]); });
           											control.events.register("outfeature", this,
function(e) { hover.removeFeatures([e.feature]);});
           											
            										this.op_map.addControl(control);
            										control.activate();
				 										
				 									};			

Saludos			



--
View this message in context: http://osgeo-org.1560.n6.nabble.com/Openlayers-SLDSelect-tp5000653p5000664.html
Sent from the OSGeo Spanish Local Chapter mailing list archive at Nabble.com.


More information about the Spanish mailing list