1

ベクターに機能を追加できないのはなぜですか? このコードは機能していません:

var features = [new OpenLayers.Feature.Vector(new OpenLayers.Geometry.Point(-70.702451, 42.374473), {className: "latarnia"})]

vectors = new OpenLayers.Layer.Vector("warstwa", {
strategies: [new OpenLayers.Strategy.Fixed()],
 protocol: new OpenLayers.Protocol.HTTP({
format: new OpenLayers.Format.OSM()
 }),
 features : features,
projection: new OpenLayers.Projection("EPSG:4326")});   

map.addLayers([vectors]);

ベクトルには機能がまったくないということです。私は試した

layer.addFeatures([feature]);

しかし、それも失敗します。

4

2 に答える 2

1

マップとポイントの投影が同じではないようです。map peojection は EPSG:4326 ですが、ポイント プロジェクションは EPSG:3857 のようです。

それはあなたを助けるかもしれません

conv_latlon = new OpenLayers.LonLat(-70.702451, 42.374473).transform('EPSG:3857', 'EPSG:4326')//transform point 
var features = [new OpenLayers.Feature.Vector(new OpenLayers.Geometry.Point(conv_latlon.lon, conv_latlon.lat), {className: "latarnia"})]
于 2014-07-15T13:43:02.793 に答える