Sto provando a creare un cerchio con un centro definito e mettere un indicatore di icona su di esso. Il codice funziona se utilizzo immagini anziché OpenLayers.Geometry.Polygon.createRegularPolygon. Non ero in grado di risolverlo.Openlayers circle Polygon sul layer OpenStreetMaps
qui trovate il mio codice:
<html>
<head>
<title>OpenLayers Example</title>
<script src="http://www.openlayers.org/api/OpenLayers.js"></script>
</head>
<body>
<div id="mapdiv"></div>
<script>
map = new OpenLayers.Map("mapdiv");
map.addLayer(new OpenLayers.Layer.OSM());
epsg4326 = new OpenLayers.Projection("EPSG:4326"); //WGS 1984 projection
projectTo = map.getProjectionObject(); //The map projection (Spherical Mercator)
var lonLat = new OpenLayers.LonLat(-0.1279688 ,51.5077286).transform(epsg4326, projectTo);
var zoom=6;
map.setCenter (lonLat, zoom);
var mycircle = OpenLayers.Geometry.Polygon.createRegularPolygon(
new OpenLayers.Geometry.Point(lonLat),
1,
30
);
var featurecircle = new OpenLayers.Feature.Vector(mycircle);
var vectorLayer = new OpenLayers.Layer.Vector("Overlay");
// Define markers as "features" of the vector layer:
vectorLayer.addFeatures(featurecircle);
var feature = new OpenLayers.Feature.Vector(
new OpenLayers.Geometry.Point(-0.1244324, 51.5006728 ).transform(epsg4326, projectTo),
{description:'info'} ,
{externalGraphic: 'img/marker.png', graphicHeight: 25, graphicWidth: 21, graphicXOffset:-12, graphicYOffset:-25 }
);
vectorLayer.addFeatures(feature);
map.addLayer(vectorLayer);
</script>
</body>
</html>
Grazie in anticipo per eventuali suggerimenti.
Grazie mille! Funziona! – Lessfoe
@Lessfoe Eccellente. Non dimenticarti di darmi credito alzando il voto e accettando la risposta cliccando sul segno di spunta accanto alla mia risposta. Grazie! – capdragon