Dear OpenLayers list,

I'm trying to use OpenLayers to help users to define a bounding box for 
geographical data search.

Users can both enter bounding box values with keyboard, or draw the zone on a 
OpenLayers map.

To draw the zone with OpenLayers I build a layer like this :

##############
function initMap()
{
   [...]

   editMap = new OpenLayers.Map("editMapDiv", {allOverlays: true});


   bounds = new OpenLayers.Bounds(longMin, latMin, longMax, latMax);
   boxFeature = new OpenLayers.Feature.Vector(bounds.toGeometry());

   extentsEditLayer = new OpenLayers.Layer.Vector("ExtentLayer");
   extentsEditLayer.addFeatures(boxFeature);
   controlTransformFeature = new 
OpenLayers.Control.TransformFeature(extentsEditLayer, {rotate: false});

   controlTransformFeature.events.on({'transform': function(evt) 
{updateEditExtentFromMouse();}});
   controlTransformFeature.setFeature(boxFeature);
       
   editMap.addControl(controlTransformFeature);
    [...]

}

My problem is when a user enter coordinates to define the bounding box with the 
keyboard. When he changes a value, I intercepts the event in a function but I 
don't know how to refresh the bounding box handler :


##############
function onKeyboradChange()
{

   boxFeature.geometry.components[0].components[0].x = longMin;
   boxFeature.geometry.components[0].components[0].y = latMin;
   [...]

   #update the feature : ok

   extentsEditLayer.drawFeature(boxFeature);

   #but how to update the controlTransformFeature ?
}

Any idea ?

Thanks in advance,

Best regards,
Nono

_______________________________________________
Users mailing list
[email protected]
http://lists.osgeo.org/mailman/listinfo/openlayers-users

Reply via email to