trazar regular regla polígono pentagono paso lados lado hacer facil dibujar cómo con compas como cartulina 5cm openlayers

regular - OpenLayers: ¿cómo puedo dibujar un Polígono a partir de los puntos de LonLat existentes?



pentagono regular (1)

Tengo en mi base de datos vértices de longitud y latitud de polígonos definidos por el usuario. Mis preguntas son: ¿cómo puedo recrearlas y mostrarlas en un mapa ahora? Esto es bastante fácil de hacer con la API de Google Maps, pero no puedo encontrar documentación o ejemplos sobre cómo hacer esto con OpenLayers. ¿Alguien ha tenido alguna experiencia haciendo esto?


Después de mucha experimentación, descubrí cómo hacerlo:

var sitePoints = []; var siteStyle = { // style_definition }; var epsg4326 = new OpenLayers.Projection("EPSG:4326"); for (var i in coordinates) { var coord = coordinates[i]; var point = new OpenLayers.Geometry.Point(coord.lng, coord.lat); // transform from WGS 1984 to Spherical Mercator point.transform(epsg4326, map.getProjectionObject()); sitePoints.push(point); } sitePoints.push(sitePoints[0]); var linearRing = new OpenLayers.Geometry.LinearRing(sitePoints); var geometry = new OpenLayers.Geometry.Polygon([linearRing]); var polygonFeature = new OpenLayers.Feature.Vector(geometry, null, siteStyle); vectors.addFeatures([polygonFeature]);