Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/462.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript OpenLayers点几何体从不调整大小_Javascript_Openlayers_Openstreetmap - Fatal编程技术网

Javascript OpenLayers点几何体从不调整大小

Javascript OpenLayers点几何体从不调整大小,javascript,openlayers,openstreetmap,Javascript,Openlayers,Openstreetmap,我的网站包含一个OpenStreetMaps。我使用OpenLayers在城市顶部放置一个几何体点 一个按钮允许用户调整这个点的大小,但它从来没有调整大小,我不明白为什么 这是我的密码: var button = document.myform.btClear, map = new OpenLayers.Map("map_element", {}), osm = new OpenLayers.Layer.OSM(), vectors = new OpenLayers.La

我的网站包含一个OpenStreetMaps。我使用OpenLayers在城市顶部放置一个几何体点

一个按钮允许用户调整这个点的大小,但它从来没有调整大小,我不明白为什么

这是我的密码:

var button = document.myform.btClear,
    map = new OpenLayers.Map("map_element", {}),
    osm = new OpenLayers.Layer.OSM(),
    vectors = new OpenLayers.Layer.Vector(),
    fromProjection = new OpenLayers.Projection("EPSG:4326"),
    toProjection = new OpenLayers.Projection("EPSG:900913"),
    position = new OpenLayers.LonLat(6.9673223,50.9572449).transform(fromProjection, toProjection),
    point =  new OpenLayers.Geometry.Point(6.9673223,50.9572449).transform(fromProjection, toProjection);

map.addLayer(osm);
map.addLayer(vectors);
map.setCenter(position, 5);

pointFeature = new OpenLayers.Feature.Vector(point);
vectors.addFeatures([pointFeature]);

button.onclick = function() {
    vectors.features[0].geometry.resize(1.5, point);
    vectors.redraw();
};
你能帮我弄清楚吗

谢谢


我对OpenLayers没有太多的研究,所以这里的所有东西都要小心。我在看这个例子(),我认为几何体的大小调整与您的预期有所不同。我认为你真正想要改变的是这一点的风格。我已经修改了你的小提琴作为例子,在。它还不完整,因为点击也会改变点的颜色,但我相信它更接近你想要的

这是主要的变化:

radius = 2
button.onclick = function() {
    radius = radius * 1.5
    vectors.features[0].style = {pointRadius: radius}
    vectors.redraw();
};
(另外,在JSFIDLE中,您引用的表单元素不正确,因此无法定义onclick。)


如果有帮助,请告诉我。我也想看看其他答案。

在本例中,请注意点的大小实际上从未改变。