@geosdi/ngx-leaflet-minimap-plugin

Service to add minimap for Leaflet Map

Usage no npm install needed!

<script type="module">
  import geosdiNgxLeafletMinimapPlugin from 'https://cdn.skypack.dev/@geosdi/ngx-leaflet-minimap-plugin';
</script>

README

NgxLeafletLayers

This library was generated with Angular CLI version 13.0.0.

General information

Service to wrap Leaflet.MiniMap see documentation to https://github.com/Norkart/Leaflet-MiniMap

Installation

npm i @geosdi/ngx-leaflet-minimap-plugin --save

It depends on :

"@angular/common": ">=13.0.0",
"@angular/core": ">=13.0.0",
"typescript": ">=4.4.4",
"leaflet": ">=1.7.1",
"rxjs": "^7.4.0",
"leaflet-minimap": "^3.6.1"

Usage


@Injectable({
 providedIn: 'root'
})
export class BootstrapService {


   constructor(private ngxLeafletPrintPluginService: NgxLeafletPrintPluginService) {
   }

  public initMiniMap() {
     this.ngxLeafletMinimapPluginService
       .withMap(this.map)
       .withLayer(this.ngxLeafletLayersPluginService.createLayer(BaseLayerEnum.OPEN_STREET_MAP))
       .withZoomLevelOffset(-3)
       .withAutoToogleDisplay(false)
       .withToogleDisplay(true)
       .withPosition('bottomright')
       .withHeight(150)
       .withWidth(150)
       .withCollapsedWidth(9)
       .withCollapsedWidth(9)
       .withCenterFixed([lat, lng])
       .withMinimized(true)
       .withStrings(strings: { hideText: 'Hide', showText: 'Show' }
       .withZoomAnimation()
       .withZoomLevelFixed(3)
       .withZoomLevelOffset(3)
       .applyMiniMapPlugin();
   }

}

Methods

Method action
withMap(map: any): NgxLeafletMinimapPluginService the leaflet map
withLayer(layer: any): NgxLeafletMinimapPluginService base layer to display
withToogleDisplay(toogle: boolean): NgxLeafletMinimapPluginService Sets whether the minimap should have a button to minimise it. Defaults to false.
withAutoToogleDisplay(autoToogleDislay: boolean): NgxLeafletMinimapPluginService Sets whether the minimap should hide automatically if the parent map bounds does not fit within the minimap bounds. Especially useful when 'zoomLevelFixed' is set.
withPosition(position: 'topleft' 'topright'
withHeight(height: number): NgxLeafletMinimapPluginService The height of the minimap in pixels. Defaults to 150
withWidth(width: number): NgxLeafletMinimapPluginService The width of the minimap in pixels. Defaults to 150
withCollapseHeight(collapseHeight: number): NgxLeafletMinimapPluginService The width of the toggle marker and the minimap when collapsed, in pixels. Defaults to 19.
withCollapseWidth(collapseWidth: number): NgxLeafletMinimapPluginService The height of the toggle marker and the minimap when collapsed, in pixels. Defaults to 19.
withZoomLevelOffset(zoomLevelOffset: number): NgxLeafletMinimapPluginService The offset applied to the zoom in the minimap compared to the zoom of the main map. Can be positive or negative, defaults to -5.
withZoomLevelFixed(zoomLevelFixed: number): NgxLeafletMinimapPluginService Overrides the offset to apply a fixed zoom level to the minimap regardless of the main map zoom. Set it to any valid zoom level, if unset zoomLevelOffset is used instead.
withCenterFixed(centerFixed: number[]): NgxLeafletMinimapPluginService Applies a fixed position to the minimap regardless of the main map's view / position. Prevents panning the minimap, but does allow zooming (both in the minimap and the main map). If the minimap is zoomed, it will always zoom around the centerFixed point. You can pass in a LatLng-equivalent object. Defaults to false.
withZoomAnimation(zoomAnimation: any): NgxLeafletMinimapPluginService Sets whether the minimap should have an animated zoom. (Will cause it to lag a bit after the movement of the main map.) Defaults to false.
withMimimized(minimized: boolean): NgxLeafletMinimapPluginService Sets whether the minimap should start in a minimized position.
withStrings(strings: {hideText: string, showText: string}): NgxLeafletMinimapPluginService Overrides the default strings allowing for translation.
applyMiniMapPlugin(): void add plugin to map
changeLayer(layer: any): void change base layer to map