map-ol-utils 0.1.21 → 0.1.22

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.cjs CHANGED
@@ -733,8 +733,9 @@ var import_source2 = require("ol/source");
733
733
  var import_tilegrid = require("ol/tilegrid");
734
734
  var import_layer = require("ol/layer");
735
735
  var import_WMTS = __toESM(require("ol/tilegrid/WMTS"), 1);
736
+ var import_WebGLTile = __toESM(require("ol/layer/WebGLTile"), 1);
736
737
  var createBaseLayer = (layerName = "hzsyvector_dark") => {
737
- return new import_layer.Tile({
738
+ const config = {
738
739
  zIndex: -5,
739
740
  minZoom: 8,
740
741
  maxZoom: 21,
@@ -777,13 +778,19 @@ var createBaseLayer = (layerName = "hzsyvector_dark") => {
777
778
  _isBaseLayer: true,
778
779
  _layerName: layerName
779
780
  }
780
- });
781
+ };
782
+ return isWebGLSupported() ? new import_WebGLTile.default(config) : new import_layer.Tile(config);
781
783
  };
782
784
  var createMapWorldLayer = (layerName, tk = "c77eddc667c5bed016fded560baf93e7") => {
783
785
  const [name, matrixSet] = layerName.split("_");
784
- return new import_layer.Tile({
786
+ const config = {
785
787
  cacheSize: 20240,
786
788
  zIndex: -10,
789
+ preload: 1,
790
+ properties: {
791
+ _isBaseLayer: true,
792
+ _layerName: layerName
793
+ },
787
794
  source: new import_source2.WMTS({
788
795
  crossOrigin: "anonymous",
789
796
  projection: "EPSG:4326",
@@ -840,12 +847,9 @@ var createMapWorldLayer = (layerName, tk = "c77eddc667c5bed016fded560baf93e7") =
840
847
  }),
841
848
  tilePixelRatio: window.devicePixelRatio || 1,
842
849
  url: `https://t{0-7}.tianditu.gov.cn/${layerName}/wmts?tk=${tk}`
843
- }),
844
- properties: {
845
- _isBaseLayer: true,
846
- _layerName: layerName
847
- }
848
- });
850
+ })
851
+ };
852
+ return isWebGLSupported() ? new import_WebGLTile.default(config) : new import_layer.Tile(config);
849
853
  };
850
854
  var getLayerByName = (name) => instance.getAllLayers().find((item) => (item.get("_layerName") || item.getClassName()) === name);
851
855
  var removeLayerByName = (name) => {
@@ -1019,6 +1023,10 @@ var determineGeometryType = (coordinates) => {
1019
1023
  return "Invalid" /* Invalid */;
1020
1024
  }
1021
1025
  };
1026
+ var isWebGLSupported = () => {
1027
+ const canvas = document.createElement("canvas");
1028
+ return !!canvas.getContext("webgl") || !!canvas.getContext("experimental-webgl");
1029
+ };
1022
1030
 
1023
1031
  // src/ogc-utils.ts
1024
1032
  var import_source3 = require("ol/source");
package/dist/index.d.cts CHANGED
@@ -9,6 +9,7 @@ import { FeatureLike } from 'ol/Feature';
9
9
  import { Emitter, EventType } from 'mitt';
10
10
  import TileLayer from 'ol/layer/Tile';
11
11
  import * as ol_renderer_Layer from 'ol/renderer/Layer';
12
+ import WebGLTileLayer from 'ol/layer/WebGLTile';
12
13
  import * as ol_geom from 'ol/geom';
13
14
  import { SimpleGeometry, Point } from 'ol/geom';
14
15
  import { Options } from 'ol/Overlay';
