@vtx/map 1.1.8 → 1.1.9

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 (63) hide show
  1. package/lib/VtxMap/AMap/AMap.js +3287 -2990
  2. package/lib/VtxMap/AMap/AMap.js.map +1 -0
  3. package/lib/VtxMap/BMap/Map.js +3517 -3146
  4. package/lib/VtxMap/BMap/Map.js.map +1 -0
  5. package/lib/VtxMap/GMap/Map.js +4572 -4021
  6. package/lib/VtxMap/GMap/Map.js.map +1 -0
  7. package/lib/VtxMap/Map.js +77 -63
  8. package/lib/VtxMap/Map.js.map +1 -0
  9. package/lib/VtxMap/MapToolFunction.js +422 -370
  10. package/lib/VtxMap/MapToolFunction.js.map +1 -0
  11. package/lib/VtxMap/OMap/Map.css +2 -2
  12. package/lib/VtxMap/OMap/Map.js +4345 -3782
  13. package/lib/VtxMap/OMap/Map.js.map +1 -0
  14. package/lib/VtxMap/OlMap/Map.css +4 -1
  15. package/lib/VtxMap/OlMap/Map.js +3918 -3596
  16. package/lib/VtxMap/OlMap/Map.js.map +1 -0
  17. package/lib/VtxMap/TMap/TMap.css +0 -1
  18. package/lib/VtxMap/TMap/TMap.js +3475 -3139
  19. package/lib/VtxMap/TMap/TMap.js.map +1 -0
  20. package/lib/VtxMap/index.js +37 -24
  21. package/lib/VtxMap/index.js.map +1 -0
  22. package/lib/VtxMap/mapPlayer.js +353 -308
  23. package/lib/VtxMap/mapPlayer.js.map +1 -0
  24. package/lib/VtxMap/optimizingPointMap.js +245 -205
  25. package/lib/VtxMap/optimizingPointMap.js.map +1 -0
  26. package/lib/VtxMap/style/css.js +16 -0
  27. package/lib/VtxMap/style/css.js.map +1 -0
  28. package/lib/VtxMap/style/index.js +16 -0
  29. package/lib/VtxMap/style/index.js.map +1 -0
  30. package/lib/VtxMap/zoomMap.js +120 -101
  31. package/lib/VtxMap/zoomMap.js.map +1 -0
  32. package/lib/VtxModal/VtxModal.css +62 -0
  33. package/lib/VtxModal/VtxModal.js +223 -213
  34. package/lib/VtxModal/VtxModal.js.map +1 -0
  35. package/lib/VtxModal/VtxModal.less +2 -2
  36. package/lib/VtxModal/VtxModalAntd3.css +62 -0
  37. package/lib/VtxModal/VtxModalAntd3.less +67 -0
  38. package/lib/VtxModal/draggableModal.js +138 -119
  39. package/lib/VtxModal/draggableModal.js.map +1 -0
  40. package/lib/VtxModal/index.js +21 -14
  41. package/lib/VtxModal/index.js.map +1 -0
  42. package/lib/VtxModal/style/css.js +21 -0
  43. package/lib/VtxModal/style/css.js.map +1 -0
  44. package/lib/VtxModal/style/index.js +21 -0
  45. package/lib/VtxModal/style/index.js.map +1 -0
  46. package/lib/VtxSearchMap/VtxSearchMap.css +171 -0
  47. package/lib/VtxSearchMap/VtxSearchMap.js +864 -819
  48. package/lib/VtxSearchMap/VtxSearchMap.js.map +1 -0
  49. package/lib/VtxSearchMap/VtxSearchMapAntd3.css +0 -0
  50. package/lib/VtxSearchMap/VtxSearchMapAntd3.less +1 -0
  51. package/lib/VtxSearchMap/index.js +9 -9
  52. package/lib/VtxSearchMap/index.js.map +1 -0
  53. package/lib/VtxSearchMap/mapping.js +15 -12
  54. package/lib/VtxSearchMap/mapping.js.map +1 -0
  55. package/lib/VtxSearchMap/style/css.js +47 -0
  56. package/lib/VtxSearchMap/style/css.js.map +1 -0
  57. package/lib/VtxSearchMap/style/index.js +47 -0
  58. package/lib/VtxSearchMap/style/index.js.map +1 -0
  59. package/lib/default.js +32 -27
  60. package/lib/default.js.map +1 -0
  61. package/lib/index.js +9 -10
  62. package/lib/index.js.map +1 -0
  63. package/package.json +25 -4
@@ -1,403 +1,455 @@
1
1
  "use strict";
2
2
 
3
3
  Object.defineProperty(exports, "__esModule", {
4
- value: true
4
+ value: true
5
5
  });
6
- exports.graphicManage = graphicManage;
7
6
  exports.RotateIcon = RotateIcon;
7
+ exports.defaultWmtsMapLayers = void 0;
8
+ exports.getDistance = getDistance;
8
9
  exports.getMaxMin = getMaxMin;
9
- exports.getPolygonArea = getPolygonArea;
10
10
  exports.getPixelDistance = getPixelDistance;
