1. PointLayer

1.1. 初始化 new PointLayer(options)

Extends: Layer

点图层 (包含billboard,label),可实现对点的添加、获取、移除、缩放至和显隐等操作

Param Type Default Description
options Object

包含以下参数的Object对象:

[options.name] String

必填,图层名称;

[options.show] Boolean false

是否显示;

[options.customGroupId] String

若使用自定义分组,该图层所在分组的名称。

Example

let pointLayer = geoViewer.layerManager.createLayer(BOSGeo.LayerType.POINT, "点图层1", {customGroupId: 'vector'});//实例化PointLayer对象
point = pointLayer.add({
    position: [114.05452615454756, 22.521097151970203, -0.005831823201912181],
    label: {
        text: "测试",
        color: BOSGeo.Color.RED,
        verticalOrigin: BOSGeo.VerticalOrigin.BOTTOM,
        pixelOffset: [0, 0],
        pixelOffsetScaleByDistance: [0, 1, 1.0e4, 0.0],
        scaleByDistance: [0, 1, 1.0e4, 0.0]
    },
});

1.2. 属性

属性名 Type Default Description
pedestalEffect Object

底座效果

show Boolean false

是否显示图层

color String

十六进制的颜色字符串

opacity Number

不透明度

1.3. 方法

1.3.1. pointLayer.addFromGeoJson(geojsonObj)

通过geojson文件添加点

Param Type Description
geojsonObj Object

geojson文件对象

1.3.2. pointLayer.add(options) ⇒ Point

添加点

Returns : Point -

一个包含billboard,label和point的对象

Param Type Description
options Object

包含以下可选参数的Object对象:

[options.position] Array.<Number> | Array.<Array.<Number>> | Cartesian3 | Array.<Cartesian3>

坐标[x,y,z];

[options.id] String

添加的点对象的id值, 默认为GUID值,选填。

[options.billboard] Object

billboard对象;

[options.billboard.id] String

billboard的id;

[options.billboard.show] Boolean

billboard配置,是否显示;

[options.billboard.color] String

billboard填充颜色,格式为十六进制颜色字符串;

[options.billboard.pixelOffset] Array.<Number> | Cartesian2

billboard配置,[x,y], 在x,y两个方向的偏移像素;

[options.billboard.pixelOffsetScaleByDistance] NearFarScalar | Array.<Number>

billboard配置,[near, nearValue, far, farValue],near-相机近距离,nearValue-近距离时的像素偏移比例,near-相机远距离,nearValue-远距离时的像素偏移比例,基于相机距离的像素偏移比例设置;

[options.billboard.heightReference] HeightReference

billboard配置,高度参考;

[options.billboard.horizontalOrigin] HorizontalOrigin

billboard配置,水平对齐方式;

[options.billboard.verticalOrigin] VerticalOrigin

billboard配置,垂直对齐方式;

[options.billboard.scale] Number

billboard配置,缩放比例;

[options.billboard.image] String

billboard配置,贴图地址或base64编码;

[options.billboard.imageSubRegion] BoundingRectangle

billboard配置,贴图裁剪区域;

[options.billboard.alignedAxis] Array.<Number> | Cartesian3

billboard配置,[x,y,z],基点位置;

[options.billboard.rotation] Number

billboard配置,旋转参数值;

[options.billboard.width] Number

billboard配置,宽度;

[options.billboard.height] Number

billboard配置,高度;

[options.billboard.scaleByDistance] NearFarScalar | Array.<Number>

billboard配置,[near, nearValue, far, farValue],near-相机近距离,nearValue-近距离时的比例,near-相机远距离,nearValue-远距离时的比例,设置基于相机距离的缩放值;

[options.billboard.translucencyByDistance] NearFarScalar

billboard配置,设置基于相机距离的透明值;

[options.billboard.sizeInMeters] Boolean

billboard配置,是否应以米为单位;

[options.billboard.nearFar] Array.<Number>

billboard配置,[min, max],控制目标在什么相机位置下显示出来。默认值[0.0,Number.MAX_VALUE],所有地球范围可见;

[options.billboard.disableDepthTestDistance] Number

billboard配置,指定从相机到禁用深度测试的距离。开启深度检测后,在指定距离内的图标将不再受深度的影响而显示,当设置为0时表示深度测试一直会起作用,当设置为无穷大时表示深度测试不起效;

[options.label] Object

label对象;

[options.label.show] Boolean

label配置,是否显示;

[options.label.scale] Number

label配置,缩放比例;

[options.label.font] String

label配置,字体;

[options.label.fillColor] String

label字体填充颜色,格式为十六进制字符串;

[options.label.outlineColor] String

label配置,十六进制边框颜色字符串;

[options.label.outlineWidth] Number

label配置,边宽;

[options.label.showBackground] Boolean

label配置,是否显示label背景;

[options.label.backgroundColor] String

label配置,十六进制背景颜色字符串;

[options.label.backgroundPadding] Array.<Number> | Cartesian2

label配置,[x,y], padding设置;

[options.label.style] LabelStyle

label配置,设置标记样式;

[options.label.pixelOffset] Array.<Number> | Cartesian2

label配置,[x,y],在x,y两个方向的偏移像素;

[options.label.pixelOffsetScaleByDistance] NearFarScalar | Array.<Number>

