Extends
Members
用来临时存储客户需要的一些信息,方便使用
- Inherited From:
- Default Value:
''
网格数据高度
-
Default Value:
100
网格数据宽度
-
Default Value:
100
销毁时的执行语句,只有在对象销毁时才会执行,方便用来清理随该对象创建时附带创建的资源
有一个内置变量p,表示当前对象。 注意对象的销毁除了使用destroyEvalString,还可以使用
有一个内置变量p,表示当前对象。 注意对象的销毁除了使用destroyEvalString,还可以使用
disposers
属性来销毁。
- Inherited From:
- Default Value:
''
See:
用来收集资源销毁函数,并在析构时自动调用!
- Inherited From:
Example:
// 示例1:
myObject.disposers.push(() => {
// 此处执行需要销毁的资源
});
// 示例2:
// XE.MVVM.bind的返回值是一个函数,作用是用来解除双向绑定,
// 把它的返回值放到disposer中,那么对象销毁时就会执行解绑操作。
myObject.disposers.push(XE.MVVM.bind(xxx));
// 示例3:
// XE.MVVM.watch的返回值是一个函数,作用是用来取消监视,
// 把它的返回值放到disposer中,那么对象销毁时就会执行取消监视的操作。
myObject.disposers.push(XE.MVVM.watch(xxx));
readonlyearth : Earth
返回该对象的所属earth实例
- Inherited From:
是否启用
- Inherited From:
设置执行语句,
内部有一个内置的变量p,用来指示当前对象。
注意evalString每次进行属性设置都会执行一遍,如果evalString中有创建资源,资源需要记录,避免再次执行后销毁不了。
内部有一个内置的变量p,用来指示当前对象。
注意evalString每次进行属性设置都会执行一遍,如果evalString中有创建资源,资源需要记录,避免再次执行后销毁不了。
- Inherited From:
- Default Value:
''
Example:
myObject.evalString = `
// 技巧1:p是一个内置变量,可以直接使用
if (p._div) { // 技巧2:evalString有可能执行多次,这个地方的判断是避免div重复创建!
return;
}
// 创建div
const div = document.createElement('div');
p._div = div;
// 技巧3:可以通过p.earth来获取earth变量
const earth = p.earth;
`;
See:
调色板,形式如 [[x, y], [x1, y1], ...] x为数字,0-1之间;y表示颜色的字符串形式
-
Default Value:
[[0, 'green'], [0.2, 'blue'], [0.6, 'yellow'], [1.0, 'red']]
Example:
xxx.gradient = [[0, 'green'], [0.2, 'blue'], [0.6, 'yellow'], [1.0, 'red']];
对象的唯一标识符
注意,对象一旦创建,guid不可更改!
注意,对象一旦创建,guid不可更改!
- Inherited From:
高度
-
Default Value:
100
网格数据最大值
-
Default Value:
1
网格数据最小值
-
Default Value:
0
原点
-
Default Value:
[0.5, 0.5]
位置数组 [经度、纬度、高度]
-
Default Value:
[0, 0, 0]
设置每帧执行语句,和evalString的作用类似
它有三个内置变量,分别是p, scene, time,分别表示当前对象,Cesium的场景对象scene,Cesium的当前帧的时间time 需要注意的是它会每帧执行一次。
它有三个内置变量,分别是p, scene, time,分别表示当前对象,Cesium的场景对象scene,Cesium的当前帧的时间time 需要注意的是它会每帧执行一次。
- Inherited From:
- Default Value:
‘’
Example:
myObject.preUpdateEvalString = `
// 技巧1:p是一个内置变量,可以直接使用,还有scene,time都可以直接使用
p._angle += 1;
if (p._angle > 360.0) {
p._angle = 0.0;
}
const angle = p._angle;
// drawCanvas时使用angle来改变图像内容
// ...
`;
See:
旋转角
-
Default Value:
0
显示
-
Default Value:
true
宽度
-
Default Value:
100
- Inherited From:
Deprecated: true
获取对象的类型信息
- Inherited From:
Methods
staticObj.HeatMap.getGridDataFromKriging(posValues, width, height, krigingOptions) → Array.<number>|undefined
通过克里金插值算法绘制热力图
Name | Type | Description |
---|---|---|
posValues |
object | 形式如[[x, y, v], [], ...] x在0-width范围之内,y在0-height范围之内,v必须大于0 |
width |
number | 宽度 |
height |
number | 高度 |
krigingOptions |
object |
Returns:
返回结果,如果为undefined,说明计算出错!
Example:
var gridData = new Array(100*100);
gridData.fill(0);
const posValues = [[10, 10, 100], [10, 90, 500], [90, 10, 300], [90, 90, 1000]];
var gridData = XE.Obj.HeatMap.getGridDataFromKriging(posValues, 100, 100, gridData);
staticObj.HeatMap.interpolateGridData(ratio, gridData0, gridData1, length, resultData) → Array.<number>|undefined
网格数据插值
Name | Type | Description |
---|---|---|
ratio |
* | 0-1之间 |
gridData0 |
* | 第一个gridData数据 |
gridData1 |
* | 第二个gridData数据 |
length |
* | 数组长度 |
resultData |
* | 结果数据 |
Returns:
返回结果,如果为undefined,说明插值出错!
Example:
var d0 = [10, 20, 30, 40]
var d1 = [20, 30, 40, 50];
var r = new Array(4); r.fill(0);
r = XE.Obj.HeatMap.interpolateGridData(0.4, d0, d1, 4, r);
从外部canvas拷贝图像数据
Name | Type | Description |
---|---|---|
canvas |
Canvas | 外部canvas |
销毁对象
警告:对象一旦销毁不可再次使用!
警告:挂在场景树上的对象禁止调用destroy方法,只要通过数组函数将其从场景树中移除,就会自动销毁!
警告:对象一旦销毁不可再次使用!
警告:挂在场景树上的对象禁止调用destroy方法,只要通过数组函数将其从场景树中移除,就会自动销毁!
Returns:
返回undefined
- Inherited From:
Example:
// 使用范例
// 这样写的好处是,一旦对象销毁,会同时将引用该对象的变量同时置为undefined,防止再次使用。
this._myObject = this._myObject && this._myObject.destroy();
飞入该对象
- Inherited From:
检查对象是否已被销毁
警告:对象一旦销毁不可再次使用!仅此函数可以调用!
警告:对象一旦销毁不可再次使用!仅此函数可以调用!
Returns:
对象是否已销毁
- Inherited From:
设置网格数据
gridData[0] 西北角
gridData[dataWidth-1] 东北角
gridData[(dataHeight-1)*dataWidth] 西南角
gridData[dataHeight*dataWidth-1] 东南角
gridData[0] 西北角
gridData[dataWidth-1] 东北角
gridData[(dataHeight-1)*dataWidth] 西南角
gridData[dataHeight*dataWidth-1] 东南角
Name | Type | Description |
---|---|---|
gridData |
Array.<number> | 网格数据数组,数组长度为width*height |
数据整个JSOn对象,包括默认值
Returns:
创建的JSON数据对象
- Inherited From:
转化成JSON字符串,输出全部元素
Returns:
JSON格式化好的字符串
- Inherited From:
转化成一个JSON数据对象
注意:每次都会创建一个新对象!
注意:每次都会创建一个新对象!
Returns:
创建的JSON数据对象
- Inherited From:
转化成JSON字符串,默认元素不输出
Returns:
JSON格式化好的字符串
- Inherited From:
通过JSON数据对象来设置属性
Name | Type | Description |
---|---|---|
jsonObject |
* |
- Inherited From:
Example:
// 创建一个pin对象
const objConfig = {
"name": 'Pin1',
"xbsjType": "Pin",
"position": [1.9017005694855162, 0.5972477268978722, 488.7695178987821],
"near": 300,
"show": false,
evalString,
};
const pin = new XE.Obj.Pin(earth);
pin.xbsjFromJSON(objConfig);