2
원이 있지만 페이지를로드 할 때 항상 나타납니다. 지도를 클릭하면이 원이 나타나기를 원합니다. 원이 같은 위치에 있고 움직이지 않는 곳에서 붙어 있습니다.지도를 클릭하면 표시됩니다. 아무도 도와 줄 수 있습니까? 또는 당신은 여기지도상의 MouseClick 이벤트 및 OpenLayers를 사용하여 원 만들기 2
function updateIcon(f) {
f.style.externalGraphic = "marker.png";
vector.drawFeature(f);
}
options = {
div: "map",
zoom: 2,
center: [0, 0],
layers: [
new OpenLayers.Layer.OSM()
]
};
map = new OpenLayers.Map(options);
vector = new OpenLayers.Layer.Vector();
map.addLayer(vector);
var point1 = new OpenLayers.Geometry.Point(0,0);
var point2 = new OpenLayers.Geometry.Point(1000000, 1000000);
var point3 = new OpenLayers.Geometry.Point(2000000, 2000000);
var radius = $("#amount").val();
var mycircle = OpenLayers.Geometry.Polygon.createRegularPolygon(point2,radius,40,0);
var featurecircle = new OpenLayers.Feature.Vector(mycircle);
// var selected_polygon_style = {
// strokeWidth: 5,
// strokeColor: '#ff0000'
// // add more styling key/value pairs as your need
// };
// featurecircle.style = selected_polygon_style;
marker1 = new OpenLayers.Feature.Vector(point1, null, {
externalGraphic: "marker.png",
graphicWidth: 32,
graphicHeight: 32,
fillOpacity: 1
});
marker1.style = { display: 'none' };
marker2 = new OpenLayers.Feature.Vector(point2, null, {
externalGraphic: "marker.png",
graphicWidth: 32,
graphicHeight: 32,
fillOpacity: 1
});
marker3 = new OpenLayers.Feature.Vector(point3, null, {
externalGraphic: "marker.png",
graphicWidth: 32,
graphicHeight: 32,
fillOpacity: 1
});
vector.addFeatures([marker1, marker2, marker3, featurecircle]);
$("#slider-range-max").slider({
range: "max",
min: 1000000,
max: 3000000,
value: 1000000,
slide: function(event, ui) {
$("#amount").val(ui.value);
radius = $("#amount").val();
vector.removeFeatures([featurecircle]);
var mycircle = OpenLayers.Geometry.Polygon.createRegularPolygon
(
point2,
radius,
40,
0
);
featurecircle = new OpenLayers.Feature.Vector(mycircle);
vector.addFeatures([featurecircle]);
console.log(radius);
}
});
$("#amount").val($("#slider-range-max").slider("value"));
$(radius).val($("#slider-range-max").slider("value"));
<p>
<label for="amount">Minimum number</label>
<input type="text" id="amount" value="1000000" style="border:0; color:#f6931f; font-weight:bold;">
</p>
<div id="slider-range-max"></div>
<div id="map" style="width:600px;height:600px;"></div>
당신은 형제 보호기 삶입니다. 당신을 사랑합니다. 브라우저에서 실행했지만 "Run Code Snippet"에 나타나는 것과 같은 오류가 발생했습니다. 이게 뭐야? 너는 어떤 생각을 가지고 있니? –
@tousifNoor 여기 파일을 사용하고 있습니다. http://pastebin.com/Z47a9WD1 –
고맙습니다. 현재 문제는 서클이 기본적으로 표시된다는 것입니다. 내가지도를 클릭 할 때만 사라지지 않을 수 있습니까? 클릭 후 첫 등장을 말합니까? –