From 5c6722b6cb4d6c947468877822df06c4f41ac77b Mon Sep 17 00:00:00 2001 From: Glenn Vorhes <gavorhes@wisc.edu> Date: Wed, 7 Dec 2016 13:04:10 -0600 Subject: [PATCH] fix fit to map --- dist/olHelpers/extentUtil.d.ts | 11 ++++++----- dist/olHelpers/extentUtil.js | 13 +++---------- dist/olHelpers/extentUtil.js.map | 2 +- src/olHelpers/extentUtil.ts | 20 ++++++-------------- 4 files changed, 16 insertions(+), 30 deletions(-) diff --git a/dist/olHelpers/extentUtil.d.ts b/dist/olHelpers/extentUtil.d.ts index 95a6c97..c4ca136 100644 --- a/dist/olHelpers/extentUtil.d.ts +++ b/dist/olHelpers/extentUtil.d.ts @@ -1,14 +1,15 @@ import ol from 'custom-ol'; +import { LayerBaseVector } from "../layers/LayerBaseVector"; /** * * @param {Array<LayerBaseVector>|Array<ol.layer.Vector>|LayerBaseVector|ol.layer.Vector|*} layers - array of layers or single * @returns {ol.Extent|Array<number>|*} - collective extent */ -export declare function calculateExtent(layers: any): ol.Extent | Array<number> | ol.Extent | number[]; +export declare function calculateExtent(layers: ol.layer.Vector[] | LayerBaseVector[]): ol.Extent | Array<number> | ol.Extent | number[]; /** * given one or an array of layers, fit to the map - * @param {Array<LayerBaseVector>|Array<ol.layer.Vector>|LayerBaseVector|ol.layer.Vector} layers - array of layers or single - * @param {ol.Map} mp - the map to fit - * @param {number|undefined} [zoomOut=undefined] - levels to zoom out after fit + * @param layers - array of layers or single + * @param mp - the map to fit + * @param [zoomOut=undefined] - levels to zoom out after fit */ -export declare function fitToMap(layers: any, mp: ol.Map, zoomOut?: number): void; +export declare function fitToMap(layers: ol.layer.Vector[] | LayerBaseVector[], mp: ol.Map, zoomOut?: number): void; diff --git a/dist/olHelpers/extentUtil.js b/dist/olHelpers/extentUtil.js index 319d756..e2e126d 100644 --- a/dist/olHelpers/extentUtil.js +++ b/dist/olHelpers/extentUtil.js @@ -11,9 +11,6 @@ var nm = provide_1.default('util'); */ function calculateExtent(layers) { "use strict"; - if (layers.constructor.name != 'Array') { - layers = [layers]; - } var hasExtent = false; var minX = 10E100; var minY = 10E100; @@ -46,16 +43,12 @@ exports.calculateExtent = calculateExtent; nm.calculateExtent = calculateExtent; /** * given one or an array of layers, fit to the map - * @param {Array<LayerBaseVector>|Array<ol.layer.Vector>|LayerBaseVector|ol.layer.Vector} layers - array of layers or single - * @param {ol.Map} mp - the map to fit - * @param {number|undefined} [zoomOut=undefined] - levels to zoom out after fit + * @param layers - array of layers or single + * @param mp - the map to fit + * @param [zoomOut=undefined] - levels to zoom out after fit */ function fitToMap(layers, mp, zoomOut) { "use strict"; - /** - * - * @type {ol.Extent|undefined} - */ var ext = calculateExtent(layers); if (typeof ext == 'undefined') { return; diff --git a/dist/olHelpers/extentUtil.js.map b/dist/olHelpers/extentUtil.js.map index a78aa1e..e039138 100644 --- a/dist/olHelpers/extentUtil.js.map +++ b/dist/olHelpers/extentUtil.js.map @@ -1 +1 @@ -{"version":3,"file":"extentUtil.js","sourceRoot":"","sources":["../../src/olHelpers/extentUtil.ts"],"names":[],"mappings":";AAAA;;GAEG;AACH,wBAAoB,iBAAiB,CAAC,CAAA;AAItC,IAAM,EAAE,GAAG,iBAAO,CAAC,MAAM,CAAC,CAAC;AAE3B;;;;GAIG;AACH,yBAAgC,MAAM;IAClC,YAAY,CAAC;IAEb,EAAE,CAAC,CAAC,MAAM,CAAC,WAAW,CAAC,IAAI,IAAI,OAAO,CAAC,CAAA,CAAC;QACpC,MAAM,GAAG,CAAC,MAAM,CAAC,CAAC;IACtB,CAAC;IAED,IAAI,SAAS,GAAG,KAAK,CAAC;IAEtB,IAAI,IAAI,GAAG,MAAM,CAAC;IAClB,IAAI,IAAI,GAAG,MAAM,CAAC;IAClB,IAAI,IAAI,GAAG,CAAC,MAAM,CAAC;IACnB,IAAI,IAAI,GAAG,CAAC,MAAM,CAAC;IAEnB,GAAG,CAAC,CAAY,UAAM,EAAN,iBAAM,EAAN,oBAAM,EAAN,IAAM,CAAC;QAAlB,IAAI,GAAG,eAAA;QAER;;;WAGG;QACH,IAAI,OAAO,GAAG,GAAG,CAAC,SAAS,CAAC,IAAI,GAAG,CAAC;QAGpC,EAAE,CAAC,CAAC,OAAO,CAAC,SAAS,EAAE,CAAC,WAAW,EAAE,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC;YAC/C,SAAS,GAAG,IAAI,CAAC;YACjB,IAAI,GAAG,GAAG,OAAO,CAAC,SAAS,EAAE,CAAC,SAAS,EAAE,CAAC;YAC1C,IAAI,GAAG,GAAG,CAAC,CAAC,CAAC,GAAG,IAAI,GAAG,GAAG,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC;YACrC,IAAI,GAAG,GAAG,CAAC,CAAC,CAAC,GAAG,IAAI,GAAG,GAAG,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC;YACrC,IAAI,GAAG,GAAG,CAAC,CAAC,CAAC,GAAG,IAAI,GAAG,GAAG,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC;YACrC,IAAI,GAAG,GAAG,CAAC,CAAC,CAAC,GAAG,IAAI,GAAG,GAAG,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC;QACzC,CAAC;KACJ;IAED,EAAE,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC;QACZ,MAAM,CAAC,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;IACpC,CAAC;IAAC,IAAI,CAAC,CAAC;QACJ,MAAM,CAAC,SAAS,CAAC;IACrB,CAAC;AACL,CAAC;AAtCe,uBAAe,kBAsC9B,CAAA;AAED,EAAE,CAAC,eAAe,GAAG,eAAe,CAAC;AAGrC;;;;;GAKG;AACH,kBAAyB,MAAM,EAAE,EAAU,EAAE,OAAgB;IACzD,YAAY,CAAC;IAEb;;;OAGG;IACH,IAAI,GAAG,GAAG,eAAe,CAAC,MAAM,CAAC,CAAC;IAElC,EAAE,CAAC,CAAC,OAAO,GAAG,IAAI,WAAW,CAAC,CAAA,CAAC;QAC3B,MAAM,CAAC;IACX,CAAC;IAED,EAAE,CAAC,OAAO,EAAE,CAAC,GAAG,CAAC,GAAgB,EAAE,EAAE,CAAC,OAAO,EAAE,CAAC,CAAC;IAEjD,EAAE,CAAC,CAAC,OAAO,OAAO,IAAI,QAAQ,CAAC,CAAA,CAAC;QAC5B,EAAE,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,OAAO,EAAE,GAAG,OAAO,CAAC,CAAC;IAC3D,CAAC;AAEL,CAAC;AAnBe,gBAAQ,WAmBvB,CAAA;AAED,EAAE,CAAC,eAAe,GAAG,eAAe,CAAC"} \ No newline at end of file +{"version":3,"file":"extentUtil.js","sourceRoot":"","sources":["../../src/olHelpers/extentUtil.ts"],"names":[],"mappings":";AAAA;;GAEG;AACH,wBAAoB,iBAAiB,CAAC,CAAA;AAKtC,IAAM,EAAE,GAAG,iBAAO,CAAC,MAAM,CAAC,CAAC;AAE3B;;;;GAIG;AACH,yBAAgC,MAA2C;IACvE,YAAY,CAAC;IAEb,IAAI,SAAS,GAAG,KAAK,CAAC;IAEtB,IAAI,IAAI,GAAG,MAAM,CAAC;IAClB,IAAI,IAAI,GAAG,MAAM,CAAC;IAClB,IAAI,IAAI,GAAG,CAAC,MAAM,CAAC;IACnB,IAAI,IAAI,GAAG,CAAC,MAAM,CAAC;IAEnB,GAAG,CAAC,CAAY,UAAM,EAAN,iBAAM,EAAN,oBAAM,EAAN,IAAM,CAAC;QAAlB,IAAI,GAAG,eAAA;QAER;;;WAGG;QACH,IAAI,OAAO,GAAG,GAAG,CAAC,SAAS,CAAC,IAAI,GAAG,CAAC;QAGpC,EAAE,CAAC,CAAC,OAAO,CAAC,SAAS,EAAE,CAAC,WAAW,EAAE,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC;YAC/C,SAAS,GAAG,IAAI,CAAC;YACjB,IAAI,GAAG,GAAG,OAAO,CAAC,SAAS,EAAE,CAAC,SAAS,EAAE,CAAC;YAC1C,IAAI,GAAG,GAAG,CAAC,CAAC,CAAC,GAAG,IAAI,GAAG,GAAG,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC;YACrC,IAAI,GAAG,GAAG,CAAC,CAAC,CAAC,GAAG,IAAI,GAAG,GAAG,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC;YACrC,IAAI,GAAG,GAAG,CAAC,CAAC,CAAC,GAAG,IAAI,GAAG,GAAG,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC;YACrC,IAAI,GAAG,GAAG,CAAC,CAAC,CAAC,GAAG,IAAI,GAAG,GAAG,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC;QACzC,CAAC;KACJ;IAED,EAAE,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC;QACZ,MAAM,CAAC,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;IACpC,CAAC;IAAC,IAAI,CAAC,CAAC;QACJ,MAAM,CAAC,SAAS,CAAC;IACrB,CAAC;AACL,CAAC;AAlCe,uBAAe,kBAkC9B,CAAA;AAED,EAAE,CAAC,eAAe,GAAG,eAAe,CAAC;AAGrC;;;;;GAKG;AACH,kBAAyB,MAA2C,EAAE,EAAU,EAAE,OAAgB;IAC9F,YAAY,CAAC;IAEb,IAAI,GAAG,GAAG,eAAe,CAAC,MAAM,CAAC,CAAC;IAElC,EAAE,CAAC,CAAC,OAAO,GAAG,IAAI,WAAW,CAAC,CAAA,CAAC;QAC3B,MAAM,CAAC;IACX,CAAC;IAED,EAAE,CAAC,OAAO,EAAE,CAAC,GAAG,CAAC,GAAgB,EAAE,EAAE,CAAC,OAAO,EAAE,CAAC,CAAC;IAEjD,EAAE,CAAC,CAAC,OAAO,OAAO,IAAI,QAAQ,CAAC,CAAA,CAAC;QAC5B,EAAE,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,OAAO,EAAE,GAAG,OAAO,CAAC,CAAC;IAC3D,CAAC;AACL,CAAC;AAde,gBAAQ,WAcvB,CAAA;AAED,EAAE,CAAC,eAAe,GAAG,eAAe,CAAC"} \ No newline at end of file diff --git a/src/olHelpers/extentUtil.ts b/src/olHelpers/extentUtil.ts index 30e01a8..3e83fb1 100644 --- a/src/olHelpers/extentUtil.ts +++ b/src/olHelpers/extentUtil.ts @@ -3,6 +3,7 @@ */ import provide from '../util/provide'; import ol from 'custom-ol'; +import {LayerBaseVector} from "../layers/LayerBaseVector"; const nm = provide('util'); @@ -12,13 +13,9 @@ const nm = provide('util'); * @param {Array<LayerBaseVector>|Array<ol.layer.Vector>|LayerBaseVector|ol.layer.Vector|*} layers - array of layers or single * @returns {ol.Extent|Array<number>|*} - collective extent */ -export function calculateExtent(layers): ol.Extent|Array<number>| ol.Extent| number[] { +export function calculateExtent(layers: ol.layer.Vector[]|LayerBaseVector[]): ol.Extent|Array<number>| ol.Extent| number[] { "use strict"; - if (layers.constructor.name != 'Array'){ - layers = [layers]; - } - let hasExtent = false; let minX = 10E100; @@ -57,17 +54,13 @@ nm.calculateExtent = calculateExtent; /** * given one or an array of layers, fit to the map - * @param {Array<LayerBaseVector>|Array<ol.layer.Vector>|LayerBaseVector|ol.layer.Vector} layers - array of layers or single - * @param {ol.Map} mp - the map to fit - * @param {number|undefined} [zoomOut=undefined] - levels to zoom out after fit + * @param layers - array of layers or single + * @param mp - the map to fit + * @param [zoomOut=undefined] - levels to zoom out after fit */ -export function fitToMap(layers, mp: ol.Map, zoomOut?: number){ +export function fitToMap(layers: ol.layer.Vector[]|LayerBaseVector[], mp: ol.Map, zoomOut?: number){ "use strict"; - /** - * - * @type {ol.Extent|undefined} - */ let ext = calculateExtent(layers); if (typeof ext == 'undefined'){ @@ -79,7 +72,6 @@ export function fitToMap(layers, mp: ol.Map, zoomOut?: number){ if (typeof zoomOut == 'number'){ mp.getView().setZoom(mp.getView().getZoom() - zoomOut); } - } nm.calculateExtent = calculateExtent; -- GitLab