1. EntityLayer
Extends: Layer
1.1. 初始化 EntityLayer(options)
Entity实体数据图层类。包括直线、动态线、多边形、矩形、圆形、椭球体、盒子、管线(方形)、管道(圆形)、墙体、模型(gltf)和图标等类型。
Param | Type | Default | Description |
---|---|---|---|
options | Object |
包含以下参数的Object对象: |
|
options.type | EntityType |
实体类型BOSGeo.EntityType,包括EntityType.POLYLINE,EntityType.DYNAMICLINE, EntityType.POLYGON, EntityType.RECTANGLE, EntityType.ELLIPSE,EntityType.ELLIPSOID,EntityType.BOX,EntityType.DYNAMICECLIPSE, EntityType.PIPELINE EntityType.TUBE,EntityType.WALL,EntityType.MODEL,EntityType.BILLBOARD; |
|
options.position | Array.<Number> |
图形位置,[longitude,latitude, height, ...],当type为EntityType.DYNAMICLINE时,其设置时将覆盖startPoint和endPoint的设置; 当options.type为EntityType.RECTANGLE时,position只包含两个点的位置信息; 当options.type为EntityType.ELLIPSE时,position只包含一个点的位置信息; |
|
[options.startPoint] | Array.<Number> |
当type为EntityType.DYNAMICLINE时有效,图形起始位置,[longitude,latitude, height] |
|
[options.endPoint] | Array.<Number> |
当type为EntityType.DYNAMICLINE时有效,图形终止位置,[longitude,latitude, height] |
|
[options.img] | String |
图片材质路径; |
|
[options.color] | String |
'#fff' |
图形颜色,默认为'#fff'; |
[options.opacity] | Number |
1 |
图形透明度,默认为1; |
[options.scale] | Number |
1 |
图形缩放倍数,默认为1; |
[options.width] | Number |
options.type为EntityType.POLYLINE或'pipleline'时有效; 当options.type为EntityType.POLYLINE时,width表示直线宽度,默认为1; 当options.type为'pipleline时,width表示管线宽度,默认为10; |
|
[options.extrudedHeight] | Number |
0 |
图形拉伸高度。options.type为EntityType.POLYLINE时无效; |
[options.radius] | Number |
options.type为EntityType.ELLIPSE或EntityType.TUBE时有效; 当options.type为EntityType.ELLIPSE时,radius表示圆形半径。为必传参数; 当options.type为EntityType.TUBE时,radius表示管道半径。为必传参数; options.maximumCone 为显示半球的终点角度; |
|
[options.attribute] | Object |
属性信息; |
|
[options.perPositionHeight] | Boolean |
false |
可选,type为EntityType.POLYGON时,指定是否使用每个位置的高度,false时,默认为false; |
[options.duration] | Number |
1000 |
可选,持续时间,毫秒,默认为1000。 |
[options.displayDistance] | Number |
500000 |
可选,最远可视距离,超过则隐藏,默认为500000; |
[options.minDisplayDistance] | Number |
可选,最近可视距离; |
|
[options.outline] | Boolean |
false |
可选,是否添加图形轮廓线,默认为false; |
[options.outlineColor] | String |
'#fff' |
可选,图形轮廓线颜色,默认为'#fff'; |
[options.outlineWidth] | Number |
1 |
可选,图形轮廓线宽度,默认为1; |
[options.lineShadow] | Boolean |
false |
可选,图形轮廓线是否阴影,默认为false; |
[options.onClick] | function |
点击标记后的回调函数; |
|
[options.classificationType] | String |
BOSGeo.ClassificationType.BOTH |
贴合类型,options.type 为EntityType.POLYLINE,EntityType.DYNAMICLINE, EntityType.POLYGON, EntityType.RECTANGLE, EntityType.ELLIPSE时起效。贴合类型包括BOSGeo.ClassificationType.TERRAIN (只贴地形)、BOSGeo.ClassificationType.CESIUM_3D_TILE (只贴模型)和BOSGeo.ClassificationType.BOTH(两者都起作用),默认是BOSGeo.ClassificationType.BOTH 。 |
[options.dynamic] | Boolean |
false |
面是否为动态材质,默认为false。 |
[options.maximumCone] | Number |
180 |
可选,最大圆锥角,默认为180; |
[options.show] | Boolean |
true |
是否显示,默认为true。 |
[options.minimumHeights] | Number |
可选,指定要用于墙底而不是地球表面的高度数组,如[-100, -100, -100, -100]。 |
|
[options.maximumHeights] | Number |
可选,指定要用于墙顶的高度数组,而不是每个位置的高度。,如[0.01, 0.01, 0.01, 0.01]。 |
|
[options.num] | Number |
20 |
可选,num 返回点的数量 |
[options.zIndex] | Number |
可选,zIndex,指定用于排序地面几何图形的zIndex。 |
|
[options.formArray] | Boolean |
false |
可选,默认为false。true表示只以经度和纬度方式([longitude0,latitude0,longitude1,latitude1...])读取position数组,false表示以经度、纬度和高程方式([longitude0, latitude0, height0, longitude1, latitude1, height...])读取position数组。 |
[options.repeat] | Number |
2 |
可选,repeat ,重复次数,默认为2。 |
[options.modelUrl] | String |
可选,模型gltf路径; |
|
[options.cloneModel] | ModelGraphics |
可选,通过克隆复用模型,设置后将替换options.modelUrl的模型效果; |
|
[options.moveSpeed] | Number |
10 |
可选,moveSpeed ,动态路径的移动速率,默认为10,type为EntityType.MODEL和EntityType.BILLBOARD时起效。 |
[options.continuousDynamic] | Boolean |
true |
可选,是否持续动态,type为EntityType.MODEL和EntityType.BILLBOARD时起效 |
[options.showPath] | Boolean |
false |
可选,是否展示动态路径,type为EntityType.MODEL和EntityType.BILLBOARD时起效。 |
[options.pathWidth] | Number |
1 |
可选,设置动态路径的宽度,type为EntityType.MODEL和EntityType.BILLBOARD时起效。 |
[options.pathColor] | String |
'#ffff00' |
可选,设置动态路径的十六位颜色字符串,默认为'#ffff00'; |
[options.isTrackedEntity] | Boolean |
false |
可选,追踪动态实体entity,type为EntityType.MODEL和EntityType.BILLBOARD时起效。 |
[options.viewFrom] | Array.<Number> |
|
可选,追踪动态实体(options.isTrackedEntity为true)时获取或设置建议的初始偏移量,格式为[x,y,z]。偏移量通常在东北向上参考系中定义,但可能是另一帧,具体取决于对象的速率。 |
Example
var entityLayer = new BOSGeo.EntityLayer({
name: '实体',
type: EntityType.DYNAMICLINE, //流动线
color: '#FF7F50',
duration: 3000,
width: 10,
repeat: 1,
startPoint: [114.10196, 22.532219, 0],
endPoint: [114.108421, 22.551548, 0],
img: 'https://bosgeo.boswinner.com/geoData/images/arrow_1.png',
});
1.2. 属性
属性名 | Type | Default | Readonly | Description |
---|---|---|---|---|
show | Boolean |
否 | 是否显示图层 |
|
opacity | Number |
否 | 透明度,范围为0-1。 |
|
color | String |
否 | 修改实体的颜色,十六进制的颜色字符串 |
|
moveSpeed | Number |
否 | 设置或获取动态路径的移动速率,需Entity有动态路径 |
|
isTrackedEntity | Boolean |
否 | 是否追踪动态实体entity |
1.3. 方法
1.3.1. entityLayer.parseData(options, source, sourceType, entityType)
解析CZML / GeoJSON / KML数据
Param | Type | Description |
---|---|---|
options | Object |
配置参数 |
source | String |
CZML / GeoJSON / KML数据源加载的url地址。 |
sourceType | String |
数据源类型:'czml'、'geojson'、'kml' |
entityType | String |
实体类型,EntityType.POLYLINE,EntityType.DYNAMICLINE, EntityType.POLYGON, EntityType.RECTANGLE, EntityType.ELLIPSE,EntityType.ELLIPSOID,EntityType.BOX,EntityType.DYNAMICECLIPSE, EntityType.PIPELINE EntityType.TUBE,EntityType.WALL,EntityType.MODEL,EntityType.BILLBOARD; |
Example
let car6 = new BOSGeo.EntityLayer({
name: 'runningPeople6',
type: EntityType.MODEL,
color: '#ff0000',
moveSpeed: 35,
position: routePath4,
showPath: true,
dynamic: true,
scale: 5,
modelUrl: 'http://bosgeo.boswinner.com/geoData/models/glb/che/city_bus_aichi.glb'
});
car6.parseData({
source:'https://geoserver-alpha.boswinner.com/BOSGeo/ows?service=WFS&version=1.0.0&request=GetFeature&typeName=BOSGeo%3Ahighway_primary&maxFeatures=50&outputFormat=application%2Fjson',
entityType: EntityType.MODEL
});
1.3.2. entityLayer.zoomTo()
缩放至该图层
Example
entityLayer.zoomTo()
1.3.3. entityLayer.setPosition(position)
设置实体位置
Param | Type | Description |
---|---|---|
position | Array.<number> |
[lng, lat, height] TODO 修改会有闪烁 |
Example
entityLayer.setPosition([121.46665, 31.17088, 0, 121.4663, 31.16701, 0, 121.46384, 31.1663, 0, 121.46351, 31.16834, 0])
1.3.4. entityLayer.setVisible(visible)
设置显隐
Param | Type |
---|---|
visible | Boolean |
Example
entityLayer.setVisible(false)
1.3.5. entityLayer.removeFromCollection(collection)
从Entity实例的集合中移除
Param | Type | Description |
---|---|---|
collection | EntityCollection |
Entity实例的集合。 |
1.3.6. entityLayer.removeAll()
移除所有数据