Vairāk

Pievienojiet funkciju manuāli vektora slānim ol3


Es mēģinu manuāli pievienot slāni vektora slānim, izmantojot javascript. Šķiet, ka nevaru noteikt, kāpēc tas neizdodas:

http://jsfiddle.net/Kieveli/f4t6n6v1/4/

Esmu izmēģinājis saprātīgas koordinātas, piemēram, 16,22, un lielas, lai tās atbilstu skata xy vērtībām. Es saņemu javascript kļūdu no ol3: TypeError: b.Q nav funkcija.

HTML:

Javascript:

var vectorSource = new ol.source.Vector ({}); var karte = new ol.Map ({slāņi: [jauns ol.layer.Tile ({avots: new ol.source.MapQuest ({layer: 'sat'})}}), jauns ol.layer.Vector ({avots: vectorSource})], target: 'map', view: new ol.View ({centrs: [-11000000, 4600000], zoom: 4})}); var lieta = jauns ol.geom.Polygon ([[[16000000,22000000], [44000000,55000000], [88000000,90000000]]); vectorSource.addFeature (lieta);

Kā teica Gabors Farkas, es avotam pievienoju ģeometriju, nevis iezīmi. Man trūka arī ģeometrijas koordinātu, un es nepārveidoju pareizi. Ārpus šīs vietas es izmantoju lat/long kā x/y, nevis y/x. Atjaunināta vijole:

http://jsfiddle.net/Kieveli/f4t6n6v1/7/

HTML:

JAVASKRIPTS:

var vectorSource = new ol.source.Vector ({}); var karte = new ol.Map ({slāņi: [new ol.layer.Tile ({avots: new ol.source.MapQuest ({layer: 'sat'})}}), jauns ol.layer.Vector ({avots: vectorSource})], target: 'map', view: new ol.View ({centrs: [-11000000, 4600000], zoom: 4})}); var lieta = jauns ol.geom.Polygon ([[[ol.proj.transform ([-16, -22], 'EPSG: 4326', 'EPSG: 3857'), ol.proj.transform ([-44,- 55], 'EPSG: 4326', 'EPSG: 3857'), ol.proj.transform ([-88,75], 'EPSG: 4326', 'EPSG: 3857']]]); var featurething = new ol.Feature ({nosaukums: "Lieta", ģeometrija: lieta}); vectorSource.addFeature (featurething);


Skatīties video: Vektori (Oktobris 2021).