GeoHeatMap

new Cesium.GeoHeatMap(options)

热力图
Name Type Description
options Object optional 对象具有以下属性:
Name Type Description
viewer Viewer optional 三维球
heatmapOptions Object optional 热力图设置参数
dataOptions Object optional 热力图数据设置参数
Example:
//生成GeoJson随机数据的函数
function getData(length) {
	var geoJsonData ={
		type:"FeatureCollection"
	};
	geoJsonData.features=[];
	for (var i = 0; i < length; i++) {
		var obj={
			type:'Feature',
			properties:{
				z:0
			},
			geometry:{
				type:"Point",
				coordinates:[0,0]
			}
		};
		obj.geometry.coordinates[0]=Math.random() * (98.95746362353572 - 96.39292834205654) +96.39292834205654;
		obj.geometry.coordinates[1]=Math.random() * (31.078371524252578 - 28.68605002678491) + 28.68605002678491;
		obj.properties.z=Math.random() * 100;
		geoJsonData.features.push(obj);
	}
	return geoJsonData;
}
//获取GeoJson数据
var data=getData(1000);
// 配置数据并生成热力图
var geoHeatmap=new Cesium.GeoHeatMap({
	    viewer:viewer,          //地球容器
	    heatmapOptions:{
	        useEntities:true,   //值为true:采用entities方式加载;值为false:采用imageryLayers方式加载
		    gradient:{	        //渐变参数设置
			    0.25: "rgb(0,0,225)",
			    0.55: "rgb(0,225,0)",
			    0.85: "rgb(255,225,0)",
			    1.0: "rgb(255,0,0)"
		    },
		    radius: 60,         //每个数据点将具有的半径
		    // radiusFactor:60, //如果没有给定半径,则使用数据点大小因子(高度和宽度的较大值除以该数字将生成所用的半径)
		    spacingFactor:1.5,  // 边界周围的额外空间(点半径乘以此数字得到间距)
		    //opacity:0.6,      //整个热力图的全局不透明度。如果设置,这将覆盖maxOpacity和minOpacity
		    maxOpacity:0.8,     //热力图中最高值的最大不透明度。(如果设置了不透明度,将被覆盖)
		    minOpacity:0.1,     //热力图中最低值的最小不透明度(如果设置了不透明度,将被覆盖)
		    blur:0.85          //值越大,渐变越平滑,外圆占比越大。
	    }
});
//设置数据
geoHeatmap.setData(0,100,data)
Demo:

Methods

deg2rad(d)Number

度转弧度
Name Type Description
d Number
Returns:
弧度

destroy()

销毁热力图

mercatorPointToHeatmapPoint(p)Object

将墨卡托位置转换为相应的热力图位置
Name Type Description
p Object 一个墨卡托位置,如x:lon,y:lat
Returns:
点在画布上的坐标

mercatorToWgs84(p)Object

墨卡托坐标转WGS84坐标
Name Type Description
p Object 墨卡托坐标如:{x, y}
Returns:
WGS84坐标如:{x, y}

mercatorToWgs84BB(bb)Object

将包围盒范围由墨卡托转WGS84
Name Type Description
bb Object 墨卡托包围盒坐标如:{north, east, south, west}
Returns:
WGS84包围盒如:{north, east, south, west}

rad2deg(r)Number

弧度转度
Name Type Description
r Number 弧度
Returns:

remove()

移除热力图

setData(min, max, geoJsonData, heatMapField)Boolean

设置热力图位置数组
Name Type Default Description
min Number 最小值
max Number 最大值
geoJsonData Object geoJson数据
heatMapField String 'z' optional 自定义权重字段,默认是'z'
Returns:
数据设置是否成功

show(s)

设置热力图是否显示在地图上
Name Type Description
s Boolean “true”表示显示热力图,“false”表示隐藏热力图。

updateLayer()

更新/重绘热力图

wgs84PointToHeatmapPoint(度,一个wgs84位置,如x:lon,y:lat)

将wgs84位置转换为相应的heatmap位置
Name Type Description
度,一个wgs84位置,如x:lon,y:lat Number

wgs84ToMercator(p)Object

WGS84转墨卡托
Name Type Description
p Object WGS84坐标,如:{x: lon, y: lat}
Returns:
墨卡托坐标,如:{x: lon, y: lat}

wgs84ToMercatorBB(bb)Object

将包围盒范围由WGS84转墨卡托
Name Type Description
bb Object WGS84包围盒如:{north, east, south, west}
Returns:
墨卡托包围盒如:{north, east, south, west}