Add airports layer

This commit is contained in:
Chandler Swift 2026-03-17 16:36:00 -05:00
parent 5553b815f6
commit 69e777033e
Signed by: chandlerswift
GPG key ID: A851D929D52FB93F
4 changed files with 83 additions and 0 deletions

40
layers/airports/index.js Normal file
View file

@ -0,0 +1,40 @@
import GeoJSON from 'ol/format/GeoJSON.js';
import VectorLayer from 'ol/layer/Vector.js';
import VectorSource from 'ol/source/Vector.js';
import types from './data/types.js';
import { Circle, Fill, Stroke, Style } from 'ol/style.js';
const layers = {
name: "Airports",
layers: [],
};
for (let [name, url] of Object.entries(types)) {
const layer = new VectorLayer({
source: new VectorSource({
url,
format: new GeoJSON,
}),
style: new Style({
image: new Circle({
radius: name == 'large_airport' ? 10 : name == "small_airport" ? 3 : 5,
fill: new Fill({
color: 'rgba(255,255,255,0.4)',
}),
stroke: new Stroke({
color: 'red',
width: name == 'large_airport' ? 4 : 2,
}),
}),
}),
});
layers.layers.push({
name,
layer,
});
}
export default layers;