Port icon-symbol-svg rendering tests

This commit is contained in:
Frederic Junod
2018-11-14 14:55:15 +01:00
parent f9a7cf2251
commit 488a104a92
9 changed files with 133 additions and 117 deletions

Binary file not shown.

After

Width:  |  Height:  |  Size: 121 KiB

View File

@@ -0,0 +1,72 @@
import Map from '../../../src/ol/Map.js';
import View from '../../../src/ol/View.js';
import {Vector as VectorLayer, Tile as TileLayer} from '../../../src/ol/layer.js';
import {Vector as VectorSource, XYZ} from '../../../src/ol/source.js';
import Point from '../../../src/ol/geom/Point.js';
import Feature from '../../../src/ol/Feature.js';
import {fromLonLat} from '../../../src/ol/proj.js';
import {Style, Icon} from '../../../src/ol/style.js';
const center = fromLonLat([8, 50]);
const vectorSource = new VectorSource();
let feature;
// scales svg correctly
feature = new Feature({
geometry: new Point(fromLonLat([3, 45]))
});
feature.setStyle(new Style({
image: new Icon({
src: '/data/me0.svg',
scale: 2
})
}));
vectorSource.addFeature(feature);
// uses offset correctly
feature = new Feature({
geometry: new Point(fromLonLat([3, 55]))
});
feature.setStyle(new Style({
image: new Icon({
src: '/data/me0.svg',
offset: [16, 0],
scale: 2
})
}));
vectorSource.addFeature(feature);
// uses offset correctly if it is larger than size
feature = new Feature({
geometry: new Point(fromLonLat([8, 55]))
});
feature.setStyle(new Style({
image: new Icon({
src: '/data/me0.svg',
offsetOrigin: 'bottom-left',
offset: [16, 0],
size: [64, 40]
})
}));
vectorSource.addFeature(feature);
new Map({
layers: [
new TileLayer({
source: new XYZ({
url: '/data/tiles/satellite/{z}/{x}/{y}.jpg'
})
}),
new VectorLayer({
source: vectorSource
})
],
target: 'map',
view: new View({
center: center,
zoom: 3
})
});
render();