@@ -126,13 +127,13 @@ declare const createWmtsLayer: (serverUrl: string) => (config: WmtsSourceOptions
126
127
  * 创建杭州规自地图
127
128
  * @param layerName - hzsyraster hzsyvector hzsyvector_dark
128
129
  */
129
- declare const createBaseLayer: (layerName?: HzsyType) => Tile<XYZ>;
130
+ declare const createBaseLayer: (layerName?: HzsyType) => WebGLTileLayer | Tile<XYZ>;
130
131
  /**
131
132
  * 创建天地图
132
133
  * @param layerName - 图层名称
133
134
  * @param tk - 天地图TK
134
135
  */
135
- declare const createMapWorldLayer: (layerName: string, tk?: string) => Tile<WMTS>;
136
+ declare const createMapWorldLayer: (layerName: string, tk?: string) => WebGLTileLayer | Tile<WMTS>;
136
137
  /**
137
138
  * 根据图层名称获取图层
138
139
  * @param name
package/dist/index.d.ts CHANGED
@@ -9,6 +9,7 @@ import { FeatureLike } from 'ol/Feature';
9
9
  import { Emitter, EventType } from 'mitt';
10
10
  import TileLayer from 'ol/layer/Tile';
11
11
  import * as ol_renderer_Layer from 'ol/renderer/Layer';
12
+ import WebGLTileLayer from 'ol/layer/WebGLTile';
12
13
  import * as ol_geom from 'ol/geom';
13
14
  import { SimpleGeometry, Point } from 'ol/geom';
14
15
  import { Options } from 'ol/Overlay';
@@ -126,13 +127,13 @@ declare const createWmtsLayer: (serverUrl: string) => (config: WmtsSourceOptions
126
127
  * 创建杭州规自地图
127
128
  * @param layerName - hzsyraster hzsyvector hzsyvector_dark
128
129
  */
129
- declare const createBaseLayer: (layerName?: HzsyType) => Tile<XYZ>;
130
+ declare const createBaseLayer: (layerName?: HzsyType) => WebGLTileLayer | Tile<XYZ>;
130
131
  /**
131
132
  * 创建天地图
132
133
  * @param layerName - 图层名称
133
134
  * @param tk - 天地图TK
134
135
  */
135
- declare const createMapWorldLayer: (layerName: string, tk?: string) => Tile<WMTS>;
136
+ declare const createMapWorldLayer: (layerName: string, tk?: string) => WebGLTileLayer | Tile<WMTS>;
136
137
  /**
137
138
  * 根据图层名称获取图层
138
139
  * @param name
package/dist/index.js CHANGED
@@ -672,8 +672,9 @@ import { WMTS } from "ol/source";
672
672
  import { TileGrid } from "ol/tilegrid";
673
673
  import { Tile } from "ol/layer";
674
674
  import WMTSTileGrid from "ol/tilegrid/WMTS";
675
+ import WebGLTileLayer from "ol/layer/WebGLTile";
675
676
  var createBaseLayer = (layerName = "hzsyvector_dark") => {
676
- return new Tile({
677
+ const config = {
677
678
  zIndex: -5,
678
679
  minZoom: 8,
679
680
  maxZoom: 21,
@@ -716,13 +717,19 @@ var createBaseLayer = (layerName = "hzsyvector_dark") => {
716
717
  _isBaseLayer: true,
717
718
  _layerName: layerName
718
719
  }
719
- });
720
+ };
721
+ return isWebGLSupported() ? new WebGLTileLayer(config) : new Tile(config);
720
722
  };
721
723
  var createMapWorldLayer = (layerName, tk = "c77eddc667c5bed016fded560baf93e7") => {
722
724
  const [name, matrixSet] = layerName.split("_");
723
- return new Tile({
725
+ const config = {
724
726
  cacheSize: 20240,
725
727
  zIndex: -10,
728
+ preload: 1,
729
+ properties: {
730
+ _isBaseLayer: true,
731
+ _layerName: layerName
732
+ },
726
733
  source: new WMTS({
727
734
  crossOrigin: "anonymous",
728
735
  projection: "EPSG:4326",
@@ -779,12 +786,9 @@ var createMapWorldLayer = (layerName, tk = "c77eddc667c5bed016fded560baf93e7") =
779
786
  }),
780
787
  tilePixelRatio: window.devicePixelRatio || 1,
781
788
  url: `https://t{0-7}.tianditu.gov.cn/${layerName}/wmts?tk=${tk}`
782
- }),
783
- properties: {
784
- _isBaseLayer: true,
785
- _layerName: layerName
786
- }
787
- });
789
+ })
790
+ };
791
+ return isWebGLSupported() ? new WebGLTileLayer(config) : new Tile(config);
788
792
  };
789
793
  var getLayerByName = (name) => instance.getAllLayers().find((item) => (item.get("_layerName") || item.getClassName()) === name);
790
794
  var removeLayerByName = (name) => {
@@ -958,6 +962,10 @@ var determineGeometryType = (coordinates) => {
958
962
  return "Invalid" /* Invalid */;
959
963
  }
960
964
  };
965
+ var isWebGLSupported = () => {
966
+ const canvas = document.createElement("canvas");
967
+ return !!canvas.getContext("webgl") || !!canvas.getContext("experimental-webgl");
968
+ };
961
969
 
962
970
  // src/ogc-utils.ts
963
971
  import { WMTS as WMTS2 } from "ol/source";
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "map-ol-utils",
3
- "version": "0.1.21",
3
+ "version": "0.1.22",
4
4
  "type": "module",
5
5
  "description": "Openlayers utils library",
6
6
  "files": [