11
- exports.getDistance = getDistance;
11
+ exports.getPolygonArea = getPolygonArea;
12
+ exports.graphicManage = graphicManage;
13
+
14
+ function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }
15
+
16
+ function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
17
+
18
+ function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
12
19
 
13
- function _toConsumableArray(arr) { if (Array.isArray(arr)) { for (var i = 0, arr2 = Array(arr.length); i < arr.length; i++) { arr2[i] = arr[i]; } return arr2; } else { return Array.from(arr); } }
20
+ function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); }
21
+
22
+ function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }
23
+
24
+ function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
14
25
 
15
26
  function graphicManage() {
16
- this.allGraphics = {}; //所有图元对象
17
- this.allParam = {}; //所有添加图元的数据
27
+ this.allGraphics = {}; //所有图元对象
28
+
29
+ this.allParam = {}; //所有添加图元的数据
18
30
  }
31
+
19
32
  graphicManage.prototype = {
20
- //存储图元对象
21
- setGraphic: function setGraphic(id, graphic) {
22
- this.allGraphics[id] = graphic;
23
- //链式调用
24
- return this;
25
- },
26
-
27
- //获取图元对象
28
- getGraphic: function getGraphic(id) {
29
- return this.allGraphics[id];
30
- },
31
-
32
- //批量获取图元对象
33
- getMoreGraphic: function getMoreGraphic(ids) {
34
- var _this = this;
35
-
36
- var rg = [];
37
- ids.map(function (item, index) {
38
- rg.push(_this.allGraphics[item]);
39
- });
40
- return rg;
41
- },
42
-
43
- //删除图元时,同时删除id
44
- removeGraphic: function removeGraphic(id) {
45
- delete this.allGraphics[id];
46
- },
47
-
48
- //判断id是否重复
49
- isRepetition: function isRepetition(id) {
50
- return !!this.allGraphics[id];
51
- },
52
-
53
- //设置图元数据
54
- setGraphicParam: function setGraphicParam(id, obj) {
55
- this.allParam[id] = obj;
56
- //链式调用
57
- return this;
58
- },
59
-
60
- //获取单个图元数据
61
- getGraphicParam: function getGraphicParam(id) {
62
- return this.allParam[id];
63
- },
64
- removeGraphicParam: function removeGraphicParam(id) {
65
- delete this.allParam[id];
66
- },
67
-
68
- //批量获取图元数据
69
- getMoreGraphicParam: function getMoreGraphicParam(ids) {
70
- var _this2 = this;
71
-
72
- var ap = [];
73
- ids.map(function (item, index) {
74
- ap.push(_this2.allParam[item]);
75
- });
76
- return ap;
77
- },
78
-
79
- //清空所有缓存数据
80
- clearAll: function clearAll() {
81
- this.allGraphics = {};
82
- this.allParam = {};
83
- }
84
- };
33
+ //存储图元对象
34
+ setGraphic: function setGraphic(id, graphic) {
35
+ this.allGraphics[id] = graphic; //链式调用
36
+
37
+ return this;
38
+ },
39
+ //获取图元对象
40
+ getGraphic: function getGraphic(id) {
41
+ return this.allGraphics[id];
42
+ },
43
+ //批量获取图元对象
44
+ getMoreGraphic: function getMoreGraphic(ids) {
45
+ var _this = this;
46
+
47
+ var rg = [];
48
+ ids.map(function (item, index) {
49
+ rg.push(_this.allGraphics[item]);
50
+ });
51
+ return rg;
52
+ },
53
+ //删除图元时,同时删除id
54
+ removeGraphic: function removeGraphic(id) {
55
+ delete this.allGraphics[id];
56
+ },
57
+ //判断id是否重复
58
+ isRepetition: function isRepetition(id) {
59
+ return !!this.allGraphics[id];
60
+ },
61
+ //设置图元数据
62
+ setGraphicParam: function setGraphicParam(id, obj) {
63
+ this.allParam[id] = obj; //链式调用
64
+
65
+ return this;
66
+ },
67
+ //获取单个图元数据
68
+ getGraphicParam: function getGraphicParam(id) {
69
+ return this.allParam[id];
70
+ },
71
+ removeGraphicParam: function removeGraphicParam(id) {
72
+ delete this.allParam[id];
73
+ },
74
+ //批量获取图元数据
75
+ getMoreGraphicParam: function getMoreGraphicParam(ids) {
76
+ var _this2 = this;
77
+
78
+ var ap = [];
79
+ ids.map(function (item, index) {
80
+ ap.push(_this2.allParam[item]);
81
+ });
82
+ return ap;
83
+ },
84
+ //清空所有缓存数据
85
+ clearAll: function clearAll() {
86
+ this.allGraphics = {};
87
+ this.allParam = {};
88
+ }
89
+ }; //使用canvas 旋转图片,生成base64,达到旋转效果
85
90
 
