Class: PolygonLayer

.Visuals.DeckGL. PolygonLayer

基于DeckGL的多边形图层

new PolygonLayer()

Author:
  • liuck
Source:
View2D/Visuals/DeckGL/PolygonLayer.js
Example
//构造地图对象
var map = new GeoGlobe.Map({
	style: Cfg.style,
	container: 'map',
	zoom: 11,
	bearing: 0,
	pitch: 45,
	units: "degrees",
	center: [-123.13,49.254]
});
//构造DeckGL可视化图层
var deckgl = new GeoGlobe.Visuals.DeckGL();
//绑定初始构建事件
deckgl.on('overlayerinit', function(o){
	o.param.enable(o.param.DEPTH_TEST);
	o.param.depthFunc(o.param.LEQUAL);
});
//绑定鼠标点击事件
deckgl.on('overlayerclick', function(e,a,b){

});
//绑定鼠标移动事件
deckgl.on('overlayerhover', function(o,a,b){

})
//添加到地图中
deckgl.addTo(map);
//构造图层
var polygonLayer = new GeoGlobe.Visuals.DeckGL.PolygonLayer({
	id: 'polygon-layer',
	data: [
		{ "type": "Feature", "properties": {}, "geometry": { "type": "Polygon", "coordinates": [ [ [ 114.22313690185547, 30.51213917605451 ], [ 114.29986953735351, 30.51213917605451 ], [ 114.29986953735351, 30.5665474527005 ], [ 114.22313690185547, 30.5665474527005 ], [ 114.22313690185547, 30.51213917605451 ] ] ] } }
	],
	visible: true,
	pickable: true,
	fp64: false,
	stroked: false,
	filled: true,
	extruded: true,
	wireframe: false,
	getFillColor: function(d){if(d.height>380){return [255,10,10];} else{return [240,143,96];}}
});

Members


data :Array

geojson结构
Type:
  • Array
Source:
View2D/Visuals/DeckGL/PolygonLayer.js
Example
[{
"type": "Feature",
"properties": {
		"id": 10001,
		"name": "正方形"
	},
"geometry": {
		"type": "Polygon",
		"coordinates": [ [ [ 114.22313690185547, 30.51213917605451 ], [ 114.29986953735351, 30.51213917605451 ], [ 114.29986953735351, 30.5665474527005 ], [ 114.22313690185547, 30.5665474527005 ], [ 114.22313690185547, 30.51213917605451 ] ] ]
	}
}]

elevationScale :Int

高程乘数。 最终高程由elevationScale * getElevation(d)计算。 elevationScale是一个方便的属性,可以在不更新数据的情况下缩放所有多边形高程。
Type:
  • Int
Default Value:
  • 1
Source:
View2D/Visuals/DeckGL/PolygonLayer.js

extruded :Boolean

如果设置为true,则沿z轴挤出Polygon和MultiPolygon要素。 使用getElevation访问器获取绘制要素的高度。
Type:
  • Boolean
Default Value:
  • false
Source:
View2D/Visuals/DeckGL/PolygonLayer.js

filled :Boolean

是否绘制填充多边形(固体填充)。请注意,对于每个多边形,只有外部多边形和任何孔之间的区域将被填充。只有当多边形没有被挤压时,这个支柱才是有效的。
Type:
  • Boolean
Default Value:
  • true
Source:
View2D/Visuals/DeckGL/PolygonLayer.js

fp64 :Boolean

是否开启高精度64位模式
Type:
  • Boolean
Default Value:
  • true
Source:
View2D/Visuals/DeckGL/PolygonLayer.js

id :String

图层id
Type:
  • String
Default Value:
  • '1'
Source:
View2D/Visuals/DeckGL/PolygonLayer.js

lightSettings :Object

灯光设置的对象
Type:
  • Object
Default Value:
  • {}
Source:
View2D/Visuals/DeckGL/PolygonLayer.js

lineJointRounded :Boolean

关节类型。 如果是,则绘制圆形关节。 否则绘制斜接接头。
Type:
  • Boolean
Default Value:
  • false
Source:
View2D/Visuals/DeckGL/PolygonLayer.js

lineMiterLimit :Int