label配置,[near, nearValue, far, farValue],near-相机近距离,nearValue-近距离时的像素偏移比例,near-相机远距离,nearValue-远距离时的像素偏移比例,基于相机距离的像素偏移比例设置;

[options.label.eyeOffset] Array.<Number> | Cartesian3

label配置,[x,y,z],相对用户观察位置偏移;

[options.label.horizontalOrigin] HorizontalOrigin

label配置,水平对齐方式;

[options.label.verticalOrigin] VerticalOrigin

label配置,垂直对齐方式;

[options.label.scaleByDistance] NearFarScalar | Array.<Number>

label配置,[near, nearValue, far, farValue],near-相机近距离,nearValue-近距离时的比例,near-相机远距离,nearValue-远距离时的比例,设置基于相机距离的缩放值;

[options.label.translucencyByDistance] NearFarScalar

label配置,设置基于相机距离的透明值;

[options.label.nearFar] Array.<Number>

label配置,[min,max],控制目标在什么相机位置下显示出来,默认值[0.0,Number.MAX_VALUE],所有地球范围可见;

[options.label.heightReference] HeightReference

label配置,高度参考;

[options.point] Object

point对象;

[options.point.show] Boolean

point配置,是否显示;

[options.point.pixelSize] Number

point配置,点大小;

[options.point.heightReference] HeightReference

point配置,高度参考;

[options.point.color] String

point配置,点颜色;

[options.point.outlineColor] String

point配置,点边框颜色;

[options.point.outlineWidth] Number

point配置,点边框宽度;

[options.point.scaleByDistance] NearFarScalar | Array.<Number>

point配置,[near, nearValue, far, farValue],near-相机近距离,nearValue-近距离时的比例,near-相机远距离,nearValue-远距离时的比例,设置基于相机距离的缩放值;

[options.point.translucencyByDistance] NearFarScalar

point配置,基于相机距离的不透明度设置;

[options.point.nearFar] Array.<Number>

point配置,[min,max],控制目标在什么相机位置下显示出来。默认值[0.0,Number.MAX_VALUE],所有地球范围可见;

[options.point.disableDepthTestDistance] Number

point配置,指定从相机到禁用深度测试的距离。开启深度检测后,在指定距离内的图标将不再受深度的影响而显示,当设置为0时表示深度测试一直会起作用,当设置为无穷大时表示深度测试不起效;

Example

point = pointLayer.add({
    position: [110, 23, 30],
    label: {
        text: "测试",
        color: BOSGeo.Color.RED,
        verticalOrigin: BOSGeo.VerticalOrigin.BOTTOM,
        pixelOffset: [0, -100],
        pixelOffsetScaleByDistance: [0, 1, 1.0e4, 0.0],
        scaleByDistance: [0, 1, 1.0e4, 0.0]
    },
});

1.3.3. pointLayer.remove(point)

根据点对象移除

Param Type Description
point Point

点对象

1.3.4. pointLayer.removeAll()

移除该图层所有数据

1.3.5. pointLayer.zoomToLayer(callback)

Param Type Description
callback function

回调函数

缩放至本图层

Example

pointLayer.zoomToLayer();

1.3.6. pointLayer.destroy()

销毁本图层

1.3.7. pointLayer.addBillboardLine(options, position, [height]) ⇒ Object

添加带引线的广告牌

Param Type Default Description
options Object

包含以下属性的对象:

position Array.<Number>

广告牌线底部,经纬度与高程坐标数组;

[height] Number 15

广告牌距离线底部的高度;

[options.line] Object

line对象;

[options.line.color] String "#1296DB"

线的颜色;

[options.line.width] Number 6

线宽度;

[options.line.opacity] Number 1

线透明度;

[options.label] Object

label对象;

[options.label.text] String 'BOSGeo'

文字;

[options.label.pixelOffset] Cartesian2 new Cartesian2(0, -48)

label偏移量

[options.label.scaleByDistance] NearFarScalar new NearFarScalar(1.5e2, 0.5, 1.0e6, 0.0)

label根据距离缩放

[options.billboard] Object

billboard对象;

[options.billboard.image] Base64 | String

billboard图片;

[options.billboard.pixelOffset] Cartesian2 new Cartesian2(0, -48)

billboard偏移量

[options.billboard.scaleByDistance] NearFarScalar new NearFarScalar(1.5e2, 0.5, 1.0e6, 0.0)

billboard根据距离缩放

Example

var geomap = new BOSGeo.GeoMap('bosgeoContainer');
let layer = geomap.layerManager.createLayer(BOSGeo.LayerType.POINT, "点图层");
let bbdLine = layer.addBillboardLine({
    position: [114.5, 22.55, 0]
});

1.3.8. pointLayer.deleteBillboardLine(bbdLine)

删除带引线的广告牌

Param Type Description
bbdLine Object

带引线的广告牌对象,包含line和billboard的对象:

Example

var geomap = new BOSGeo.GeoMap('bosgeoContainer');
let layer = geomap.layerManager.createLayer(BOSGeo.LayerType.POINT, "点图层");
let bbdLine = layer.addBillboardLine({
    position: [114.5, 22.55, 0]
});
layer.deleteBillboardLine(bbdLine);
版权所有@盈嘉互联(北京)科技有限公司 京ICP备15051988号-9 Copyright © 2022 all right reserved,powered by Gitbook该文件修订时间: 2022-08-04 10:21:45

results matching ""

    No results matching ""