cesium中Entity的billboardGraphics添加图片标注
1 前言
cesium可以利用billboardGraphics类将创建的图片标注添加到地球中。
cesium探索系列目录
:传送门
2 pointGraphics类说明
2.1 创建pointGraphics的options
Cesium.pointGraphics.ConstructorOptions
名称 | 默认值 | 描述 |
---|---|---|
show | true | 指定图片标注是否可见 |
image | 指定用于图片标注的图像、URI或画布的属性 | |
scale | 1 | 指定图像的大小比例 |
pixelOffset | Cartesian2.ZERO | 指定像素偏移的Cartesia2属性 |
eyeOffset | Cartesian3.ZERO | 指定眼线偏移 |
horizontalOrigin | HorizontalOrigin.CENTER | 指定水平原点的特性 |
verticalOrigin | VerticalOrigin.CENTER | 指定垂直原点的特性 |
heightReference | 指定高度相对于什么的属性 | |
color | Color.WHITE | 指定图像色调颜色的特性 |
rotation | 0 | 指定围绕对齐轴的旋转角度 |
alignedAxis | Cartesian3.ZERO | 指定单位向量旋转轴 |
sizeInMeters | 一个布尔属性,指定此图片标注的大小是否应以米为单位进行测量。 | |
width | 一个数字属性,以像素为单位指定图片标注的宽度,覆盖本机大小。 | |
height | 一个数字属性,以像素为单位指定图片标注的高度,覆盖本机大小。 | |
scaleByDistance | NearFarScalar属性,用于根据与摄影机的距离缩放点。 | |
translucencyByDistance | NearFarScalar属性,用于根据与摄影机的距离设置半透明性。 | |
pixelOffsetScaleByDistance | NearFarScalar属性,用于根据与摄影机的距离设置pixelOffset。 | |
imageSubRegion | 指定BoundingRectangle的属性,该属性定义要用于图片标注的图像的子区域,而不是整个图像,从左下角开始以像素为单位测量。 | |
distanceDisplayCondition | 指定此图片标注将显示在距摄影机的距离处的属性。 | |
disableDepthTestDistance | 指定与要禁用深度测试的摄影机的距离的属性。 |
2.2 常用方法
clone(result)
复制该billboardGraphics实例,输入一个billboardGraphics,返回一个相同的billboardGraphics。
merge(source)
将此对象上每个未分配的属性分配给提供的源对象上相同属性的值。
3 billboardGraphics的创建与使用
// 添加图片标注
const billboard = new Cesium.Entity({
position: Cesium.Cartesian3.fromDegrees(114.3, 39.9, 10),
billboard: {
image: "./location.png",
width: 30, // 图片宽度,单位px
height: 30, // 图片高度,单位px
eyeOffset: new Cesium.Cartesian3(0, 0, -10),//与坐标位置的偏移距离
color: Cesium.Color.RED,//颜色
scale: 1, // 缩放比例
},
});
viewer.entities.add(billboard)