86
- //使用canvas 旋转图片,生成base64,达到旋转效果
87
91
  function RotateIcon() {
88
- var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
89
-
90
- this.options = options;
91
- this.rImg = new Image();
92
- this.rImg.src = this.options.url || '';
93
- var canvas = document.createElement("canvas");
94
- canvas.width = this.options.width;
95
- canvas.height = this.options.height;
96
- this.context = canvas.getContext("2d");
97
- this.canvas = canvas;
98
- };
92
+ var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
93
+ this.options = options;
94
+ this.rImg = new Image();
95
+ this.rImg.src = this.options.url || '';
96
+ var canvas = document.createElement("canvas");
97
+ canvas.width = this.options.width;
98
+ canvas.height = this.options.height;
99
+ this.context = canvas.getContext("2d");
100
+ this.canvas = canvas;
101
+ }
102
+
103
+ ;
104
+
99
105
  RotateIcon.prototype.setRotation = function () {
100
- var deg = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 0;
101
-
102
- var t = this;
103
- var canvas = t.context,
104
- angle = deg * Math.PI / 180,
105
- centerX = t.options.width / 2,
106
- centerY = t.options.height / 2;
107
- canvas.clearRect(0, 0, t.options.width, t.options.height);
108
- canvas.save();
109
- canvas.translate(centerX, centerY);
110
- canvas.rotate(angle);
111
- canvas.translate(-centerX, -centerY);
112
- canvas.drawImage(t.rImg, -1, -1);
113
- canvas.restore();
114
- return t;
106
+ var deg = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 0;
107
+ var t = this;
108
+ var canvas = t.context,
109
+ angle = deg * Math.PI / 180,
110
+ centerX = t.options.width / 2,
111
+ centerY = t.options.height / 2;
112
+ canvas.clearRect(0, 0, t.options.width, t.options.height);
113
+ canvas.save();
114
+ canvas.translate(centerX, centerY);
115
+ canvas.rotate(angle);
116
+ canvas.translate(-centerX, -centerY);
117
+ canvas.drawImage(t.rImg, -1, -1);
118
+ canvas.restore();
119
+ return t;
115
120
  };
121
+
116
122
  RotateIcon.prototype.getUrl = function () {
117
- return this.canvas.toDataURL('image/png');
123
+ return this.canvas.toDataURL('image/png');
118
124
  };
119
125
 
