1 votos

¿Comprobar si un punto está dentro de un área utilizando OpenLayers?

Tengo un mapa y un punto. Quiero crear un área y comprobar si un punto está dentro del área.

map = new OpenLayers.Map("map");
map.addLayer(new OpenLayers.Layer.OSM());

var lonLat = new OpenLayers.LonLat( -0.1279688 ,51.5077286 )
      .transform(
        new OpenLayers.Projection("EPSG:4326"), // transform from WGS 1984
        map.getProjectionObject() // to Spherical Mercator Projection
      );

var zoom=16;

var markers = new OpenLayers.Layer.Markers( "Markers" );
map.addLayer(markers);

markers.addMarker(new OpenLayers.Marker(lonLat));

map.setCenter (lonLat, zoom);

var bound = new OpenLayers.Bounds(5, 42, 10, 45).toGeometry();

1voto

Signum Puntos 542

El OpenLayers.Bounds tiene un rango de contains* puede utilizar los métodos contieneLonLat en su caso:

var lonLat = new OpenLayers.LonLat(-0.1279688, 51.5077286)
  .transform(
    new OpenLayers.Projection("EPSG:4326"),
    map.getProjectionObject()
  );
var bounds = new OpenLayers.Bounds(5, 42, 10, 45);

var isInside = bounds.containsLonLat(lonLat);

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X