@mapcatch/util 2.0.4 → 2.0.5-a

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.
Files changed (68) hide show
  1. package/.eslintrc.js +54 -0
  2. package/.husky/pre-commit +1 -0
  3. package/.prettierrc +4 -0
  4. package/.vscode/settings.json +2 -0
  5. package/README.md +44 -0
  6. package/debug/app.js +26 -0
  7. package/debug/index.html +55 -0
  8. package/debug/libs/vue.global.js +16159 -0
  9. package/debug/my_icon.png +0 -0
  10. package/docs/Catolog.md +24 -0
  11. package/docs/Constant.md +92 -0
  12. package/docs/Event.md +90 -0
  13. package/docs/Util.md +345 -0
  14. package/package.json +21 -1
  15. package/src/constants/crs.js +42098 -42098
  16. package/src/constants/default_layers.js +42 -94
  17. package/src/gl-operations/constants.js +9 -9
  18. package/src/gl-operations/default_options.js +97 -97
  19. package/src/gl-operations/index.js +532 -532
  20. package/src/gl-operations/reglCommands/contours.js +27 -27
  21. package/src/gl-operations/reglCommands/default.js +45 -45
  22. package/src/gl-operations/reglCommands/hillshading.js +340 -340
  23. package/src/gl-operations/reglCommands/index.js +6 -6
  24. package/src/gl-operations/reglCommands/multiLayers.js +303 -303
  25. package/src/gl-operations/reglCommands/transitions.js +111 -111
  26. package/src/gl-operations/reglCommands/util.js +71 -71
  27. package/src/gl-operations/renderer.js +209 -209
  28. package/src/gl-operations/shaders/fragment/convertDem.js +25 -25
  29. package/src/gl-operations/shaders/fragment/convolutionSmooth.js +54 -54
  30. package/src/gl-operations/shaders/fragment/diffCalc.js +33 -33
  31. package/src/gl-operations/shaders/fragment/drawResult.js +46 -46
  32. package/src/gl-operations/shaders/fragment/hillshading/hsAdvAmbientShadows.js +78 -78
  33. package/src/gl-operations/shaders/fragment/hillshading/hsAdvDirect.js +59 -59
  34. package/src/gl-operations/shaders/fragment/hillshading/hsAdvFinalBaselayer.js +30 -30
  35. package/src/gl-operations/shaders/fragment/hillshading/hsAdvFinalColorscale.js +60 -60
  36. package/src/gl-operations/shaders/fragment/hillshading/hsAdvMergeAndScaleTiles.js +26 -26
  37. package/src/gl-operations/shaders/fragment/hillshading/hsAdvNormals.js +25 -25
  38. package/src/gl-operations/shaders/fragment/hillshading/hsAdvSmooth.js +53 -53
  39. package/src/gl-operations/shaders/fragment/hillshading/hsAdvSoftShadows.js +80 -80
  40. package/src/gl-operations/shaders/fragment/hillshading/hsPregen.js +54 -54
  41. package/src/gl-operations/shaders/fragment/interpolateColor.js +65 -65
  42. package/src/gl-operations/shaders/fragment/interpolateColorOnly.js +49 -49
  43. package/src/gl-operations/shaders/fragment/interpolateValue.js +136 -136
  44. package/src/gl-operations/shaders/fragment/multiAnalyze1Calc.js +35 -35
  45. package/src/gl-operations/shaders/fragment/multiAnalyze2Calc.js +45 -45
  46. package/src/gl-operations/shaders/fragment/multiAnalyze3Calc.js +53 -53
  47. package/src/gl-operations/shaders/fragment/multiAnalyze4Calc.js +61 -61
  48. package/src/gl-operations/shaders/fragment/multiAnalyze5Calc.js +69 -69
  49. package/src/gl-operations/shaders/fragment/multiAnalyze6Calc.js +77 -77
  50. package/src/gl-operations/shaders/fragment/single.js +93 -93
  51. package/src/gl-operations/shaders/transform.js +21 -21
  52. package/src/gl-operations/shaders/util/computeColor.glsl +85 -85
  53. package/src/gl-operations/shaders/util/getTexelValue.glsl +10 -10
  54. package/src/gl-operations/shaders/util/isCloseEnough.glsl +9 -9
  55. package/src/gl-operations/shaders/util/rgbaToFloat.glsl +17 -17
  56. package/src/gl-operations/shaders/vertex/double.js +16 -16
  57. package/src/gl-operations/shaders/vertex/multi3.js +19 -19
  58. package/src/gl-operations/shaders/vertex/multi4.js +22 -22
  59. package/src/gl-operations/shaders/vertex/multi5.js +25 -25
  60. package/src/gl-operations/shaders/vertex/multi6.js +28 -28
  61. package/src/gl-operations/shaders/vertex/single.js +13 -13
  62. package/src/gl-operations/shaders/vertex/singleNotTransformed.js +11 -11
  63. package/src/gl-operations/texture_manager.js +141 -141
  64. package/src/gl-operations/util.js +336 -336
  65. package/src/util.js +14 -6
  66. package/vite.config.js +58 -0
  67. package/dist/catchUtil.min.esm.js +0 -113044
  68. package/dist/catchUtil.min.js +0 -2928
