For examples see demo maps
- "@dlr-eoc/map-maplibre"
- "@dlr-eoc/layer-control" (optional)
- "@dlr-eoc/base-layers-raster" (optional)
e.g. in your apps style file
// styles.scss/styles.css
@import 'maplibre-gl/dist/maplibre-gl.css';
...
or in the angular config file
// angular.json
...
"styles": [
...
"node_modules/maplibre-gl/dist/maplibre-gl.css",
"src/styles.scss"
],
...
import { MapMaplibreModule } from '@dlr-eoc/map-maplibre';
import { LayerControlModule } from '@dlr-eoc/layer-control';
...
imports: [
...
MapMaplibreModule,
LayerControlModule
]
<section class="content-area map-view">
<ukis-map-maplibre [mapState]="mapStateSvc" [layersSvc]="layerSvc"></ukis-map-maplibre>
</section>
import { LayersService } from '@dlr-eoc/services-layers';
import { MapStateService } from '@dlr-eoc/services-map-state';
import { MapMaplibreService } from '@dlr-eoc/map-maplibre';
import { OsmTileLayer, EocLitemap, BlueMarbleTile } from '@dlr-eoc/base-layers-raster';
constructor(
public layerSvc: LayersService,
public mapStateSvc: MapStateService,
public mapSvc: MapMaplibreService) { }
// add a OnInit Function
export class <MyComponent> implements OnInit...
ngOnInit() {
this.addBaselayers();
}
addBaselayers() {
const layers = [
new OsmTileLayer({
visible: false
}),
new EocLitemap({
visible: true
}),
new BlueMarbleTile({
visible: false
})
];
layers.map(l => this.layerSvc.addLayer(l, 'Baselayers'));
}
-
There are currently no popups implemented for layers
-
Some properties of Layers or Layergroups are currently not used. E.g.
-
Layer.continuousWorld
: this is not available in maplibre -
Layer.minResolution
: this is not available in maplibre use minZoom -
Layer.maxResolution
: this is not available in maplibre use maxZoom -
Layer.bbox
: Works only with some sources see https://maplibre.org/maplibre-style-spec/sources/#sources - bounds -
Layer.events
: TODO: https://maplibre.org/maplibre-gl-js/docs/API/classes/maplibregl.StyleLayer/ on/of -
Layer.crossOrigin
: this is not available in maplibre
===
This library was generated with Angular CLI version 14.2.0.
Run ng generate component component-name --project map-maplibre
to generate a new component. You can also use ng generate directive|pipe|service|class|guard|interface|enum|module --project map-maplibre
.
Note: Don't forget to add
--project map-maplibre
or else it will be added to the default project in yourangular.json
file.
Run ng build map-maplibre
to build the project. The build artifacts will be stored in the dist/
directory.
After building your library with ng build map-maplibre
, go to the dist folder cd dist/map-maplibre
and run npm publish
.
Run ng test map-maplibre
to execute the unit tests via Karma.
To get more help on the Angular CLI use ng help
or go check out the Angular CLI Overview and Command Reference page.