关节的最大范围与笔划宽度的比率。 仅在lineJointRounded为false时有效。
Type:
  • Int
Default Value:
  • 4
Source:
View2D/Visuals/DeckGL/PolygonLayer.js

lineWidthMaxPixels :Int

最大线宽(以像素为单位)。
Type:
  • Int
Default Value:
  • Number.MAX_SAFE_INTEGER
Source:
View2D/Visuals/DeckGL/PolygonLayer.js

lineWidthMinPixels :Int

最小线宽(以像素为单位)。
Type:
  • Int
Default Value:
  • 0
Source:
View2D/Visuals/DeckGL/PolygonLayer.js

lineWidthScale :Int

如果stroked属性为true,则线宽乘数乘以所有线,包括LineString和MultiLineString要素以及Polygon和MultiPolygon要素的轮廓。
Type:
  • Int
Default Value:
  • 1
Source:
View2D/Visuals/DeckGL/PolygonLayer.js

name :String

图层名称
Type:
  • String
Default Value:
  • ''
Source:
View2D/Visuals/DeckGL/PolygonLayer.js

pickable :Boolean

是否开启鼠标拾取
Type:
  • Boolean
Default Value:
  • true
Source:
View2D/Visuals/DeckGL/PolygonLayer.js

stroked :Boolean

是否在多边形周围绘制轮廓(实心填充)。 注意对于复杂多边形,外部多边形以及外部多边形将绘制任何洞。
Type:
  • Boolean
Default Value:
  • false
Source:
View2D/Visuals/DeckGL/PolygonLayer.js

visible :Boolean

可见性
Type:
  • Boolean
Default Value:
  • true
Source:
View2D/Visuals/DeckGL/PolygonLayer.js

wireframe :Boolean

是否生成六边形的线框。 轮廓将具有关闭顶部和底部多边形的“水平”线以及多边形上每个顶点的垂直线(“支柱”)。备注:这些线条用GL.LINE渲染,因此总是1像素宽。线框和实体挤出是独占的,如果您想要组合渲染效果,则需要使用相同的数据创建两个图层。这仅在挤出的prop设置为true时有效。
Type:
  • Boolean
Default Value:
  • false
Source:
View2D/Visuals/DeckGL/PolygonLayer.js

Methods


addTo(deckgl)

关联DeckGL
Parameters:
Name Type Description
deckgl GeoGlobe.Visuals.DeckGL
Source:
View2D/Visuals/DeckGL/PolygonLayer.js

getElevation(data)

高程GET属性
Parameters:
Name Type Description
data Feature geojson中的一个Feature
Default Value:
  • data.properties.elevation
Source:
View2D/Visuals/DeckGL/PolygonLayer.js
Returns:
elevation
Type
Int

getFillColor(data)

填充颜色GET属性
Parameters:
Name Type Description
data Feature geojson中的一个Feature
Default Value:
  • data.properties.fillColor
Source:
View2D/Visuals/DeckGL/PolygonLayer.js
Returns:
[0, 0, 0, 255]
Type
Array

getInnerLayer()

获取deckgl内部layer实例
Source:
View2D/Visuals/DeckGL/PolygonLayer.js
Returns:
layer
Type
Object

getLineColor(data)

线颜色GET属性
Parameters:
Name Type Description
data Feature geojson中的一个Feature
Default Value:
  • data.properties.lineColor
Source:
View2D/Visuals/DeckGL/PolygonLayer.js
Returns:
[0, 0, 0, 255]
Type
Array

getLineWidth(data)

线宽度GET属性
Parameters:
Name Type Description
data Feature geojson中的一个Feature
Default Value:
  • data.properties.lineWidth
Source:
View2D/Visuals/DeckGL/PolygonLayer.js
Returns:
lineWidth
Type
Int

getPolygon(data)

多边形GET属性
Parameters:
Name Type Description
data Feature geojson中的一个Feature
Default Value:
  • ata.geometry.coordinates
Source:
View2D/Visuals/DeckGL/PolygonLayer.js
Returns:
Polygon
Type
Array

remove()

从父对象中移除自己
Source:
View2D/Visuals/DeckGL/PolygonLayer.js

render()

绘制
Source:
View2D/Visuals/DeckGL/PolygonLayer.js