setZoomLevel method

MapViewPosition setZoomLevel(
  1. int zoomLevel
)

Implementation

MapViewPosition setZoomLevel(int zoomLevel) {
  if (zoomLevel > displayModel.maxZoomLevel)
    zoomLevel = displayModel.maxZoomLevel;
  if (zoomLevel < 0) zoomLevel = 0;
  if (_mapViewPosition != null) {
    if (_mapViewPosition!.zoomLevel == zoomLevel &&
        _mapViewPosition!.scale == 1) return _mapViewPosition!;
    MapViewPosition newPosition =
        MapViewPosition.zoom(_mapViewPosition!, zoomLevel);
    _mapViewPosition = newPosition;
    _injectPosition.add(newPosition);
    return newPosition;
  } else {
    MapViewPosition newPosition = MapViewPosition(
        null,
        null,
        zoomLevel,
        displayModel.DEFAULT_INDOOR_LEVEL,
        displayModel.tileSize,
        displayModel.DEFAULT_ROTATION);
    _mapViewPosition = newPosition;
    _injectPosition.add(newPosition);
    return newPosition;
  }
}