@ino-cesium/layers 0.0.13 → 0.0.15

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.d.ts CHANGED
@@ -1,5 +1,4 @@
1
- import * as cesium from 'cesium';
2
- import { Viewer, Cesium3DTileset, Cartesian3, CesiumTerrainProvider, I3SDataProvider } from 'cesium';
1
+ import * as Cesium from 'cesium';
3
2
 
4
3
  /**
5
4
  *
@@ -8,13 +7,18 @@ import { Viewer, Cesium3DTileset, Cartesian3, CesiumTerrainProvider, I3SDataProv
8
7
  * @param viewer
9
8
  * @param token
10
9
  */
11
- declare const loadTianDiTu: (viewer: Viewer, token: string) => {
12
- layers: cesium.ImageryLayer[];
10
+ declare const loadTianDiTu: (option: ILoadTiandituOptions) => {
11
+ layers: Cesium.ImageryLayer[];
13
12
  remove: () => void;
14
13
  };
14
+ interface ILoadTiandituOptions {
15
+ viewer: Cesium.Viewer;
16
+ token: string;
17
+ zIndex?: number;
18
+ }
15
19
 
16
20
  declare const load3dTiles: (lOptions: ILoad3dtilesOptions) => Promise<{
17
- tileset: Cesium3DTileset;
21
+ tileset: Cesium.Cesium3DTileset;
18
22
  setHeightOffset: (heightOffset: number) => void;
19
23
  remove: () => void;
20
24
  flyTo: () => void;
@@ -24,35 +28,42 @@ declare const load3dTiles: (lOptions: ILoad3dtilesOptions) => Promise<{
24
28
  * @param tileset
25
29
  * @param heightOffset
26
30
  */
27
- declare const setHeightOffsetFor3dTiles: (tileset: Cesium3DTileset, heightOffset: number) => void;
28
- declare const getAllFeaturesFrom3dTiles: (tileset: Cesium3DTileset) => Promise<unknown>;
29
- declare const getAllTilesFrom3dTiles: (tileset: Cesium3DTileset) => Promise<unknown>;
31
+ declare const setHeightOffsetFor3dTiles: (tileset: Cesium.Cesium3DTileset, heightOffset: number) => void;
32
+ declare const getAllFeaturesFrom3dTiles: (tileset: Cesium.Cesium3DTileset) => Promise<unknown>;
33
+ declare const getAllTilesFrom3dTiles: (tileset: Cesium.Cesium3DTileset) => Promise<unknown>;
30
34
  interface ILoad3dtilesOptions {
31
- viewer: Viewer;
35
+ viewer: Cesium.Viewer;
32
36
  url: string;
33
- options: Cesium3DTileset.ConstructorOptions;
37
+ options: Cesium.Cesium3DTileset.ConstructorOptions;
34
38
  }
35
39
  /**
36
40
  * 3dTiles的坐标变换
37
41
  * 平移、缩放、旋转
38
42
  */
39
43
  declare const TransformsFor3dtiles: {
40
- translate: (tileset: Cesium3DTileset, translate: Cartesian3) => void;
41
- scale: (tileset: Cesium3DTileset, scale: Cartesian3) => void;
42
- rotate: (tileset: Cesium3DTileset, rotate: Cartesian3) => void;
44
+ translate: (tileset: Cesium.Cesium3DTileset, translate: Cesium.Cartesian3) => void;
45
+ scale: (tileset: Cesium.Cesium3DTileset, scale: Cesium.Cartesian3) => void;
46
+ rotate: (tileset: Cesium.Cesium3DTileset, rotate: Cesium.Cartesian3) => void;
43
47
  };
44
48
 
45
49
  /**
46
50
  * 加载地形
47
51
  * @param url 地形地址
48
52
  */
49
- declare const loadTerrain: (url: string) => Promise<CesiumTerrainProvider>;
53
+ declare const loadTerrain: (options: ILoadTerrainOptions) => Promise<{
54
+ terrainProvider: Cesium.CesiumTerrainProvider;
55
+ remove: () => void;
56
+ }>;
50
57
  /**
51
58
  * 移除地形
52
59
  * @param viewer
53
60
  */
54
- declare const removeTerrain: (viewer: Viewer) => void;
55
- declare const loadTerrainFromCesium: () => Promise<CesiumTerrainProvider>;
61
+ declare const removeTerrain: (viewer: Cesium.Viewer) => void;
62
+ declare const loadTerrainFromCesium: () => Promise<Cesium.CesiumTerrainProvider>;
63
+ interface ILoadTerrainOptions {
64
+ viewer: Cesium.Viewer;
65
+ url: string;
66
+ }
56
67
 
57
68
  declare const loadModel: () => void;
58
69
 
@@ -63,15 +74,16 @@ declare const loadModel: () => void;
63
74
  declare const loads3m: () => void;
64
75
 
65
76
  declare const loadI3s: (lOptions: ILoadI3sOptions) => Promise<{
66
- i3sData: I3SDataProvider;
77
+ i3sData: Cesium.I3SDataProvider;
67
78
  setHeightOffset: (heightOffset: number) => void;
68
79
  remove: () => void;
69
80
  flyTo: () => void;
70
81
  }>;
71
82
  interface ILoadI3sOptions {
72
- viewer: Viewer;
83
+ viewer: Cesium.Viewer;
73
84
  url: string;
74
- options: I3SDataProvider.ConstructorOptions;
85
+ options: Cesium.I3SDataProvider.ConstructorOptions;
75
86
  }
76
87
 
77
88
  export { TransformsFor3dtiles, getAllFeaturesFrom3dTiles, getAllTilesFrom3dTiles, load3dTiles, loadI3s, loadModel, loadTerrain, loadTerrainFromCesium, loadTianDiTu, loads3m, removeTerrain, setHeightOffsetFor3dTiles };
89
+ export type { ILoadTerrainOptions, ILoadTiandituOptions };
package/dist/index.js CHANGED
@@ -1 +1 @@
1
- import{WebMapTileServiceImageryProvider as e,Cesium3DTileset as t,Cartesian3 as r,Transforms as o,Matrix4 as i,Matrix3 as a,Math as n,CesiumTerrainProvider as s,EllipsoidTerrainProvider as l,I3SDataProvider as m}from"cesium";const c=(t,r)=>{const o=t.imageryLayers.addImageryProvider(new e({url:`//t{s}.tianditu.gov.cn/img_w/wmts?tk=${r}`,layer:"img",style:"default",tileMatrixSetID:"w",format:"tiles",maximumLevel:18,subdomains:["0","1","2","3","4","5","6","7"]})),i=t.imageryLayers.addImageryProvider(new e({url:`//t{s}.tianditu.gov.cn/cia_w/wmts?tk=${r}`,layer:"cia",style:"default",tileMatrixSetID:"w",format:"tiles",maximumLevel:18,subdomains:["0","1","2","3","4","5","6","7"]}));return{layers:[o,i],remove:()=>{t.imageryLayers.remove(o),t.imageryLayers.remove(i)}}},u={cacheBytes:4294967296,maximumCacheOverflowBytes:5368709120},d=async e=>{const{viewer:r,url:o,options:i}=e,a=await t.fromUrl(o,{...u,...i});r.scene.primitives.add(a);return{tileset:a,setHeightOffset:e=>{f(a,e)},remove:()=>{r.scene.primitives.remove(a)},flyTo:()=>{r.flyTo(a)}}},f=(e,t)=>{p(e,r.fromElements(0,0,t,new r))},y=async e=>{const t=[];function r(e){if(console.log(e),!e.content||!e.content.featuresLength)return;const o=e.content;for(let e=0;e<o.featuresLength;e++)t.push(o.getFeature(e));e.children?.forEach(r)}return new Promise(o=>{e.allTilesLoaded.addEventListener(()=>{r(e.root),o(t)})})},w=e=>{const t=[];function r(e){t.push(e),e.children?.forEach(r)}return new Promise(o=>{e.allTilesLoaded.addEventListener(()=>{r(e.root),o(t)})})},p=(e,t)=>{if(t.equals(r.ZERO))return;const a=e.boundingSphere.center,n=o.eastNorthUpToFixedFrame(a),s=i.multiplyByPoint(n,t,new r),l=r.subtract(s,a,new r),m=i.fromTranslation(l);e.modelMatrix=i.multiply(m,e.modelMatrix,new i)},v={translate:p,scale:(e,t)=>{if(t.equals(r.ZERO)||t.equals(r.ONE))return;const a=e.boundingSphere.center,n=o.eastNorthUpToFixedFrame(a),s=i.inverse(n,new i),l=i.fromScale(t),m=i.multiply(l,s,new i),c=i.multiply(n,m,new i);e.modelMatrix=i.multiply(c,e.modelMatrix,new i)},rotate:(e,t)=>{const{x:r,y:s,z:l}=t,m=e.boundingSphere.center,c=o.eastNorthUpToFixedFrame(m),u=i.inverse(c,new i),d=i.clone(i.IDENTITY);if(0!==r){const e=i.fromRotation(a.fromRotationX(n.toRadians(r)));i.multiply(e,d,d)}if(0!==s){const e=i.fromRotation(a.fromRotationY(n.toRadians(s)));i.multiply(e,d,d)}if(0!==l){const e=i.fromRotation(a.fromRotationZ(n.toRadians(l)));i.multiply(e,d,d)}const f=i.multiply(d,u,new i),y=i.multiply(c,f,new i);e.modelMatrix=i.multiply(y,e.modelMatrix,new i)}},h=async e=>await s.fromUrl(e,{requestWaterMask:!0,requestVertexNormals:!0}),g=e=>{e.terrainProvider=new l},x=async()=>await s.fromIonAssetId(1,{requestWaterMask:!0,requestVertexNormals:!0}),L=()=>{},R=()=>{},T=async e=>{const{viewer:t,url:r,options:o}=e,i=await m.fromUrl(r,o);t.scene.primitives.add(i);return{i3sData:i,setHeightOffset:e=>{i.layers.forEach(t=>{const r=t.tileset;r&&f(r,e)})},remove:()=>{t.scene.primitives.remove(i)},flyTo:()=>{t.camera.flyTo({destination:i.extent,orientation:{heading:0,pitch:n.toRadians(-90),roll:0}})}}};export{v as TransformsFor3dtiles,y as getAllFeaturesFrom3dTiles,w as getAllTilesFrom3dTiles,d as load3dTiles,T as loadI3s,L as loadModel,h as loadTerrain,x as loadTerrainFromCesium,c as loadTianDiTu,R as loads3m,g as removeTerrain,f as setHeightOffsetFor3dTiles};
1
+ import*as e from"cesium";const r=r=>{const{viewer:t,token:i}=r,a=t.imageryLayers.addImageryProvider(new e.WebMapTileServiceImageryProvider({url:`//t{s}.tianditu.gov.cn/img_w/wmts?tk=${i}`,layer:"img",style:"default",tileMatrixSetID:"w",format:"tiles",maximumLevel:18,subdomains:["0","1","2","3","4","5","6","7"]})),n=t.imageryLayers.addImageryProvider(new e.WebMapTileServiceImageryProvider({url:`//t{s}.tianditu.gov.cn/cia_w/wmts?tk=${i}`,layer:"cia",style:"default",tileMatrixSetID:"w",format:"tiles",maximumLevel:18,subdomains:["0","1","2","3","4","5","6","7"]}));return{layers:[a,n],remove:()=>{t.imageryLayers.remove(a),t.imageryLayers.remove(n)}}},t={cacheBytes:4294967296,maximumCacheOverflowBytes:5368709120},i=async r=>{const{viewer:i,url:n,options:o}=r,s=await e.Cesium3DTileset.fromUrl(n,{...t,...o});i.scene.primitives.add(s);return{tileset:s,setHeightOffset:e=>{a(s,e)},remove:()=>{i.scene.primitives.remove(s)},flyTo:()=>{i.flyTo(s)}}},a=(r,t)=>{s(r,e.Cartesian3.fromElements(0,0,t,new e.Cartesian3))},n=async e=>{const r=[];function t(e){if(console.log(e),!e.content||!e.content.featuresLength)return;const i=e.content;for(let e=0;e<i.featuresLength;e++)r.push(i.getFeature(e));e.children?.forEach(t)}return new Promise(i=>{e.allTilesLoaded.addEventListener(()=>{t(e.root),i(r)})})},o=e=>{const r=[];function t(e){r.push(e),e.children?.forEach(t)}return new Promise(i=>{e.allTilesLoaded.addEventListener(()=>{t(e.root),i(r)})})},s=(r,t)=>{if(t.equals(e.Cartesian3.ZERO))return;const i=r.boundingSphere.center,a=e.Transforms.eastNorthUpToFixedFrame(i),n=e.Matrix4.multiplyByPoint(a,t,new e.Cartesian3),o=e.Cartesian3.subtract(n,i,new e.Cartesian3),s=e.Matrix4.fromTranslation(o);r.modelMatrix=e.Matrix4.multiply(s,r.modelMatrix,new e.Matrix4)},l={translate:s,scale:(r,t)=>{if(t.equals(e.Cartesian3.ZERO)||t.equals(e.Cartesian3.ONE))return;const i=r.boundingSphere.center,a=e.Transforms.eastNorthUpToFixedFrame(i),n=e.Matrix4.inverse(a,new e.Matrix4),o=e.Matrix4.fromScale(t),s=e.Matrix4.multiply(o,n,new e.Matrix4),l=e.Matrix4.multiply(a,s,new e.Matrix4);r.modelMatrix=e.Matrix4.multiply(l,r.modelMatrix,new e.Matrix4)},rotate:(r,t)=>{const{x:i,y:a,z:n}=t,o=r.boundingSphere.center,s=e.Transforms.eastNorthUpToFixedFrame(o),l=e.Matrix4.inverse(s,new e.Matrix4),m=e.Matrix4.clone(e.Matrix4.IDENTITY);if(0!==i){const r=e.Matrix4.fromRotation(e.Matrix3.fromRotationX(e.Math.toRadians(i)));e.Matrix4.multiply(r,m,m)}if(0!==a){const r=e.Matrix4.fromRotation(e.Matrix3.fromRotationY(e.Math.toRadians(a)));e.Matrix4.multiply(r,m,m)}if(0!==n){const r=e.Matrix4.fromRotation(e.Matrix3.fromRotationZ(e.Math.toRadians(n)));e.Matrix4.multiply(r,m,m)}const c=e.Matrix4.multiply(m,l,new e.Matrix4),d=e.Matrix4.multiply(s,c,new e.Matrix4);r.modelMatrix=e.Matrix4.multiply(d,r.modelMatrix,new e.Matrix4)}},m=async r=>{const{viewer:t,url:i}=r,a=await e.CesiumTerrainProvider.fromUrl(i,{requestWaterMask:!0,requestVertexNormals:!0});t.scene.terrainProvider=a;return{terrainProvider:a,remove:()=>{t.scene.terrainProvider=new e.EllipsoidTerrainProvider}}},c=r=>{r.scene.terrainProvider=new e.EllipsoidTerrainProvider},d=async()=>await e.CesiumTerrainProvider.fromIonAssetId(1,{requestWaterMask:!0,requestVertexNormals:!0}),u=()=>{},x=()=>{},M=async r=>{const{viewer:t,url:i,options:n}=r,o=await e.I3SDataProvider.fromUrl(i,n);t.scene.primitives.add(o);return{i3sData:o,setHeightOffset:e=>{o.layers.forEach(r=>{const t=r.tileset;t&&a(t,e)})},remove:()=>{t.scene.primitives.remove(o)},flyTo:()=>{t.camera.flyTo({destination:o.extent,orientation:{heading:0,pitch:e.Math.toRadians(-90),roll:0}})}}};export{l as TransformsFor3dtiles,n as getAllFeaturesFrom3dTiles,o as getAllTilesFrom3dTiles,i as load3dTiles,M as loadI3s,u as loadModel,m as loadTerrain,d as loadTerrainFromCesium,r as loadTianDiTu,x as loads3m,c as removeTerrain,a as setHeightOffsetFor3dTiles};
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@ino-cesium/layers",
3
3
  "type": "module",
4
- "version": "0.0.13",
4
+ "version": "0.0.15",
5
5
  "author": "koino",
6
6
  "keywords": [
7
7
  "cesium",
@@ -9,7 +9,7 @@
9
9
  "ino-cesium-layer"
10
10
  ],
11
11
  "exports": {
12
- ".": "./dist/index.js"
12
+ ".": "./src/index.ts"
13
13
  },
14
14
  "typesVersions": {
15
15
  "*": {
@@ -31,10 +31,9 @@
31
31
  "cesium": "*"
32
32
  },
33
33
  "dependencies": {
34
- "@ino-cesium/common": "0.0.13"
34
+ "@ino-cesium/common": "0.0.15"
35
35
  },
36
36
  "devDependencies": {},
37
- "types": "./dist/index.d.ts",
38
37
  "scripts": {
39
38
  "build": "rimraf dist && rollup -c",
40
39
  "clean": "rimraf dist",