120
126
  function getMaxMin() {
121
- var path = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];
122
-
123
- //区别点和圆的经纬度数据处理
124
- var lnglatAry = [],
125
- _extent = { xmax: 0, xmin: 0, ymax: 0, ymin: 0 };
126
- var p = path.map(function (item, index) {
127
- var lng = item.lng,
128
- lat = item.lat;
129
- if (lng > _extent.xmax) {
130
- _extent.xmax = lng;
131
- }
132
- if (lng < _extent.xmin || _extent.xmin == 0) {
133
- _extent.xmin = lng;
134
- }
135
- if (lat > _extent.ymax) {
136
- _extent.ymax = lat;
137
- }
138
- if (lat < _extent.ymin || _extent.ymin == 0) {
139
- _extent.ymin = lat;
140
- }
141
- lnglatAry.push({
142
- lngX: lng,
143
- latX: lat
144
- });
145
- return [lng, lat];
127
+ var path = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];
128
+ //区别点和圆的经纬度数据处理
129
+ var lnglatAry = [],
130
+ _extent = {
131
+ xmax: 0,
132
+ xmin: 0,
133
+ ymax: 0,
134
+ ymin: 0
135
+ };
136
+ var p = path.map(function (item, index) {
137
+ var lng = item.lng,
138
+ lat = item.lat;
139
+
140
+ if (lng > _extent.xmax) {
141
+ _extent.xmax = lng;
142
+ }
143
+
144
+ if (lng < _extent.xmin || _extent.xmin == 0) {
145
+ _extent.xmin = lng;
146
+ }
147
+
148
+ if (lat > _extent.ymax) {
149
+ _extent.ymax = lat;
150
+ }
151
+
152
+ if (lat < _extent.ymin || _extent.ymin == 0) {
153
+ _extent.ymin = lat;
154
+ }
155
+
156
+ lnglatAry.push({
157
+ lngX: lng,
158
+ latX: lat
146
159
  });
147
- return { path: p, _extent: _extent };
148
- }
149
- //计算面 面积
160
+ return [lng, lat];
161
+ });
162
+ return {
163
+ path: p,
164
+ _extent: _extent
165
+ };
166
+ } //计算面 面积
167
+
168
+
150
169
  function getPolygonArea(polygon) {
151
- var pts = [].concat(_toConsumableArray(polygon));
170
+ var pts = _toConsumableArray(polygon);
152
171
 
153
- if (pts.length < 3) {
154
- //小于3个顶点,不能构建面
155
- return 0;
156
- }
157
- if (pts[0][0] == pts[pts.length - 1][0] && pts[0][1] == pts[pts.length - 1][1]) {
158
- pts.pop();
172
+ if (pts.length < 3) {
173
+ //小于3个顶点,不能构建面
174
+ return 0;
175
+ }
176
+
177
+ if (pts[0][0] == pts[pts.length - 1][0] && pts[0][1] == pts[pts.length - 1][1]) {
178
+ pts.pop();
179
+ }
180
+
181
+ var totalArea = 0; //初始化总面积
182
+
183
+ var LowX = 0.0;
184
+ var LowY = 0.0;
185
+ var MiddleX = 0.0;
186
+ var MiddleY = 0.0;
187
+ var HighX = 0.0;
188
+ var HighY = 0.0;
189
+ var AM = 0.0;
190
+ var BM = 0.0;
191
+ var CM = 0.0;
192
+ var AL = 0.0;
193
+ var BL = 0.0;
194
+ var CL = 0.0;
195
+ var AH = 0.0;
196
+ var BH = 0.0;
197
+ var CH = 0.0;
198
+ var CoefficientL = 0.0;
199
+ var CoefficientH = 0.0;
200
+ var ALtangent = 0.0;
201
+ var BLtangent = 0.0;
202
+ var CLtangent = 0.0;
203
+ var AHtangent = 0.0;
204
+ var BHtangent = 0.0;
205
+ var CHtangent = 0.0;
206
+ var ANormalLine = 0.0;
207
+ var BNormalLine = 0.0;
208
+ var CNormalLine = 0.0;
209
+ var OrientationValue = 0.0;
210
+ var AngleCos = 0.0;
211
+ var Sum1 = 0.0;
212
+ var Sum2 = 0.0;
213
+ var Count2 = 0;
214
+ var Count1 = 0;
215
+ var Sum = 0.0;
216
+ var Radius = 6399593.0; //6378137.0,WGS84椭球半径 6399593,CGCS2000 椭球半径
217
+
218
+ var Count = pts.length;
219
+
220
+ for (var i = 0; i < Count; i++) {
221
+ if (i == 0) {
222
+ LowX = (pts[Count - 1].lng || pts[Count - 1][0]) * Math.PI / 180;
223
+ LowY = (pts[Count - 1].lat || pts[Count - 1][1]) * Math.PI / 180;
224
+ MiddleX = (pts[0].lng || pts[0][0]) * Math.PI / 180;
225
+ MiddleY = (pts[0].lat || pts[0][1]) * Math.PI / 180;
226
+ HighX = (pts[1].lng || pts[1][0]) * Math.PI / 180;
227
+ HighY = (pts[1].lat || pts[1][1]) * Math.PI / 180;
228
+ } else if (i == Count - 1) {
229
+ LowX = (pts[Count - 2].lng || pts[Count - 2][0]) * Math.PI / 180;
230
+ LowY = (pts[Count - 2].lat || pts[Count - 2][1]) * Math.PI / 180;
231
+ MiddleX = (pts[Count - 1].lng || pts[Count - 1][0]) * Math.PI / 180;
232
+ MiddleY = (pts[Count - 1].lat || pts[Count - 1][1]) * Math.PI / 180;
233
+ HighX = (pts[0].lng || pts[0][0]) * Math.PI / 180;
234
+ HighY = (pts[0].lat || pts[0][1]) * Math.PI / 180;
235
+ } else {
236
+ LowX = (pts[i - 1].lng || pts[i - 1][0]) * Math.PI / 180;
237
+ LowY = (pts[i - 1].lat || pts[i - 1][1]) * Math.PI / 180;
238
+ MiddleX = (pts[i].lng || pts[i][0]) * Math.PI / 180;
239
+ MiddleY = (pts[i].lat || pts[i][1]) * Math.PI / 180;
240
+ HighX = (pts[i + 1].lng || pts[i + 1][0]) * Math.PI / 180;
241
+ HighY = (pts[i + 1].lat || pts[i + 1][1]) * Math.PI / 180;
159
242
  }
160
- var totalArea = 0; //初始化总面积
161
- var LowX = 0.0;
162
- var LowY = 0.0;
163
- var MiddleX = 0.0;
164
- var MiddleY = 0.0;
165
- var HighX = 0.0;
166
- var HighY = 0.0;
167
- var AM = 0.0;
168
- var BM = 0.0;
169
- var CM = 0.0;
170
- var AL = 0.0;
171
- var BL = 0.0;
172
- var CL = 0.0;
173
- var AH = 0.0;
174
- var BH = 0.0;
175
- var CH = 0.0;
176
- var CoefficientL = 0.0;
177
- var CoefficientH = 0.0;
178
- var ALtangent = 0.0;
179
- var BLtangent = 0.0;
180
- var CLtangent = 0.0;
181
- var AHtangent = 0.0;
182
- var BHtangent = 0.0;
183
- var CHtangent = 0.0;
184
- var ANormalLine = 0.0;
185
- var BNormalLine = 0.0;
186
- var CNormalLine = 0.0;
187
- var OrientationValue = 0.0;
188
- var AngleCos = 0.0;
189
- var Sum1 = 0.0;
190
- var Sum2 = 0.0;
191
- var Count2 = 0;
192
- var Count1 = 0;
193
- var Sum = 0.0;
194
- var Radius = 6399593.0; //6378137.0,WGS84椭球半径 6399593,CGCS2000 椭球半径
195
- var Count = pts.length;
196
- for (var i = 0; i < Count; i++) {
197
- if (i == 0) {
198
- LowX = (pts[Count - 1].lng || pts[Count - 1][0]) * Math.PI / 180;
199
- LowY = (pts[Count - 1].lat || pts[Count - 1][1]) * Math.PI / 180;
200
- MiddleX = (pts[0].lng || pts[0][0]) * Math.PI / 180;
201
- MiddleY = (pts[0].lat || pts[0][1]) * Math.PI / 180;
202
- HighX = (pts[1].lng || pts[1][0]) * Math.PI / 180;
203
- HighY = (pts[1].lat || pts[1][1]) * Math.PI / 180;
204
- } else if (i == Count - 1) {
205
- LowX = (pts[Count - 2].lng || pts[Count - 2][0]) * Math.PI / 180;
206
- LowY = (pts[Count - 2].lat || pts[Count - 2][1]) * Math.PI / 180;
207
- MiddleX = (pts[Count - 1].lng || pts[Count - 1][0]) * Math.PI / 180;
208
- MiddleY = (pts[Count - 1].lat || pts[Count - 1][1]) * Math.PI / 180;
209
- HighX = (pts[0].lng || pts[0][0]) * Math.PI / 180;
210
- HighY = (pts[0].lat || pts[0][1]) * Math.PI / 180;
211
- } else {
212
- LowX = (pts[i - 1].lng || pts[i - 1][0]) * Math.PI / 180;
213
- LowY = (pts[i - 1].lat || pts[i - 1][1]) * Math.PI / 180;
214
- MiddleX = (pts[i].lng || pts[i][0]) * Math.PI / 180;
215
- MiddleY = (pts[i].lat || pts[i][1]) * Math.PI / 180;
216
- HighX = (pts[i + 1].lng || pts[i + 1][0]) * Math.PI / 180;
217
- HighY = (pts[i + 1].lat || pts[i + 1][1]) * Math.PI / 180;
218
- }
219
- AM = Math.cos(MiddleY) * Math.cos(MiddleX);
220
- BM = Math.cos(MiddleY) * Math.sin(MiddleX);
221
- CM = Math.sin(MiddleY);
222
- AL = Math.cos(LowY) * Math.cos(LowX);
223
- BL = Math.cos(LowY) * Math.sin(LowX);
224
- CL = Math.sin(LowY);
225
- AH = Math.cos(HighY) * Math.cos(HighX);
226
- BH = Math.cos(HighY) * Math.sin(HighX);
227
- CH = Math.sin(HighY);
228
- CoefficientL = (AM * AM + BM * BM + CM * CM) / (AM * AL + BM * BL + CM * CL);
229
- CoefficientH = (AM * AM + BM * BM + CM * CM) / (AM * AH + BM * BH + CM * CH);
230
- ALtangent = CoefficientL * AL - AM;
231
- BLtangent = CoefficientL * BL - BM;
232
- CLtangent = CoefficientL * CL - CM;
233
- AHtangent = CoefficientH * AH - AM;
234
- BHtangent = CoefficientH * BH - BM;
235
- CHtangent = CoefficientH * CH - CM;
236
- if (!(Math.sqrt(AHtangent * AHtangent + BHtangent * BHtangent + CHtangent * CHtangent) * Math.sqrt(ALtangent * ALtangent + BLtangent * BLtangent + CLtangent * CLtangent))) {
237
- AngleCos = 0;
238
- } else {
239
- AngleCos = (AHtangent * ALtangent + BHtangent * BLtangent + CHtangent * CLtangent) / (Math.sqrt(AHtangent * AHtangent + BHtangent * BHtangent + CHtangent * CHtangent) * Math.sqrt(ALtangent * ALtangent + BLtangent * BLtangent + CLtangent * CLtangent));
240
- AngleCos = Math.acos(AngleCos);
241
- }
242
- ANormalLine = BHtangent * CLtangent - CHtangent * BLtangent;
243
- BNormalLine = 0 - (AHtangent * CLtangent - CHtangent * ALtangent);
244
- CNormalLine = AHtangent * BLtangent - BHtangent * ALtangent;
245
- if (AM != 0) OrientationValue = ANormalLine / AM;else if (BM != 0) OrientationValue = BNormalLine / BM;else OrientationValue = CNormalLine / CM;
246
- if (OrientationValue > 0) {
247
- Sum1 += AngleCos;
248
- Count1++;
249
- } else {
250
- Sum2 += AngleCos;
251
- Count2++;
252
- }
243
+
244
+ AM = Math.cos(MiddleY) * Math.cos(MiddleX);
245
+ BM = Math.cos(MiddleY) * Math.sin(MiddleX);
246
+ CM = Math.sin(MiddleY);
247
+ AL = Math.cos(LowY) * Math.cos(LowX);
248
+ BL = Math.cos(LowY) * Math.sin(LowX);
249
+ CL = Math.sin(LowY);
250
+ AH = Math.cos(HighY) * Math.cos(HighX);
251
+ BH = Math.cos(HighY) * Math.sin(HighX);
252
+ CH = Math.sin(HighY);
253
+ CoefficientL = (AM * AM + BM * BM + CM * CM) / (AM * AL + BM * BL + CM * CL);
254
+ CoefficientH = (AM * AM + BM * BM + CM * CM) / (AM * AH + BM * BH + CM * CH);
255
+ ALtangent = CoefficientL * AL - AM;
256
+ BLtangent = CoefficientL * BL - BM;
257
+ CLtangent = CoefficientL * CL - CM;
258
+ AHtangent = CoefficientH * AH - AM;
259
+ BHtangent = CoefficientH * BH - BM;
260
+ CHtangent = CoefficientH * CH - CM;
261
+
262
+ if (!(Math.sqrt(AHtangent * AHtangent + BHtangent * BHtangent + CHtangent * CHtangent) * Math.sqrt(ALtangent * ALtangent + BLtangent * BLtangent + CLtangent * CLtangent))) {
263
+ AngleCos = 0;
264
+ } else {
265
+ AngleCos = (AHtangent * ALtangent + BHtangent * BLtangent + CHtangent * CLtangent) / (Math.sqrt(AHtangent * AHtangent + BHtangent * BHtangent + CHtangent * CHtangent) * Math.sqrt(ALtangent * ALtangent + BLtangent * BLtangent + CLtangent * CLtangent));
266
+ AngleCos = Math.acos(AngleCos);
253
267
  }
254
- var tempSum1, tempSum2;
255
- tempSum1 = Sum1 + (2 * Math.PI * Count2 - Sum2);
256
- tempSum2 = 2 * Math.PI * Count1 - Sum1 + Sum2;
257
- if (Sum1 > Sum2) {
258
- if (tempSum1 - (Count - 2) * Math.PI < 1) Sum = tempSum1;else Sum = tempSum2;
268
+
269
+ ANormalLine = BHtangent * CLtangent - CHtangent * BLtangent;
270
+ BNormalLine = 0 - (AHtangent * CLtangent - CHtangent * ALtangent);
271
+ CNormalLine = AHtangent * BLtangent - BHtangent * ALtangent;
272
+ if (AM != 0) OrientationValue = ANormalLine / AM;else if (BM != 0) OrientationValue = BNormalLine / BM;else OrientationValue = CNormalLine / CM;
273
+
274
+ if (OrientationValue > 0) {
275
+ Sum1 += AngleCos;
276
+ Count1++;
259
277
  } else {
260
- if (tempSum2 - (Count - 2) * Math.PI < 1) Sum = tempSum2;else Sum = tempSum1;
278
+ Sum2 += AngleCos;
279
+ Count2++;
261
280
  }
262
- totalArea = (Sum - (Count - 2) * Math.PI) * Radius * Radius;
263
- return totalArea; //返回总面积
264
- }
265
- //计算2点间的距离 (单位:px)
281
+ }
282
+
283
+ var tempSum1, tempSum2;
284
+ tempSum1 = Sum1 + (2 * Math.PI * Count2 - Sum2);
285
+ tempSum2 = 2 * Math.PI * Count1 - Sum1 + Sum2;
286
+
287
+ if (Sum1 > Sum2) {
288
+ if (tempSum1 - (Count - 2) * Math.PI < 1) Sum = tempSum1;else Sum = tempSum2;
289
+ } else {
290
+ if (tempSum2 - (Count - 2) * Math.PI < 1) Sum = tempSum2;else Sum = tempSum1;
291
+ }
292
+
293
+ totalArea = (Sum - (Count - 2) * Math.PI) * Radius * Radius;
294
+ return totalArea; //返回总面积
295
+ } //计算2点间的距离 (单位:px)
296
+
297
+
266
298
  function getPixelDistance(lt1, lt2) {
267
- var x = Math.abs(lt1.x - lt2.x);
268
- var y = Math.abs(lt1.y - lt2.y);
269
- var d = Math.sqrt(Math.pow(x, 2) + Math.pow(y, 2));
270
- return d;
271
- }
272
- //计算2点间的距离 (单位m)
299
+ var x = Math.abs(lt1.x - lt2.x);
300
+ var y = Math.abs(lt1.y - lt2.y);
301
+ var d = Math.sqrt(Math.pow(x, 2) + Math.pow(y, 2));
302
+ return d;
303
+ } //计算2点间的距离 (单位m)
304
+
305
+
273
306
  function getDistance(point1, point2, map, wkid) {
274
- var lt1 = map.toScreen(new esri.geometry.Point({
275
- longitude: point1[0],
276
- latitude: point1[1],
277
- spatialReference: { wkid: wkid || 4326 }
278
- }));
279
- var lt2 = map.toScreen(new esri.geometry.Point({
280
- longitude: point2[0],
281
- latitude: point2[1],
282
- spatialReference: { wkid: wkid || 4326 }
283
- }));
284
- var x = Math.abs(lt1.x - lt2.x);
285
- var y = Math.abs(lt1.y - lt2.y);
286
- var d = Math.sqrt(Math.pow(x, 2) + Math.pow(y, 2)) * map.getScale() * 0.025399998 / 96;
287
- return Math.round(d * 100) / 100;
288
- }
289
- //arcgis default server 国家天地图矢量图
307
+ var lt1 = map.toScreen(new esri.geometry.Point({
308
+ longitude: point1[0],
309
+ latitude: point1[1],
310
+ spatialReference: {
311
+ wkid: wkid || 4326
312
+ }
313
+ }));
314
+ var lt2 = map.toScreen(new esri.geometry.Point({
315
+ longitude: point2[0],
316
+ latitude: point2[1],
317
+ spatialReference: {
318
+ wkid: wkid || 4326
319
+ }
320
+ }));
321
+ var x = Math.abs(lt1.x - lt2.x);
322
+ var y = Math.abs(lt1.y - lt2.y);
323
+ var d = Math.sqrt(Math.pow(x, 2) + Math.pow(y, 2)) * map.getScale() * 0.025399998 / 96;
324
+ return Math.round(d * 100) / 100;
325
+ } //arcgis default server 国家天地图矢量图
290
326
  //1个像素是多少米: 1像素=0.0254/96