@@ -7,7 +7,9 @@ export default [
7
7
  opacity: 1,
8
8
  class: 'image2d',
9
9
  metadata: {
10
- folder: 'dom_tiles'
10
+ folder: 'dom_tiles',
11
+ show_annotations: true,
12
+ show_annotation_labels: true
11
13
  }
12
14
  },
13
15
  {
@@ -18,7 +20,11 @@ export default [
18
20
  opacity: 1,
19
21
  class: 'tmp',
20
22
  metadata: {
21
- folder: 'tem_tiles'
23
+ folder: 'tem',
24
+ borderStyle: 'transparent',
25
+ colorType: 'turbo',
26
+ show_annotations: true,
27
+ show_annotation_labels: true
22
28
  }
23
29
  },
24
30
  {
@@ -31,7 +37,9 @@ export default [
31
37
  metadata: {
32
38
  folder: 'dsm_tiles',
33
39
  borderStyle: 'transparent',
34
- colorType: 'turbo'
40
+ colorType: 'turbo',
41
+ show_annotations: true,
42
+ show_annotation_labels: true
35
43
  }
36
44
  },
37
45
  {
@@ -59,143 +67,83 @@ export default [
59
67
  class: 'photos'
60
68
  },
61
69
  {
62
- type: 'bndvi',
63
- name: '植被指数(BNDVI)',
70
+ type: 'ndvi',
71
+ name: 'NDVI',
64
72
  group: 'index',
65
73
  visible: true,
66
74
  opacity: 1,
67
- class: 'bndvi',
75
+ class: 'ndvi',
68
76
  metadata: {
69
- folder: 'bndvi_tiles',
77
+ folder: 'ndvi',
70
78
  borderStyle: 'transparent',
71
79
  colorType: 'red-green',
72
- bands: ['NIR', 'Blue']
80
+ bands: ['NIR', 'Red'],
81
+ show_annotations: true,
82
+ show_annotation_labels: true
73
83
  }
74
84
  },
75
85
  {
76
86
  type: 'gndvi',
77
- name: '植被指数(GNDVI',
87
+ name: 'GNDVI',
78
88
  group: 'index',
79
89
  visible: true,
80
90
  opacity: 1,
81
91
  class: 'gndvi',
82
92
  metadata: {
83
- folder: 'gndvi_tiles',
93
+ folder: 'gndvi',
84
94
  borderStyle: 'transparent',
85
- colorType: 'red-green',
86
- bands: ['NIR', 'Green']
95
+ colorType: 'glow',
96
+ bands: ['NIR', 'Green'],
97
+ show_annotations: true,
98
+ show_annotation_labels: true
87
99
  }
88
100
  },
89
101
  {
90
102
  type: 'lci',
91
- name: '植被指数(LCI',
103
+ name: 'LCI',
92
104
  group: 'index',
93
105
  visible: true,
94
106
  opacity: 1,
95
107
  class: 'lci',
96
108
  metadata: {
97
- folder: 'lci_tiles',
98
- borderStyle: 'transparent',
99
- colorType: 'glow',
100
- bands: ['NIR', 'RedEdge', 'Red']
101
- }
102
- },
103
- {
104
- type: 'mcari',
105
- name: '植被指数(MCARI)',
106
- group: 'index',
107
- visible: true,
108
- opacity: 1,
109
- class: 'mcari',
110
- metadata: {
111
- folder: 'mcari_tiles',
109
+ folder: 'lci',
112
110
  borderStyle: 'transparent',
113
111
  colorType: 'turbo',
114
- bands: ['NIR', 'Red', 'Green']
112
+ bands: ['NIR', 'RedEdge', 'Red'],
113
+ show_annotations: true,
114
+ show_annotation_labels: true
115
115
  }
116
116
  },
117
117
  {
118
118
  type: 'ndre',
119
- name: '植被指数(NDRE',
119
+ name: 'NDRE',
120
120
  group: 'index',
121
121
  visible: true,
122
122
  opacity: 1,
123
123
  class: 'ndre',
124
124
  metadata: {
125
- folder: 'ndre_tiles',
125
+ folder: 'ndre',
126
126
  borderStyle: 'transparent',
127
- colorType: 'red-green',
128
- bands: ['NIR', 'RedEdge']
127
+ colorType: 'gray',
128
+ bands: ['NIR', 'RedEdge'],
129
+ show_annotations: true,
130
+ show_annotation_labels: true
129
131
  }
130
132
  },
131
133
  {
132
- type: 'ndvi',
133
- name: '植被指数(NDVI)',
134
+ type: 'osavi',
135
+ name: 'OSAVI',
134
136
  group: 'index',
135
137
  visible: true,
136
138
  opacity: 1,
137
- class: 'ndvi',
139
+ class: 'osavi',
138
140
  metadata: {
139
- folder: 'ndvi_tiles',
141
+ folder: 'osavi',
140
142
  borderStyle: 'transparent',
141
143
  colorType: 'red-green',
142
- bands: ['NIR', 'Red']
143
- }
144
- },
145
- {
146
- type: 'sipi2',
147
- name: '植被指数(SIPI2)',
148
- group: 'index',
149
- visible: true,
150
- opacity: 1,
151
- class: 'sipi2',
152
- metadata: {
153
- folder: 'sipi2_tiles',
154
- borderStyle: 'transparent',
155
- colorType: 'glow',
156
- bands: ['NIR', 'Green']
157
- }
158
- },
159
- {
160
- type: 'tgi',
161
- name: '植被指数(TGI)',
162
- group: 'index',
163
- visible: true,
164
- opacity: 1,
165
- class: 'tgi',
166
- metadata: {
167
- folder: 'tgi_tiles',
168
- borderStyle: 'transparent',
169
- colorType: 'turbo',
170
- bands: ['Red', 'Green', 'Blue']
171
- }
172
- },
173
- {
174
- type: 'vari',
175
- name: '植被指数(VARI)',
176
- group: 'index',
177
- visible: true,
178
- opacity: 1,
179
- class: 'vari',
180
- metadata: {
181
- folder: 'vari_tiles',
182
- borderStyle: 'transparent',
183
- colorType: 'red-green',
184
- bands: ['Red', 'Green', 'Blue']
185
- }
186
- },
187
- {
188
- type: 'ndmi',
189
- name: '植被指数(NDMI)',
190
- group: 'index',
191
- visible: true,
192
- opacity: 1,
193
- class: 'ndmi',
194
- metadata: {
195
- folder: 'ndmi_tiles',
196
- borderStyle: 'transparent',
197
- colorType: 'glow',
198
- bands: ['NIR', 'SWIR_1613', 'Blue']
144
+ bands: ['NIR', 'Red'],
145
+ show_annotations: true,
146
+ show_annotation_labels: true
199
147
  }
200
148
  }
201
149
  ]
@@ -1,9 +1,9 @@
1
- export const CLEAR_COLOR = [0, 0, 0, 0]
2
- export const MAX_TEXTURE_DIMENSION = 1024
3
- export const EARTH_SUN_DISTANCE = 149600000000
4
- export const EARTH_CIRCUMFERENCE = 40075016.686
5
- export const SUN_RADIUS = 695508000
6
- export const DEG2RAD = 0.017453292519943295
7
- export const SLOPEFACTOR = 0.0333334
8
- export const RGB_REGEX = /^rgb\(\s*(\d+)\s*,\s*(\d+)\s*,\s*(\d+)\s*\)$/
9
- export const HEX_REGEX = /(?:#)[0-9a-f]{8}|(?:#)[0-9a-f]{6}|(?:#)[0-9a-f]{4}|(?:#)[0-9a-f]{3}/ig
1
+ export const CLEAR_COLOR = [0, 0, 0, 0]
2
+ export const MAX_TEXTURE_DIMENSION = 1024
3
+ export const EARTH_SUN_DISTANCE = 149600000000
4
+ export const EARTH_CIRCUMFERENCE = 40075016.686
5
+ export const SUN_RADIUS = 695508000
6
+ export const DEG2RAD = 0.017453292519943295
7
+ export const SLOPEFACTOR = 0.0333334
8
+ export const RGB_REGEX = /^rgb\(\s*(\d+)\s*,\s*(\d+)\s*,\s*(\d+)\s*\)$/
9
+ export const HEX_REGEX = /(?:#)[0-9a-f]{8}|(?:#)[0-9a-f]{6}|(?:#)[0-9a-f]{4}|(?:#)[0-9a-f]{3}/ig
@@ -1,98 +1,98 @@
1
- const defaultOptions = {
2
- tileFormat: 'float32',
3
- tileSize: 256,
4
- colorScale: [],
5
- sentinelValues: [],
6
- transitions: false,
7
- transitionTimeMs: 800,
8
- debug: false,
9
- extraPixelLayers: 0,
10
- colorscaleMaxLength: 16,
11
- sentinelMaxLength: 16,
12
-
13
- // default TileLayer options
14
- minZoom: 0,
15
- maxZoom: 18,
16
- subdomains: 'abc',
17
- errorTileUrl: '',
18
- zoomOffset: 0,
19
- tms: false,
20
- zoomReverse: false,
21
- detectRetina: false,
22
- crossOrigin: false,
23
-
24
- // multi-analyze default options
25
- glOperation: 'none',
26
- multiLayers: 0,
27
- operationUrlA: '',
28
- operationUrlB: '',
29
- operationUrlC: '',
30
- operationUrlD: '',
31
- operationUrlE: '',
32
- operationUrlF: '',
33
- filterLowA: 0,
34
- filterHighA: 100000,
35
- filterLowB: 0,
36
- filterHighB: 100000,
37
- filterLowC: 0,
38
- filterHighC: 100000,
39
- filterLowD: 0,
40
- filterHighD: 100000,
41
- filterLowE: 0,
42
- filterHighE: 100000,
43
- filterLowF: 0,
44
- filterHighF: 100000,
45
- multiplierA: 1,
46
- multiplierB: 1,
47
- multiplierC: 1,
48
- multiplierD: 1,
49
- multiplierE: 1,
50
- multiplierF: 1,
51
-
52
- // Hillshading default options
53
- hillshadeType: 'none', // none, simple or pregen
54
- hsSimpleZoomdelta: 0,
55
- hsSimpleSlopescale: 3.0,
56
- hsSimpleAzimuth: 315,
57
- hsSimpleAltitude: 70,
58
- hsAdvValueScale: 1.0,
59
- hsAdvPixelScale: 'auto',
60
- hsAdvSoftIterations: 10,
61
- hsAdvAmbientIterations: 10,
62
- hsAdvSunRadiusMultiplier: 100,
63
- hsAdvFinalSoftMultiplier: 1.0,
64
- hsAdvFinalAmbientMultiplier: 0.25,
65
- hsAdvBaselayerUrl: '',
66
- hsAdvSmoothInput: false,
67
- hsAdvSmoothInputKernel: 3,
68
- hsPregenUrl: '',
69
- _hillshadeOptions: { hillshadeType: 'none' },
70
-
71
- // Contours default options
72
- contourType: 'none', // none, lines or illuminated
73
- contourSmoothLines: false,
74
- contourSmoothInput: false,
75
- contourSmoothInputKernel: 7,
76
- contourScaleFactor: 1,
77
- contourInterval: 25,
78
- contourIndexInterval: 100,
79
- contourLineColor: '#000000',
80
- contourIlluminatedHighlightColor: 'rgba(177,174,164,.5)',
81
- contourIlluminatedShadowColor: '#5b5143',
82
- contourIlluminatedShadowSize: 2, // px
83
- contourLineWeight: 0.5, // px
84
- contourLineIndexWeight: 2.0, // px
85
- contourIndexLabels: false,
86
- contourLabelFont: '12px Arial',
87
- contourLabelDistance: 250,
88
- contourHypso: false,
89
- contourHypsoDomain: [0, 1000, 2000],
90
- contourHypsoColors: ['#486341', '#e5d9c9', '#dddddd'],
91
- contourBathy: false,
92
- contourBathyDomain: [-2000, 0],
93
- contourBathyColors: ['#315d9b', '#d5f2ff'],
94
- contourBathyShadowColor: '#4e5c66',
95
- contourBathyHighlightColor: 'rgba(224, 242, 255, .5)'
96
- }
97
-
1
+ const defaultOptions = {
2
+ tileFormat: 'float32',
3
+ tileSize: 256,
4
+ colorScale: [],
5
+ sentinelValues: [],
6
+ transitions: false,
7
+ transitionTimeMs: 800,
8
+ debug: false,
9
+ extraPixelLayers: 0,
10
+ colorscaleMaxLength: 16,
11
+ sentinelMaxLength: 16,
12
+
13
+ // default TileLayer options
14
+ minZoom: 0,
15
+ maxZoom: 18,
16
+ subdomains: 'abc',
17
+ errorTileUrl: '',
18
+ zoomOffset: 0,
19
+ tms: false,
20
+ zoomReverse: false,
21
+ detectRetina: false,
22
+ crossOrigin: false,
23
+
24
+ // multi-analyze default options
25
+ glOperation: 'none',
26
+ multiLayers: 0,
27
+ operationUrlA: '',
28
+ operationUrlB: '',
29
+ operationUrlC: '',
30
+ operationUrlD: '',
31
+ operationUrlE: '',
32
+ operationUrlF: '',
33
+ filterLowA: 0,
34
+ filterHighA: 100000,
35
+ filterLowB: 0,
36
+ filterHighB: 100000,
37
+ filterLowC: 0,
38
+ filterHighC: 100000,
39
+ filterLowD: 0,
40
+ filterHighD: 100000,
41
+ filterLowE: 0,
42
+ filterHighE: 100000,
43
+ filterLowF: 0,
44
+ filterHighF: 100000,
45
+ multiplierA: 1,
46
+ multiplierB: 1,
47
+ multiplierC: 1,
48
+ multiplierD: 1,
49
+ multiplierE: 1,
50
+ multiplierF: 1,
51
+
52
+ // Hillshading default options
53
+ hillshadeType: 'none', // none, simple or pregen
54
+ hsSimpleZoomdelta: 0,
55
+ hsSimpleSlopescale: 3.0,
56
+ hsSimpleAzimuth: 315,
57
+ hsSimpleAltitude: 70,
58
+ hsAdvValueScale: 1.0,
59
+ hsAdvPixelScale: 'auto',
60
+ hsAdvSoftIterations: 10,
61
+ hsAdvAmbientIterations: 10,
62
+ hsAdvSunRadiusMultiplier: 100,
63
+ hsAdvFinalSoftMultiplier: 1.0,
64
+ hsAdvFinalAmbientMultiplier: 0.25,
65
+ hsAdvBaselayerUrl: '',
66
+ hsAdvSmoothInput: false,
67
+ hsAdvSmoothInputKernel: 3,
68
+ hsPregenUrl: '',
69
+ _hillshadeOptions: { hillshadeType: 'none' },
70
+
71
+ // Contours default options
72
+ contourType: 'none', // none, lines or illuminated
73
+ contourSmoothLines: false,
74
+ contourSmoothInput: false,
75
+ contourSmoothInputKernel: 7,
76
+ contourScaleFactor: 1,
77
+ contourInterval: 25,
78
+ contourIndexInterval: 100,
79
+ contourLineColor: '#000000',
80
+ contourIlluminatedHighlightColor: 'rgba(177,174,164,.5)',
81
+ contourIlluminatedShadowColor: '#5b5143',
82
+ contourIlluminatedShadowSize: 2, // px
83
+ contourLineWeight: 0.5, // px
84
+ contourLineIndexWeight: 2.0, // px
85
+ contourIndexLabels: false,
86
+ contourLabelFont: '12px Arial',
87
+ contourLabelDistance: 250,
88
+ contourHypso: false,
89
+ contourHypsoDomain: [0, 1000, 2000],
90
+ contourHypsoColors: ['#486341', '#e5d9c9', '#dddddd'],
91
+ contourBathy: false,
92
+ contourBathyDomain: [-2000, 0],
93
+ contourBathyColors: ['#315d9b', '#d5f2ff'],
94
+ contourBathyShadowColor: '#4e5c66',
95
+ contourBathyHighlightColor: 'rgba(224, 242, 255, .5)'
96
+ }
97
+
98
98
  export default defaultOptions