@vtx/cs-map 1.0.12 → 1.0.13
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/lib/feature-layer/FeatureLayer.js +19 -2
- package/lib/feature-layer/FeatureLayer.js.map +1 -1
- package/lib/feature-layer/index.js.map +1 -1
- package/lib/heatmap-layer/heatmap.js +612 -0
- package/lib/heatmap-layer/heatmap.js.map +1 -0
- package/lib/heatmap-layer/index.js +41 -8
- package/lib/heatmap-layer/index.js.map +1 -1
- package/lib/image-layer/ImageLayer.js.map +1 -1
- package/lib/image-layer/index.js.map +1 -1
- package/lib/legend/index.js +84 -60
- package/lib/legend/index.js.map +1 -1
- package/lib/map/Layers.js +4 -4
- package/lib/map/Layers.js.map +1 -1
- package/lib/map/index.js +3 -1
- package/lib/map/index.js.map +1 -1
- package/lib/tools/layer/index.js +25 -6
- package/lib/tools/layer/index.js.map +1 -1
- package/package.json +1 -1
- package/lib/heatmap-layer/CesiumHeatmap.js +0 -345
- package/lib/heatmap-layer/CesiumHeatmap.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["_react","_interopRequireWildcard","require","_antd","_toolsItem","_interopRequireDefault","_useProps2","_classnames","_Icon","_renderer","obj","__esModule","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","_typeof","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","_slicedToArray","arr","i","_arrayWithHoles","_iterableToArrayLimit","_unsupportedIterableToArray","_nonIterableRest","TypeError","o","minLen","_arrayLikeToArray","n","toString","slice","constructor","name","Array","from","test","len","length","arr2","r","l","t","Symbol","iterator","e","u","a","f","next","done","push","value","isArray","getIcon","icon","getImage","type","color","exports","getImgUrl","v","legend","style","getTreeDataByLayers","data","treeData","map","_v$layers","_v$filters","item","title","imgUrl","createElement","src","alt","className","classname","layers","children","group","_default","props","_useProps","useProps","_props$showAll","showAll","treeClassName","_useState","useState","_useState2","setTreeData","_useState3","_useState4","checkedKeys","setCheckedKeys","itemRef","useRef","useEffect","layersChange","getLayersShowKeys","on","un","onCheck","setLayersShowByKeys","content","Tree","showIcon","checkable","selectable","defaultExpandAll","rootClassName","component","width","height","fill","viewBox","d"],"sources":["tools/layer/index.js"],"sourcesContent":["import React, { useEffect, useState, useRef } from 'react';\nimport { Tree } from 'antd';\nimport ItemWrap from '../tools-item';\nimport useProps from '../../_util/useProps';\nimport classname from 'classnames';\nimport Icon from '@ant-design/icons/lib/components/Icon';\nimport {getImage} from \"../../renderer\";\n\nexport const getIcon = icon => {\n return getImage({icon, type: 'Icon', color: '#FFF'});\n};\n\nexport const getImgUrl = v => {\n if (v.legend) {\n if (typeof v.legend === 'string') {\n return getIcon(v.legend);\n }\n\n return v.legend;\n }\n\n if (typeof v.style === 'string') {\n return getIcon(v.style);\n }\n};\n\nexport const getTreeDataByLayers = data => {\n let treeData = [];\n data.map(v => {\n let item = {\n key: v.key,\n title: v.name,\n };\n\n let imgUrl = getImgUrl(v);\n if (imgUrl) {\n item.icon = <img src={imgUrl} alt=\"\" className={classname('cs-tools-layer-tree-legend')} />;\n }\n\n if (v.layers?.length) {\n item.children = getTreeDataByLayers(v.layers);\n } else if (v.group?.length) {\n item.children = getTreeDataByLayers(v.group)\n }\n treeData.push(item);\n });\n\n return treeData;\n};\n\nexport default function(props) {\n const { map } = useProps();\n\n const { showAll = true, treeClassName } = props;\n const [treeData, setTreeData] = useState([]);\n const [checkedKeys, setCheckedKeys] = useState([]);\n\n const itemRef = useRef();\n\n useEffect(() => {\n const layersChange = layers => {\n setCheckedKeys(map.getLayersShowKeys());\n setTreeData(getTreeDataByLayers(layers));\n };\n\n map.layers.on('change', layersChange);\n\n return () => {\n map.layers.un('change', layersChange);\n };\n }, []);\n\n const onCheck = (checkedKeys) => {\n map.setLayersShowByKeys(checkedKeys)\n }\n const content = () =>\n treeData?.length > 0 && (\n <Tree\n showIcon\n checkable\n selectable={false}\n defaultExpandAll={true}\n treeData={showAll ? [{ title: '全部', key: 'ALL', children: treeData }] : treeData}\n checkedKeys={checkedKeys}\n onCheck={onCheck}\n rootClassName={classname('cs-tools-layer-tree', treeClassName)}\n />\n );\n\n return (\n <ItemWrap content={props.content || content}>\n <Icon\n component={() => (\n <svg width=\"1em\" height=\"1em\" fill=\"currentColor\" viewBox=\"0 0 1024 1024\">\n <path d=\"M76.885358 279.114423l435.001777 219.929638L946.729127 278.922679 511.887135 66.566904 76.789486 279.018551z m61.070261 341.718631L46.334249 575.23009a73.917067 73.917067 0 0 1 0-136.649103L137.955619 393.073895l-91.62137-45.698835a75.067527 75.067527 0 0 1-38.029101-98.620003 56.915822 56.915822 0 0 1 30.487195-30.359366L473.762163 5.752301a105.45885 105.45885 0 0 1 68.708039 0l435.001777 212.64339a66.72669 66.72669 0 0 1 30.487195 98.651961 58.066282 58.066282 0 0 1-30.487195 30.359365L885.818651 393.073895l83.823807 37.901272a73.086179 73.086179 0 0 1 53.592271 75.994286 78.998266 78.998266 0 0 1-53.592271 75.866458l-83.951635 37.837357 83.951635 37.965186a73.086179 73.086179 0 0 1 53.592271 75.898414 79.253924 79.253924 0 0 1-53.592271 75.962329l-419.566436 204.941699a57.523009 57.523009 0 0 1-38.156929 7.60582 68.196723 68.196723 0 0 1-38.188887-7.637777L38.760386 802.989249a66.72669 66.72669 0 0 1-38.156929-68.452381 73.086179 73.086179 0 0 1 45.730792-68.22868z m83.951636 45.475134l-145.117769 68.22868 435.033735 220.217253L946.729127 742.174646l-144.926026-68.196723-251.822951 121.437463a56.947779 56.947779 0 0 1-38.124972 7.637778 68.196723 68.196723 0 0 1-38.188886-7.637778l-251.854908-129.20307z m579.95976-227.695244l-251.790993 121.437464a105.45885 105.45885 0 0 1-68.708039 0l-259.556599-121.437464-144.926026 68.100851 435.001777 220.313125L946.729127 506.905539l-145.021898-68.196723z\" />\n </svg>\n )}\n />\n </ItemWrap>\n );\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","names":["_react","_interopRequireWildcard","require","_antd","_toolsItem","_interopRequireDefault","_useProps2","_classnames","_Icon","_renderer","_lodash","obj","__esModule","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","_typeof","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","_slicedToArray","arr","i","_arrayWithHoles","_iterableToArrayLimit","_unsupportedIterableToArray","_nonIterableRest","TypeError","o","minLen","_arrayLikeToArray","n","toString","slice","constructor","name","Array","from","test","len","length","arr2","r","l","t","Symbol","iterator","e","u","a","f","next","done","push","value","isArray","getIcon","icon","getImage","type","color","exports","getImgUrl","v","legend","isString","isObject","style","_v$style","getTreeDataByLayers","data","treeData","map","_v$layers","_v$group","item","title","imgUrl","createElement","src","alt","className","classname","layers","children","group","_default","props","_useProps","useProps","_props$showAll","showAll","treeClassName","_useState","useState","_useState2","setTreeData","_useState3","_useState4","checkedKeys","setCheckedKeys","itemRef","useRef","useEffect","layersChange","getLayersShowKeys","on","un","onCheck","setLayersShowByKeys","content","Tree","showIcon","checkable","selectable","defaultExpandAll","rootClassName","component","width","height","fill","viewBox","d"],"sources":["tools/layer/index.js"],"sourcesContent":["import React, { useEffect, useState, useRef } from 'react';\nimport { Tree } from 'antd';\nimport ItemWrap from '../tools-item';\nimport useProps from '../../_util/useProps';\nimport classname from 'classnames';\nimport Icon from '@ant-design/icons/lib/components/Icon';\nimport {getImage} from \"../../renderer\";\nimport {isString, isObject} from \"lodash\";\n\nexport const getIcon = icon => {\n return getImage({icon, type: 'Icon', color: '#FFF'});\n};\n\nexport const getImgUrl = v => {\n if (v.legend) {\n if (isString(v.legend)) {\n return getIcon(v.legend);\n } else if (isObject(v.legend)) {\n\n }\n\n return v.legend;\n }\n\n if (v.style) {\n if (isString(v.style)) {\n return getIcon(v.style);\n } else if (isObject(v.style)) {\n let {type, style} = v.style;\n if (type === 'Marker') {\n if (isString(style)) {\n return getIcon(style);\n } else if (isObject(style)) {\n let {icon} = style;\n return getIcon(icon);\n }\n } else if (type === 'Polyline') {\n return getIcon('GD_CSK');\n } else if (type === 'Polygon') {\n return getIcon('AREA');\n }\n }\n }\n};\n\nexport const getTreeDataByLayers = data => {\n let treeData = [];\n data.map(v => {\n let item = {\n key: v.key,\n title: v.name,\n };\n\n let imgUrl = getImgUrl(v);\n if (imgUrl) {\n item.icon = <img src={imgUrl} alt=\"\" className={classname('cs-tools-layer-tree-legend')} />;\n }\n\n if (v.layers?.length) {\n item.children = getTreeDataByLayers(v.layers);\n } else if (v.group?.length) {\n item.children = getTreeDataByLayers(v.group)\n }\n treeData.push(item);\n });\n\n return treeData;\n};\n\nexport default function(props) {\n const { map } = useProps();\n\n const { showAll = true, treeClassName } = props;\n const [treeData, setTreeData] = useState([]);\n const [checkedKeys, setCheckedKeys] = useState([]);\n\n const itemRef = useRef();\n\n useEffect(() => {\n const layersChange = layers => {\n setCheckedKeys(map.getLayersShowKeys());\n setTreeData(getTreeDataByLayers(layers));\n };\n\n map.layers.on('change', layersChange);\n\n return () => {\n map.layers.un('change', layersChange);\n };\n }, []);\n\n const onCheck = (checkedKeys) => {\n map.setLayersShowByKeys(checkedKeys)\n }\n const content = () =>\n treeData?.length > 0 && (\n <Tree\n showIcon\n checkable\n selectable={false}\n defaultExpandAll={true}\n treeData={showAll ? [{ title: '全部', key: 'ALL', children: treeData }] : treeData}\n checkedKeys={checkedKeys}\n onCheck={onCheck}\n rootClassName={classname('cs-tools-layer-tree', treeClassName)}\n />\n );\n\n return (\n <ItemWrap content={props.content || content}>\n <Icon\n component={() => (\n <svg width=\"1em\" height=\"1em\" fill=\"currentColor\" viewBox=\"0 0 1024 1024\">\n <path d=\"M76.885358 279.114423l435.001777 219.929638L946.729127 278.922679 511.887135 66.566904 76.789486 279.018551z m61.070261 341.718631L46.334249 575.23009a73.917067 73.917067 0 0 1 0-136.649103L137.955619 393.073895l-91.62137-45.698835a75.067527 75.067527 0 0 1-38.029101-98.620003 56.915822 56.915822 0 0 1 30.487195-30.359366L473.762163 5.752301a105.45885 105.45885 0 0 1 68.708039 0l435.001777 212.64339a66.72669 66.72669 0 0 1 30.487195 98.651961 58.066282 58.066282 0 0 1-30.487195 30.359365L885.818651 393.073895l83.823807 37.901272a73.086179 73.086179 0 0 1 53.592271 75.994286 78.998266 78.998266 0 0 1-53.592271 75.866458l-83.951635 37.837357 83.951635 37.965186a73.086179 73.086179 0 0 1 53.592271 75.898414 79.253924 79.253924 0 0 1-53.592271 75.962329l-419.566436 204.941699a57.523009 57.523009 0 0 1-38.156929 7.60582 68.196723 68.196723 0 0 1-38.188887-7.637777L38.760386 802.989249a66.72669 66.72669 0 0 1-38.156929-68.452381 73.086179 73.086179 0 0 1 45.730792-68.22868z m83.951636 45.475134l-145.117769 68.22868 435.033735 220.217253L946.729127 742.174646l-144.926026-68.196723-251.822951 121.437463a56.947779 56.947779 0 0 1-38.124972 7.637778 68.196723 68.196723 0 0 1-38.188886-7.637778l-251.854908-129.20307z m579.95976-227.695244l-251.790993 121.437464a105.45885 105.45885 0 0 1-68.708039 0l-259.556599-121.437464-144.926026 68.100851 435.001777 220.313125L946.729127 506.905539l-145.021898-68.196723z\" />\n </svg>\n )}\n />\n </ItemWrap>\n );\n}\n"],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,345 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
|
|
4
|
-
var Cesium = _interopRequireWildcard(require("cesium"));
|
|
5
|
-
var _heatmap = _interopRequireDefault(require("heatmap.js"));
|
|
6
|
-
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
|
|
7
|
-
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
8
|
-
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
9
|
-
/*
|
|
10
|
-
* CesiumHeatmap.js v0.1 | Cesium Heatmap Library
|
|
11
|
-
*
|
|
12
|
-
* Works with heatmap.js v2.0.0: http://www.patrick-wied.at/static/heatmapjs/
|
|
13
|
-
*/
|
|
14
|
-
|
|
15
|
-
(function (window) {
|
|
16
|
-
'use strict';
|
|
17
|
-
|
|
18
|
-
function define_CesiumHeatmap() {
|
|
19
|
-
var CesiumHeatmap = {
|
|
20
|
-
defaults: {
|
|
21
|
-
useEntitiesIfAvailable: true,
|
|
22
|
-
//whether to use entities if a Viewer is supplied or always use an ImageryProvider
|
|
23
|
-
minCanvasSize: 700,
|
|
24
|
-
// minimum size (in pixels) for the heatmap canvas
|
|
25
|
-
maxCanvasSize: 2000,
|
|
26
|
-
// maximum size (in pixels) for the heatmap canvas
|
|
27
|
-
radiusFactor: 60,
|
|
28
|
-
// data point size factor used if no radius is given (the greater of height and width divided by this number yields the used radius)
|
|
29
|
-
spacingFactor: 1.5,
|
|
30
|
-
// extra space around the borders (point radius multiplied by this number yields the spacing)
|
|
31
|
-
maxOpacity: 0.8,
|
|
32
|
-
// the maximum opacity used if not given in the heatmap options object
|
|
33
|
-
minOpacity: 0.1,
|
|
34
|
-
// the minimum opacity used if not given in the heatmap options object
|
|
35
|
-
blur: 0.85,
|
|
36
|
-
// the blur used if not given in the heatmap options object
|
|
37
|
-
gradient: {
|
|
38
|
-
// the gradient used if not given in the heatmap options object
|
|
39
|
-
'.3': 'blue',
|
|
40
|
-
'.65': 'yellow',
|
|
41
|
-
'.8': 'orange',
|
|
42
|
-
'.95': 'red'
|
|
43
|
-
}
|
|
44
|
-
}
|
|
45
|
-
};
|
|
46
|
-
|
|
47
|
-
/* Create a CesiumHeatmap instance
|
|
48
|
-
*
|
|
49
|
-
* cesium: the CesiumWidget or Viewer instance
|
|
50
|
-
* bb: the WGS84 bounding box like {north, east, south, west}
|
|
51
|
-
* options: a heatmap.js options object (see http://www.patrick-wied.at/static/heatmapjs/docs.html#h337-create)
|
|
52
|
-
*/
|
|
53
|
-
CesiumHeatmap.create = function (cesium, bb, options) {
|
|
54
|
-
var instance = new CHInstance(cesium, bb, options);
|
|
55
|
-
return instance;
|
|
56
|
-
};
|
|
57
|
-
CesiumHeatmap._getContainer = function (width, height, id) {
|
|
58
|
-
var c = document.createElement("div");
|
|
59
|
-
if (id) {
|
|
60
|
-
c.setAttribute("id", id);
|
|
61
|
-
}
|
|
62
|
-
c.setAttribute("style", "width: " + width + "px; height: " + height + "px; margin: 0px; display: none;");
|
|
63
|
-
document.body.appendChild(c);
|
|
64
|
-
return c;
|
|
65
|
-
};
|
|
66
|
-
CesiumHeatmap._getImageryProvider = function (instance) {
|
|
67
|
-
//var n = (new Date()).getTime();
|
|
68
|
-
var d = instance._heatmap.getDataURL();
|
|
69
|
-
//console.log("Create data URL: " + ((new Date()).getTime() - n));
|
|
70
|
-
|
|
71
|
-
//var n = (new Date()).getTime();
|
|
72
|
-
var imgprov = new Cesium.SingleTileImageryProvider({
|
|
73
|
-
url: d,
|
|
74
|
-
rectangle: instance._rectangle
|
|
75
|
-
});
|
|
76
|
-
//console.log("Create imageryprovider: " + ((new Date()).getTime() - n));
|
|
77
|
-
|
|
78
|
-
imgprov._tilingScheme = new Cesium.WebMercatorTilingScheme({
|
|
79
|
-
rectangleSouthwestInMeters: new Cesium.Cartesian2(instance._mbounds.west, instance._mbounds.south),
|
|
80
|
-
rectangleNortheastInMeters: new Cesium.Cartesian2(instance._mbounds.east, instance._mbounds.north)
|
|
81
|
-
});
|
|
82
|
-
return imgprov;
|
|
83
|
-
};
|
|
84
|
-
CesiumHeatmap._getID = function (len) {
|
|
85
|
-
var text = "";
|
|
86
|
-
var possible = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789";
|
|
87
|
-
for (var i = 0; i < (len ? len : 8); i++) text += possible.charAt(Math.floor(Math.random() * possible.length));
|
|
88
|
-
return text;
|
|
89
|
-
};
|
|
90
|
-
var WMP = new Cesium.WebMercatorProjection();
|
|
91
|
-
|
|
92
|
-
/* Convert a WGS84 location into a mercator location
|
|
93
|
-
*
|
|
94
|
-
* p: the WGS84 location like {x: lon, y: lat}
|
|
95
|
-
*/
|
|
96
|
-
CesiumHeatmap.wgs84ToMercator = function (p) {
|
|
97
|
-
var mp = WMP.project(Cesium.Cartographic.fromDegrees(p.x, p.y));
|
|
98
|
-
return {
|
|
99
|
-
x: mp.x,
|
|
100
|
-
y: mp.y
|
|
101
|
-
};
|
|
102
|
-
};
|
|
103
|
-
|
|
104
|
-
/* Convert a WGS84 bounding box into a mercator bounding box
|
|
105
|
-
*
|
|
106
|
-
* bb: the WGS84 bounding box like {north, east, south, west}
|
|
107
|
-
*/
|
|
108
|
-
CesiumHeatmap.wgs84ToMercatorBB = function (bb) {
|
|
109
|
-
var sw = WMP.project(Cesium.Cartographic.fromDegrees(bb.west, bb.south));
|
|
110
|
-
var ne = WMP.project(Cesium.Cartographic.fromDegrees(bb.east, bb.north));
|
|
111
|
-
return {
|
|
112
|
-
north: ne.y,
|
|
113
|
-
east: ne.x,
|
|
114
|
-
south: sw.y,
|
|
115
|
-
west: sw.x
|
|
116
|
-
};
|
|
117
|
-
};
|
|
118
|
-
|
|
119
|
-
/* Convert a mercator location into a WGS84 location
|
|
120
|
-
*
|
|
121
|
-
* p: the mercator lcation like {x, y}
|
|
122
|
-
*/
|
|
123
|
-
CesiumHeatmap.mercatorToWgs84 = function (p) {
|
|
124
|
-
var wp = WMP.unproject(new Cesium.Cartesian3(p.x, p.y));
|
|
125
|
-
return {
|
|
126
|
-
x: wp.longitude,
|
|
127
|
-
y: wp.latitude
|
|
128
|
-
};
|
|
129
|
-
};
|
|
130
|
-
|
|
131
|
-
/* Convert a mercator bounding box into a WGS84 bounding box
|
|
132
|
-
*
|
|
133
|
-
* bb: the mercator bounding box like {north, east, south, west}
|
|
134
|
-
*/
|
|
135
|
-
CesiumHeatmap.mercatorToWgs84BB = function (bb) {
|
|
136
|
-
var sw = WMP.unproject(new Cesium.Cartesian3(bb.west, bb.south));
|
|
137
|
-
var ne = WMP.unproject(new Cesium.Cartesian3(bb.east, bb.north));
|
|
138
|
-
return {
|
|
139
|
-
north: this.rad2deg(ne.latitude),
|
|
140
|
-
east: this.rad2deg(ne.longitude),
|
|
141
|
-
south: this.rad2deg(sw.latitude),
|
|
142
|
-
west: this.rad2deg(sw.longitude)
|
|
143
|
-
};
|
|
144
|
-
};
|
|
145
|
-
|
|
146
|
-
/* Convert degrees into radians
|
|
147
|
-
*
|
|
148
|
-
* d: the degrees to be converted to radians
|
|
149
|
-
*/
|
|
150
|
-
CesiumHeatmap.deg2rad = function (d) {
|
|
151
|
-
var r = d * (Math.PI / 180.0);
|
|
152
|
-
return r;
|
|
153
|
-
};
|
|
154
|
-
|
|
155
|
-
/* Convert radians into degrees
|
|
156
|
-
*
|
|
157
|
-
* r: the radians to be converted to degrees
|
|
158
|
-
*/
|
|
159
|
-
CesiumHeatmap.rad2deg = function (r) {
|
|
160
|
-
var d = r / (Math.PI / 180.0);
|
|
161
|
-
return d;
|
|
162
|
-
};
|
|
163
|
-
return CesiumHeatmap;
|
|
164
|
-
}
|
|
165
|
-
if (typeof CesiumHeatmap === 'undefined') {
|
|
166
|
-
window.CesiumHeatmap = define_CesiumHeatmap();
|
|
167
|
-
} else {
|
|
168
|
-
console.log("CesiumHeatmap already defined.");
|
|
169
|
-
}
|
|
170
|
-
})(window);
|
|
171
|
-
|
|
172
|
-
/* Initiate a CesiumHeatmap instance
|
|
173
|
-
*
|
|
174
|
-
* c: CesiumWidget instance
|
|
175
|
-
* bb: a WGS84 bounding box like {north, east, south, west}
|
|
176
|
-
* o: a heatmap.js options object (see http://www.patrick-wied.at/static/heatmapjs/docs.html#h337-create)
|
|
177
|
-
*/
|
|
178
|
-
function CHInstance(c, bb, o) {
|
|
179
|
-
if (!bb) {
|
|
180
|
-
return null;
|
|
181
|
-
}
|
|
182
|
-
if (!o) {
|
|
183
|
-
o = {};
|
|
184
|
-
}
|
|
185
|
-
this._cesium = c;
|
|
186
|
-
this._options = o;
|
|
187
|
-
this._id = CesiumHeatmap._getID();
|
|
188
|
-
this._options.gradient = this._options.gradient ? this._options.gradient : CesiumHeatmap.defaults.gradient;
|
|
189
|
-
this._options.maxOpacity = this._options.maxOpacity ? this._options.maxOpacity : CesiumHeatmap.defaults.maxOpacity;
|
|
190
|
-
this._options.minOpacity = this._options.minOpacity ? this._options.minOpacity : CesiumHeatmap.defaults.minOpacity;
|
|
191
|
-
this._options.blur = this._options.blur ? this._options.blur : CesiumHeatmap.defaults.blur;
|
|
192
|
-
this._mbounds = CesiumHeatmap.wgs84ToMercatorBB(bb);
|
|
193
|
-
this._setWidthAndHeight(this._mbounds);
|
|
194
|
-
this._options.radius = Math.round(this._options.radius ? this._options.radius : this.width > this.height ? this.width / CesiumHeatmap.defaults.radiusFactor : this.height / CesiumHeatmap.defaults.radiusFactor);
|
|
195
|
-
this._spacing = this._options.radius * CesiumHeatmap.defaults.spacingFactor;
|
|
196
|
-
this._xoffset = this._mbounds.west;
|
|
197
|
-
this._yoffset = this._mbounds.south;
|
|
198
|
-
this.width = Math.round(this.width + this._spacing * 2);
|
|
199
|
-
this.height = Math.round(this.height + this._spacing * 2);
|
|
200
|
-
this._mbounds.west -= this._spacing * this._factor;
|
|
201
|
-
this._mbounds.east += this._spacing * this._factor;
|
|
202
|
-
this._mbounds.south -= this._spacing * this._factor;
|
|
203
|
-
this._mbounds.north += this._spacing * this._factor;
|
|
204
|
-
this.bounds = CesiumHeatmap.mercatorToWgs84BB(this._mbounds);
|
|
205
|
-
this._rectangle = Cesium.Rectangle.fromDegrees(this.bounds.west, this.bounds.south, this.bounds.east, this.bounds.north);
|
|
206
|
-
this._container = CesiumHeatmap._getContainer(this.width, this.height, this._id);
|
|
207
|
-
this._options.container = this._container;
|
|
208
|
-
this._heatmap = _heatmap["default"].create(this._options);
|
|
209
|
-
this._container.children[0].setAttribute("id", this._id + "-hm");
|
|
210
|
-
}
|
|
211
|
-
|
|
212
|
-
/* Convert a WGS84 location to the corresponding heatmap location
|
|
213
|
-
*
|
|
214
|
-
* p: a WGS84 location like {x:lon, y:lat}
|
|
215
|
-
*/
|
|
216
|
-
CHInstance.prototype.wgs84PointToHeatmapPoint = function (p) {
|
|
217
|
-
return this.mercatorPointToHeatmapPoint(CesiumHeatmap.wgs84ToMercator(p));
|
|
218
|
-
};
|
|
219
|
-
|
|
220
|
-
/* Convert a mercator location to the corresponding heatmap location
|
|
221
|
-
*
|
|
222
|
-
* p: a WGS84 location like {x: lon, y:lat}
|
|
223
|
-
*/
|
|
224
|
-
CHInstance.prototype.mercatorPointToHeatmapPoint = function (p) {
|
|
225
|
-
var pn = {};
|
|
226
|
-
pn.x = Math.round((p.x - this._xoffset) / this._factor + this._spacing);
|
|
227
|
-
pn.y = Math.round((p.y - this._yoffset) / this._factor + this._spacing);
|
|
228
|
-
pn.y = this.height - pn.y;
|
|
229
|
-
return pn;
|
|
230
|
-
};
|
|
231
|
-
CHInstance.prototype._setWidthAndHeight = function (mbb) {
|
|
232
|
-
this.width = mbb.east > 0 && mbb.west < 0 ? mbb.east + Math.abs(mbb.west) : Math.abs(mbb.east - mbb.west);
|
|
233
|
-
this.height = mbb.north > 0 && mbb.south < 0 ? mbb.north + Math.abs(mbb.south) : Math.abs(mbb.north - mbb.south);
|
|
234
|
-
this._factor = 1;
|
|
235
|
-
if (this.width > this.height && this.width > CesiumHeatmap.defaults.maxCanvasSize) {
|
|
236
|
-
this._factor = this.width / CesiumHeatmap.defaults.maxCanvasSize;
|
|
237
|
-
if (this.height / this._factor < CesiumHeatmap.defaults.minCanvasSize) {
|
|
238
|
-
this._factor = this.height / CesiumHeatmap.defaults.minCanvasSize;
|
|
239
|
-
}
|
|
240
|
-
} else if (this.height > this.width && this.height > CesiumHeatmap.defaults.maxCanvasSize) {
|
|
241
|
-
this._factor = this.height / CesiumHeatmap.defaults.maxCanvasSize;
|
|
242
|
-
if (this.width / this._factor < CesiumHeatmap.defaults.minCanvasSize) {
|
|
243
|
-
this._factor = this.width / CesiumHeatmap.defaults.minCanvasSize;
|
|
244
|
-
}
|
|
245
|
-
} else if (this.width < this.height && this.width < CesiumHeatmap.defaults.minCanvasSize) {
|
|
246
|
-
this._factor = this.width / CesiumHeatmap.defaults.minCanvasSize;
|
|
247
|
-
if (this.height / this._factor > CesiumHeatmap.defaults.maxCanvasSize) {
|
|
248
|
-
this._factor = this.height / CesiumHeatmap.defaults.maxCanvasSize;
|
|
249
|
-
}
|
|
250
|
-
} else if (this.height < this.width && this.height < CesiumHeatmap.defaults.minCanvasSize) {
|
|
251
|
-
this._factor = this.height / CesiumHeatmap.defaults.minCanvasSize;
|
|
252
|
-
if (this.width / this._factor > CesiumHeatmap.defaults.maxCanvasSize) {
|
|
253
|
-
this._factor = this.width / CesiumHeatmap.defaults.maxCanvasSize;
|
|
254
|
-
}
|
|
255
|
-
}
|
|
256
|
-
this.width = this.width / this._factor;
|
|
257
|
-
this.height = this.height / this._factor;
|
|
258
|
-
};
|
|
259
|
-
|
|
260
|
-
/* Set an array of heatmap locations
|
|
261
|
-
*
|
|
262
|
-
* min: the minimum allowed value for the data values
|
|
263
|
-
* max: the maximum allowed value for the data values
|
|
264
|
-
* data: an array of data points in heatmap coordinates and values like {x, y, value}
|
|
265
|
-
*/
|
|
266
|
-
CHInstance.prototype.setData = function (min, max, data) {
|
|
267
|
-
if (data && data.length > 0 && min !== null && min !== false && max !== null && max !== false) {
|
|
268
|
-
this._heatmap.setData({
|
|
269
|
-
min: min,
|
|
270
|
-
max: max,
|
|
271
|
-
data: data
|
|
272
|
-
});
|
|
273
|
-
this.updateLayer();
|
|
274
|
-
return true;
|
|
275
|
-
}
|
|
276
|
-
return false;
|
|
277
|
-
};
|
|
278
|
-
|
|
279
|
-
/* Set an array of WGS84 locations
|
|
280
|
-
*
|
|
281
|
-
* min: the minimum allowed value for the data values
|
|
282
|
-
* max: the maximum allowed value for the data values
|
|
283
|
-
* data: an array of data points in WGS84 coordinates and values like { x:lon, y:lat, value }
|
|
284
|
-
*/
|
|
285
|
-
CHInstance.prototype.setWGS84Data = function (min, max, data) {
|
|
286
|
-
if (data && data.length > 0 && min !== null && min !== false && max !== null && max !== false) {
|
|
287
|
-
var convdata = [];
|
|
288
|
-
for (var i = 0; i < data.length; i++) {
|
|
289
|
-
var gp = data[i];
|
|
290
|
-
var hp = this.wgs84PointToHeatmapPoint(gp);
|
|
291
|
-
if (gp.value || gp.value === 0) {
|
|
292
|
-
hp.value = gp.value;
|
|
293
|
-
}
|
|
294
|
-
convdata.push(hp);
|
|
295
|
-
}
|
|
296
|
-
return this.setData(min, max, convdata);
|
|
297
|
-
}
|
|
298
|
-
return false;
|
|
299
|
-
};
|
|
300
|
-
|
|
301
|
-
/* Set whether or not the heatmap is shown on the map
|
|
302
|
-
*
|
|
303
|
-
* s: true means the heatmap is shown, false means the heatmap is hidden
|
|
304
|
-
*/
|
|
305
|
-
CHInstance.prototype.show = function (s) {
|
|
306
|
-
if (this._layer) {
|
|
307
|
-
this._layer.show = s;
|
|
308
|
-
}
|
|
309
|
-
};
|
|
310
|
-
|
|
311
|
-
/* Update/(re)draw the heatmap
|
|
312
|
-
*/
|
|
313
|
-
CHInstance.prototype.updateLayer = function () {
|
|
314
|
-
// only works with a Viewer instance since the cesiumWidget
|
|
315
|
-
// instance doesn't contain an entities property
|
|
316
|
-
if (CesiumHeatmap.defaults.useEntitiesIfAvailable && this._cesium.entities) {
|
|
317
|
-
if (this._layer) {
|
|
318
|
-
this._cesium.entities.remove(this._layer);
|
|
319
|
-
}
|
|
320
|
-
|
|
321
|
-
// Work around issue with material rendering in Cesium
|
|
322
|
-
// provided by https://github.com/criis
|
|
323
|
-
var material = new Cesium.ImageMaterialProperty({
|
|
324
|
-
image: this._heatmap._renderer.canvas
|
|
325
|
-
});
|
|
326
|
-
if (Cesium.VERSION >= "1.21") {
|
|
327
|
-
material.transparent = true;
|
|
328
|
-
} else if (Cesium.VERSION >= "1.16") {
|
|
329
|
-
material.alpha = 0.99;
|
|
330
|
-
}
|
|
331
|
-
this._layer = this._cesium.entities.add({
|
|
332
|
-
show: true,
|
|
333
|
-
rectangle: {
|
|
334
|
-
coordinates: this._rectangle,
|
|
335
|
-
material: material
|
|
336
|
-
}
|
|
337
|
-
});
|
|
338
|
-
} else {
|
|
339
|
-
if (this._layer) {
|
|
340
|
-
this._cesium.scene.imageryLayers.remove(this._layer);
|
|
341
|
-
}
|
|
342
|
-
this._layer = this._cesium.scene.imageryLayers.addImageryProvider(CesiumHeatmap._getImageryProvider(this));
|
|
343
|
-
}
|
|
344
|
-
};
|
|
345
|
-
//# sourceMappingURL=CesiumHeatmap.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"CesiumHeatmap.js","names":["Cesium","_interopRequireWildcard","require","_heatmap","_interopRequireDefault","obj","__esModule","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","_typeof","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","window","define_CesiumHeatmap","CesiumHeatmap","defaults","useEntitiesIfAvailable","minCanvasSize","maxCanvasSize","radiusFactor","spacingFactor","maxOpacity","minOpacity","blur","gradient","create","cesium","bb","options","instance","CHInstance","_getContainer","width","height","id","c","document","createElement","setAttribute","body","appendChild","_getImageryProvider","d","getDataURL","imgprov","SingleTileImageryProvider","url","rectangle","_rectangle","_tilingScheme","WebMercatorTilingScheme","rectangleSouthwestInMeters","Cartesian2","_mbounds","west","south","rectangleNortheastInMeters","east","north","_getID","len","text","possible","i","charAt","Math","floor","random","length","WMP","WebMercatorProjection","wgs84ToMercator","p","mp","project","Cartographic","fromDegrees","x","y","wgs84ToMercatorBB","sw","ne","mercatorToWgs84","wp","unproject","Cartesian3","longitude","latitude","mercatorToWgs84BB","rad2deg","deg2rad","r","PI","console","log","o","_cesium","_options","_id","_setWidthAndHeight","radius","round","_spacing","_xoffset","_yoffset","_factor","bounds","Rectangle","_container","container","h337","children","wgs84PointToHeatmapPoint","mercatorPointToHeatmapPoint","pn","mbb","abs","setData","min","max","data","updateLayer","setWGS84Data","convdata","gp","hp","value","push","show","s","_layer","entities","remove","material","ImageMaterialProperty","image","_renderer","canvas","VERSION","transparent","alpha","add","coordinates","scene","imageryLayers","addImageryProvider"],"sources":["heatmap-layer/CesiumHeatmap.js"],"sourcesContent":["/*\n * CesiumHeatmap.js v0.1 | Cesium Heatmap Library\n *\n * Works with heatmap.js v2.0.0: http://www.patrick-wied.at/static/heatmapjs/\n */\nimport * as Cesium from 'cesium';\nimport h337 from 'heatmap.js';\n\n(function (window) {\n\t'use strict';\n\n\tfunction define_CesiumHeatmap() {\n\t\tvar CesiumHeatmap = {\n\t\t\tdefaults: {\n\t\t\t\tuseEntitiesIfAvailable: true, //whether to use entities if a Viewer is supplied or always use an ImageryProvider\n\t\t\t\tminCanvasSize: 700, // minimum size (in pixels) for the heatmap canvas\n\t\t\t\tmaxCanvasSize: 2000, // maximum size (in pixels) for the heatmap canvas\n\t\t\t\tradiusFactor: 60, // data point size factor used if no radius is given (the greater of height and width divided by this number yields the used radius)\n\t\t\t\tspacingFactor: 1.5, // extra space around the borders (point radius multiplied by this number yields the spacing)\n\t\t\t\tmaxOpacity: 0.8, // the maximum opacity used if not given in the heatmap options object\n\t\t\t\tminOpacity: 0.1, // the minimum opacity used if not given in the heatmap options object\n\t\t\t\tblur: 0.85, // the blur used if not given in the heatmap options object\n\t\t\t\tgradient: { // the gradient used if not given in the heatmap options object\n\t\t\t\t\t'.3': 'blue',\n\t\t\t\t\t'.65': 'yellow',\n\t\t\t\t\t'.8': 'orange',\n\t\t\t\t\t'.95': 'red'\n\t\t\t\t},\n\t\t\t}\n\t\t};\n\n\t\t/* Create a CesiumHeatmap instance\n\t\t *\n\t\t * cesium: the CesiumWidget or Viewer instance\n\t\t * bb: the WGS84 bounding box like {north, east, south, west}\n\t\t * options: a heatmap.js options object (see http://www.patrick-wied.at/static/heatmapjs/docs.html#h337-create)\n\t\t */\n\t\tCesiumHeatmap.create = function (cesium, bb, options) {\n\t\t\tvar instance = new CHInstance(cesium, bb, options);\n\t\t\treturn instance;\n\t\t};\n\n\t\tCesiumHeatmap._getContainer = function (width, height, id) {\n\t\t\tvar c = document.createElement(\"div\");\n\t\t\tif (id) {\n\t\t\t\tc.setAttribute(\"id\", id);\n\t\t\t}\n\t\t\tc.setAttribute(\"style\", \"width: \" + width + \"px; height: \" + height + \"px; margin: 0px; display: none;\");\n\t\t\tdocument.body.appendChild(c);\n\t\t\treturn c;\n\t\t};\n\n\t\tCesiumHeatmap._getImageryProvider = function (instance) {\n\t\t\t//var n = (new Date()).getTime();\n\t\t\tvar d = instance._heatmap.getDataURL();\n\t\t\t//console.log(\"Create data URL: \" + ((new Date()).getTime() - n));\n\n\t\t\t//var n = (new Date()).getTime();\n\t\t\tvar imgprov = new Cesium.SingleTileImageryProvider({\n\t\t\t\turl: d,\n\t\t\t\trectangle: instance._rectangle\n\t\t\t});\n\t\t\t//console.log(\"Create imageryprovider: \" + ((new Date()).getTime() - n));\n\n\t\t\timgprov._tilingScheme = new Cesium.WebMercatorTilingScheme({\n\t\t\t\trectangleSouthwestInMeters: new Cesium.Cartesian2(instance._mbounds.west, instance._mbounds.south),\n\t\t\t\trectangleNortheastInMeters: new Cesium.Cartesian2(instance._mbounds.east, instance._mbounds.north)\n\t\t\t});\n\n\t\t\treturn imgprov;\n\t\t};\n\n\t\tCesiumHeatmap._getID = function (len) {\n\t\t\tvar text = \"\";\n\t\t\tvar possible = \"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789\";\n\n\t\t\tfor (var i = 0; i < ((len) ? len : 8); i++)\n\t\t\t\ttext += possible.charAt(Math.floor(Math.random() * possible.length));\n\n\t\t\treturn text;\n\t\t};\n\n\t\tvar WMP = new Cesium.WebMercatorProjection();\n\n\t\t/* Convert a WGS84 location into a mercator location\n\t\t *\n\t\t * p: the WGS84 location like {x: lon, y: lat}\n\t\t */\n\t\tCesiumHeatmap.wgs84ToMercator = function (p) {\n\t\t\tvar mp = WMP.project(Cesium.Cartographic.fromDegrees(p.x, p.y));\n\t\t\treturn {\n\t\t\t\tx: mp.x,\n\t\t\t\ty: mp.y\n\t\t\t};\n\t\t};\n\n\t\t/* Convert a WGS84 bounding box into a mercator bounding box\n\t\t *\n\t\t * bb: the WGS84 bounding box like {north, east, south, west}\n\t\t */\n\t\tCesiumHeatmap.wgs84ToMercatorBB = function (bb) {\n\t\t\tvar sw = WMP.project(Cesium.Cartographic.fromDegrees(bb.west, bb.south));\n\t\t\tvar ne = WMP.project(Cesium.Cartographic.fromDegrees(bb.east, bb.north));\n\t\t\treturn {\n\t\t\t\tnorth: ne.y,\n\t\t\t\teast: ne.x,\n\t\t\t\tsouth: sw.y,\n\t\t\t\twest: sw.x\n\t\t\t};\n\t\t};\n\n\t\t/* Convert a mercator location into a WGS84 location\n\t\t *\n\t\t * p: the mercator lcation like {x, y}\n\t\t */\n\t\tCesiumHeatmap.mercatorToWgs84 = function (p) {\n\t\t\tvar wp = WMP.unproject(new Cesium.Cartesian3(p.x, p.y));\n\t\t\treturn {\n\t\t\t\tx: wp.longitude,\n\t\t\t\ty: wp.latitude\n\t\t\t};\n\t\t};\n\n\t\t/* Convert a mercator bounding box into a WGS84 bounding box\n\t\t *\n\t\t * bb: the mercator bounding box like {north, east, south, west}\n\t\t */\n\t\tCesiumHeatmap.mercatorToWgs84BB = function (bb) {\n\t\t\tvar sw = WMP.unproject(new Cesium.Cartesian3(bb.west, bb.south));\n\t\t\tvar ne = WMP.unproject(new Cesium.Cartesian3(bb.east, bb.north));\n\t\t\treturn {\n\t\t\t\tnorth: this.rad2deg(ne.latitude),\n\t\t\t\teast: this.rad2deg(ne.longitude),\n\t\t\t\tsouth: this.rad2deg(sw.latitude),\n\t\t\t\twest: this.rad2deg(sw.longitude)\n\t\t\t};\n\t\t};\n\n\t\t/* Convert degrees into radians\n\t\t *\n\t\t * d: the degrees to be converted to radians\n\t\t */\n\t\tCesiumHeatmap.deg2rad = function (d) {\n\t\t\tvar r = d * (Math.PI / 180.0);\n\t\t\treturn r;\n\t\t};\n\n\t\t/* Convert radians into degrees\n\t\t *\n\t\t * r: the radians to be converted to degrees\n\t\t */\n\t\tCesiumHeatmap.rad2deg = function (r) {\n\t\t\tvar d = r / (Math.PI / 180.0);\n\t\t\treturn d;\n\t\t};\n\n\t\treturn CesiumHeatmap;\n\t}\n\n\tif (typeof(CesiumHeatmap) === 'undefined') {\n\t\twindow.CesiumHeatmap = define_CesiumHeatmap();\n\t} else {\n\t\tconsole.log(\"CesiumHeatmap already defined.\");\n\t}\n})(window);\n\n/* Initiate a CesiumHeatmap instance\n *\n * c: CesiumWidget instance\n * bb: a WGS84 bounding box like {north, east, south, west}\n * o: a heatmap.js options object (see http://www.patrick-wied.at/static/heatmapjs/docs.html#h337-create)\n */\nfunction CHInstance(c, bb, o) {\n\tif (!bb) {\n\t\treturn null;\n\t}\n\tif (!o) {\n\t\to = {};\n\t}\n\n\tthis._cesium = c;\n\tthis._options = o;\n\tthis._id = CesiumHeatmap._getID();\n\n\tthis._options.gradient = ((this._options.gradient) ? this._options.gradient : CesiumHeatmap.defaults.gradient);\n\tthis._options.maxOpacity = ((this._options.maxOpacity) ? this._options.maxOpacity : CesiumHeatmap.defaults.maxOpacity);\n\tthis._options.minOpacity = ((this._options.minOpacity) ? this._options.minOpacity : CesiumHeatmap.defaults.minOpacity);\n\tthis._options.blur = ((this._options.blur) ? this._options.blur : CesiumHeatmap.defaults.blur);\n\n\tthis._mbounds = CesiumHeatmap.wgs84ToMercatorBB(bb);\n\tthis._setWidthAndHeight(this._mbounds);\n\n\tthis._options.radius = Math.round((this._options.radius) ? this._options.radius : ((this.width > this.height) ? this.width / CesiumHeatmap.defaults.radiusFactor : this.height / CesiumHeatmap.defaults.radiusFactor));\n\n\tthis._spacing = this._options.radius * CesiumHeatmap.defaults.spacingFactor;\n\tthis._xoffset = this._mbounds.west;\n\tthis._yoffset = this._mbounds.south;\n\n\tthis.width = Math.round(this.width + this._spacing * 2);\n\tthis.height = Math.round(this.height + this._spacing * 2);\n\n\tthis._mbounds.west -= this._spacing * this._factor;\n\tthis._mbounds.east += this._spacing * this._factor;\n\tthis._mbounds.south -= this._spacing * this._factor;\n\tthis._mbounds.north += this._spacing * this._factor;\n\n\tthis.bounds = CesiumHeatmap.mercatorToWgs84BB(this._mbounds);\n\n\tthis._rectangle = Cesium.Rectangle.fromDegrees(this.bounds.west, this.bounds.south, this.bounds.east, this.bounds.north);\n\tthis._container = CesiumHeatmap._getContainer(this.width, this.height, this._id);\n\tthis._options.container = this._container;\n\tthis._heatmap = h337.create(this._options);\n\tthis._container.children[0].setAttribute(\"id\", this._id + \"-hm\");\n}\n\n/* Convert a WGS84 location to the corresponding heatmap location\n *\n * p: a WGS84 location like {x:lon, y:lat}\n */\nCHInstance.prototype.wgs84PointToHeatmapPoint = function (p) {\n\treturn this.mercatorPointToHeatmapPoint(CesiumHeatmap.wgs84ToMercator(p));\n};\n\n/* Convert a mercator location to the corresponding heatmap location\n *\n * p: a WGS84 location like {x: lon, y:lat}\n */\nCHInstance.prototype.mercatorPointToHeatmapPoint = function (p) {\n\tvar pn = {};\n\n\tpn.x = Math.round((p.x - this._xoffset) / this._factor + this._spacing);\n\tpn.y = Math.round((p.y - this._yoffset) / this._factor + this._spacing);\n\tpn.y = this.height - pn.y;\n\n\treturn pn;\n};\n\nCHInstance.prototype._setWidthAndHeight = function (mbb) {\n\tthis.width = ((mbb.east > 0 && mbb.west < 0) ? mbb.east + Math.abs(mbb.west) : Math.abs(mbb.east - mbb.west));\n\tthis.height = ((mbb.north > 0 && mbb.south < 0) ? mbb.north + Math.abs(mbb.south) : Math.abs(mbb.north - mbb.south));\n\tthis._factor = 1;\n\n\tif (this.width > this.height && this.width > CesiumHeatmap.defaults.maxCanvasSize) {\n\t\tthis._factor = this.width / CesiumHeatmap.defaults.maxCanvasSize;\n\n\t\tif (this.height / this._factor < CesiumHeatmap.defaults.minCanvasSize) {\n\t\t\tthis._factor = this.height / CesiumHeatmap.defaults.minCanvasSize;\n\t\t}\n\t} else if (this.height > this.width && this.height > CesiumHeatmap.defaults.maxCanvasSize) {\n\t\tthis._factor = this.height / CesiumHeatmap.defaults.maxCanvasSize;\n\n\t\tif (this.width / this._factor < CesiumHeatmap.defaults.minCanvasSize) {\n\t\t\tthis._factor = this.width / CesiumHeatmap.defaults.minCanvasSize;\n\t\t}\n\t} else if (this.width < this.height && this.width < CesiumHeatmap.defaults.minCanvasSize) {\n\t\tthis._factor = this.width / CesiumHeatmap.defaults.minCanvasSize;\n\n\t\tif (this.height / this._factor > CesiumHeatmap.defaults.maxCanvasSize) {\n\t\t\tthis._factor = this.height / CesiumHeatmap.defaults.maxCanvasSize;\n\t\t}\n\t} else if (this.height < this.width && this.height < CesiumHeatmap.defaults.minCanvasSize) {\n\t\tthis._factor = this.height / CesiumHeatmap.defaults.minCanvasSize;\n\n\t\tif (this.width / this._factor > CesiumHeatmap.defaults.maxCanvasSize) {\n\t\t\tthis._factor = this.width / CesiumHeatmap.defaults.maxCanvasSize;\n\t\t}\n\t}\n\n\tthis.width = this.width / this._factor;\n\tthis.height = this.height / this._factor;\n};\n\n/* Set an array of heatmap locations\n *\n * min: the minimum allowed value for the data values\n * max: the maximum allowed value for the data values\n * data: an array of data points in heatmap coordinates and values like {x, y, value}\n */\nCHInstance.prototype.setData = function (min, max, data) {\n\tif (data && data.length > 0 && min !== null && min !== false && max !== null && max !== false) {\n\t\tthis._heatmap.setData({\n\t\t\tmin: min,\n\t\t\tmax: max,\n\t\t\tdata: data\n\t\t});\n\n\t\tthis.updateLayer();\n\t\treturn true;\n\t}\n\n\treturn false;\n};\n\n/* Set an array of WGS84 locations\n *\n * min: the minimum allowed value for the data values\n * max: the maximum allowed value for the data values\n * data: an array of data points in WGS84 coordinates and values like { x:lon, y:lat, value }\n */\nCHInstance.prototype.setWGS84Data = function (min, max, data) {\n\tif (data && data.length > 0 && min !== null && min !== false && max !== null && max !== false) {\n\t\tvar convdata = [];\n\n\t\tfor (var i = 0; i < data.length; i++) {\n\t\t\tvar gp = data[i];\n\n\t\t\tvar hp = this.wgs84PointToHeatmapPoint(gp);\n\t\t\tif (gp.value || gp.value === 0) {\n\t\t\t\thp.value = gp.value;\n\t\t\t}\n\n\t\t\tconvdata.push(hp);\n\t\t}\n\n\t\treturn this.setData(min, max, convdata);\n\t}\n\n\treturn false;\n};\n\n/* Set whether or not the heatmap is shown on the map\n *\n * s: true means the heatmap is shown, false means the heatmap is hidden\n */\nCHInstance.prototype.show = function (s) {\n\tif (this._layer) {\n\t\tthis._layer.show = s;\n\t}\n};\n\n/* Update/(re)draw the heatmap\n */\nCHInstance.prototype.updateLayer = function () {\n\n\t// only works with a Viewer instance since the cesiumWidget\n\t// instance doesn't contain an entities property\n\tif (CesiumHeatmap.defaults.useEntitiesIfAvailable && this._cesium.entities) {\n\t\tif (this._layer) {\n\t\t\tthis._cesium.entities.remove(this._layer);\n\t\t}\n\n\t\t// Work around issue with material rendering in Cesium\n\t\t// provided by https://github.com/criis\n\t\tconst material = new Cesium.ImageMaterialProperty({\n\t\t\timage: this._heatmap._renderer.canvas,\n\t\t});\n\t\tif (Cesium.VERSION >= \"1.21\") {\n\t\t\tmaterial.transparent = true;\n\t\t} else if (Cesium.VERSION >= \"1.16\") {\n\t\t\tmaterial.alpha = 0.99;\n\t\t}\n\n\t\tthis._layer = this._cesium.entities.add({\n\t\t\tshow: true,\n\t\t\trectangle: {\n\t\t\t\tcoordinates: this._rectangle,\n\t\t\t\tmaterial: material\n\t\t\t}\n\t\t});\n\t} else {\n\t\tif (this._layer) {\n\t\t\tthis._cesium.scene.imageryLayers.remove(this._layer);\n\t\t}\n\n\t\tthis._layer = this._cesium.scene.imageryLayers.addImageryProvider(CesiumHeatmap._getImageryProvider(this));\n\t}\n};\n"],"mappings":"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"}
|