291
327
  //第三方天地图 0.025399998 arcgis本身0.0254000508001016
292
328
  //resolution = (0.025399998 *scale)/(96*111000)
293
329
  //比例尺 resolution*111000 或 0.025399998/96*scale
294
- var defaultWmtsMapLayers = exports.defaultWmtsMapLayers = {
295
- services: [{
296
- type: 'wmts',
297
- url: ['http://t1.tianditu.com/vec_c/wmts', 'http://t2.tianditu.com/cva_c/wmts'],
298
- tilematrixset: 'c',
299
- format: 'tiles',
300
- layer: ['vec', 'cva']
301
- }, {
302
- type: 'wmts',
303
- url: ['http://srv2.zjditu.cn/ZJEMAP_2D/wmts', 'http://srv2.zjditu.cn/ZJEMAPANNO_2D/wmts'],
304
- tilematrixset: 'default028mm',
305
- format: 'image/jpgpng',
306
- layer: ['TDT_ZJEMAPANNO', 'TDT_ZJEMAPANNO']
307
- }],
308
- origin: { x: -180, y: 90 },
309
- wkid: 4326,
310
- fullExtent: { xmin: -180.0, ymin: -90.0, xmax: 180.0, ymax: 90.0 },
311
- // initialExtent: {xmin : 119.96,ymin : 30.2,xmax : 120.3,ymax : 30.54},
312
- initialExtent: {
313
- xmin: 120.741407641, ymin: 30.7612148640001,
314
- xmax: 121.033872803, ymax: 31.0324190470001
315
- },
316
- defaultType: "2D", //暂时没用到,抄上就行
317
- switchTypeArrays: ["2D", "Satellite"], //暂时没用到,抄上就行
318
- lods: [{
319
- "level": 0,
320
- "resolution": 1.40625,
321
- "scale": 591658721.28
322
- }, {
323
- "level": 1,
324
- "resolution": 0.703125,
325
- "scale": 295829360.64
326
- }, {
327
- "level": 2,
328
- "resolution": 0.3515625,
329
- "scale": 147914680.32
330
- }, {
331
- "level": 3,
332
- "resolution": 0.17578125,
333
- "scale": 73957340.16
334
- }, {
335
- "level": 4,
336
- "resolution": 0.087890625,
337
- "scale": 36978670.08
338
- }, {
339
- "level": 5,
340
- "resolution": 0.0439453125,
341
- "scale": 18489335.04
342
- }, {
343
- "level": 6,
344
- "resolution": 0.02197265625,
345
- "scale": 9244667.52
346
- }, {
347
- "level": 7,
348
- "resolution": 0.010986328125,
349
- "scale": 4622333.76
350
- }, {
351
- "level": 8,
352
- "resolution": 0.0054931640625,
353
- "scale": 2311166.88
354
- }, {
355
- "level": 9,
356
- "resolution": 0.00274658203125,
357
- "scale": 1155583.44
358
- }, {
359
- "level": 10,
360
- "resolution": 0.001373291015625,
361
- "scale": 577791.72
362
- }, {
363
- "level": 11,
364
- "resolution": 0.0006866455078125,
365
- "scale": 288895.86
366
- }, {
367
- "level": 12,
368
- "resolution": 0.00034332275390625,
369
- "scale": 144447.93
370
- }, {
371
- "level": 13,
372
- "resolution": 0.000171661376953125,
373
- "scale": 72223.96
374
- }, {
375
- "level": 14,
376
- "resolution": 0.0000858306884765625,
377
- "scale": 36111.98
378
- }, {
379
- "level": 15,
380
- "resolution": 0.00004291534423828125,
381
- "scale": 18035.742100270663377549137718
382
- }, {
383
- "level": 16,
384
- "resolution": 0.000021457672119140625,
385
- "scale": 9017.871050135331688774568859
386
- }, {
387
- "level": 17,
388
- "resolution": 0.0000107288360595703125,
389
- "scale": 4508.9355250676658443872844296
390
- }, {
391
- "level": 18,
392
- "resolution": 0.000005364418029785156,
393
- "scale": 2254.46776253383
394
- }, {
395
- "level": 19,
396
- "resolution": 0.000002682209014892578,
397
- "scale": 1127.23388126692
398
- }, {
399
- "level": 20,
400
- "resolution": 0.000001341104507446289,
401
- "scale": 563.616940633458
402
- }]
403
- };
330
+
331
+
332
+ var defaultWmtsMapLayers = {
333
+ services: [{
334
+ type: 'wmts',
335
+ url: ['http://t1.tianditu.com/vec_c/wmts', 'http://t2.tianditu.com/cva_c/wmts'],
336
+ tilematrixset: 'c',
337
+ format: 'tiles',
338
+ layer: ['vec', 'cva']
339
+ }, {
340
+ type: 'wmts',
341
+ url: ['http://srv2.zjditu.cn/ZJEMAP_2D/wmts', 'http://srv2.zjditu.cn/ZJEMAPANNO_2D/wmts'],
342
+ tilematrixset: 'default028mm',
343
+ format: 'image/jpgpng',
344
+ layer: ['TDT_ZJEMAPANNO', 'TDT_ZJEMAPANNO']
345
+ }],
346
+ origin: {
347
+ x: -180,
348
+ y: 90
349
+ },
350
+ wkid: 4326,
351
+ fullExtent: {
352
+ xmin: -180.0,
353
+ ymin: -90.0,
354
+ xmax: 180.0,
355
+ ymax: 90.0
356
+ },
357
+ // initialExtent: {xmin : 119.96,ymin : 30.2,xmax : 120.3,ymax : 30.54},
358
+ initialExtent: {
359
+ xmin: 120.741407641,
360
+ ymin: 30.7612148640001,
361
+ xmax: 121.033872803,
362
+ ymax: 31.0324190470001
363
+ },
364
+ defaultType: "2D",
365
+ //暂时没用到,抄上就行
366
+ switchTypeArrays: ["2D", "Satellite"],
367
+ //暂时没用到,抄上就行
368
+ lods: [{
369
+ "level": 0,
370
+ "resolution": 1.40625,
371
+ "scale": 591658721.28
372
+ }, {
373
+ "level": 1,
374
+ "resolution": 0.703125,
375
+ "scale": 295829360.64
376
+ }, {
377
+ "level": 2,
378
+ "resolution": 0.3515625,
379
+ "scale": 147914680.32
380
+ }, {
381
+ "level": 3,
382
+ "resolution": 0.17578125,
383
+ "scale": 73957340.16
384
+ }, {
385
+ "level": 4,
386
+ "resolution": 0.087890625,
387
+ "scale": 36978670.08
388
+ }, {
389
+ "level": 5,
390
+ "resolution": 0.0439453125,
391
+ "scale": 18489335.04
392
+ }, {
393
+ "level": 6,
394
+ "resolution": 0.02197265625,
395
+ "scale": 9244667.52
396
+ }, {
397
+ "level": 7,
398
+ "resolution": 0.010986328125,
399
+ "scale": 4622333.76
400
+ }, {
401
+ "level": 8,
402
+ "resolution": 0.0054931640625,
403
+ "scale": 2311166.88
404
+ }, {
405
+ "level": 9,
406
+ "resolution": 0.00274658203125,
407
+ "scale": 1155583.44
408
+ }, {
409
+ "level": 10,
410
+ "resolution": 0.001373291015625,
411
+ "scale": 577791.72
412
+ }, {
413
+ "level": 11,
414
+ "resolution": 0.0006866455078125,
415
+ "scale": 288895.86
416
+ }, {
417
+ "level": 12,
418
+ "resolution": 0.00034332275390625,
419
+ "scale": 144447.93
420
+ }, {
421
+ "level": 13,
422
+ "resolution": 0.000171661376953125,
423
+ "scale": 72223.96
424
+ }, {
425
+ "level": 14,
426
+ "resolution": 0.0000858306884765625,
427
+ "scale": 36111.98
428
+ }, {
429
+ "level": 15,
430
+ "resolution": 0.00004291534423828125,
431
+ "scale": 18035.742100270663377549137718
432
+ }, {
433
+ "level": 16,
434
+ "resolution": 0.000021457672119140625,
435
+ "scale": 9017.871050135331688774568859
436
+ }, {
437
+ "level": 17,
438
+ "resolution": 0.0000107288360595703125,
439
+ "scale": 4508.9355250676658443872844296
440
+ }, {
441
+ "level": 18,
442
+ "resolution": 0.000005364418029785156,
443
+ "scale": 2254.46776253383
444
+ }, {
445
+ "level": 19,
446
+ "resolution": 0.000002682209014892578,
447
+ "scale": 1127.23388126692
448
+ }, {
449
+ "level": 20,
450
+ "resolution": 0.000001341104507446289,
451
+ "scale": 563.616940633458
452
+ }]
453
+ };
454
+ exports.defaultWmtsMapLayers = defaultWmtsMapLayers;
455
+ //# sourceMappingURL=MapToolFunction.js.map