Label

internal constructor new Cesium.Label(options, labelCollection)

通过调用 LabelCollection#add 创建标签。请勿直接调用构造函数。
Name Type Description
options Label.ConstructorOptions 描述初始化选项的对象
labelCollection LabelCollection LabelCollection 的实例
Throws:
  • DeveloperError : translucencyByDistance.far 必须大于 translucencyByDistance.near
  • DeveloperError : pixelOffsetScaleByDistance.far 必须大于 pixelOffsetScaleByDistance.near
  • DeveloperError : distanceDisplayCondition.far 必须大于 distanceDisplayCondition.near
Demo:
See:

Members

static Cesium.Label.enableRightToLeftDetection : boolean

决定是否运行算法,以匹配标签的文本为从右到左的语言。
Default Value: false
Examples:
// Example 1.
// Set a label's rightToLeft before init
Cesium.Label.enableRightToLeftDetection = true;
const myLabelEntity = viewer.entities.add({
  label: {
    id: 'my label',
    text: 'זה טקסט בעברית \n ועכשיו יורדים שורה',
  }
});
// Example 2.
const myLabelEntity = viewer.entities.add({
  label: {
    id: 'my label',
    text: 'English text'
  }
});
// Set a label's rightToLeft after init
Cesium.Label.enableRightToLeftDetection = true;
myLabelEntity.text = 'טקסט חדש';
获取或设置该标签的背景颜色。
Default Value: new Color(0.165, 0.165, 0.165, 0.8)
获取或设置该标签的背景填充,单位为像素。x 值控制水平填充,y 值控制垂直填充。
Default Value: new Cartesian2(7, 5)

disableDepthTestDistance : number

获取或设置距离相机的距离,在此距离禁用深度测试,防止与地形发生剪裁。 设置为零时,始终应用深度测试。设置为 Number.POSITIVE_INFINITY 时,深度测试将永远不应用。
获取或设置指定在距离相机的多远时显示该标签的条件。
Default Value: undefined
获取和设置应用于该标签的 3D 笛卡尔偏移(在眼坐标系中)。眼坐标系是一个左手坐标系统,其中 x 指向观察者的右侧,y 指向上方,z 指向屏幕内侧。眼坐标系使用与世界和模型坐标相同的尺度,通常为米。

眼偏移通常用于将多个标签或对象排列在同一位置,例如,将标签放置在其对应的 3D 模型上方。

在下面的示例中,标签位于地球的中心,但眼偏移使其始终出现在地球的顶部,不论观察者或地球的方向如何。

l.eyeOffset = new Cartesian3(0.0, 8000000.0, 0.0);

Default Value: Cartesian3.ZERO
获取或设置该标签的填充颜色
Default Value: Color.WHITE
See:
获取或设置用于绘制该标签的字体。字体使用与 CSS 'font' 属性相同的语法指定。
Default Value: '30px sans-serif'
See:
获取或设置该公告牌的高度参考。
Default Value: HeightReference.NONE
获取或设置该标签的水平原点,决定标签是在其锚点位置的左侧、中心还是右侧绘制。


Default Value: HorizontalOrigin.LEFT
Example:
// Use a top, right origin
l.horizontalOrigin = Cesium.HorizontalOrigin.RIGHT;
l.verticalOrigin = Cesium.VerticalOrigin.TOP;
获取或设置当标签被选中时返回的用户定义值。
获取或设置该标签的轮廓颜色。
Default Value: Color.BLACK
See:

outlineWidth : number

获取或设置该标签的轮廓宽度。
Default Value: 1.0
See:
获取或设置该标签在屏幕空间中从原点的像素偏移。通常用于使多个标签和公告牌在同一位置对齐,例如图像和文本。 屏幕空间原点是画布的左上角;x 从左到右增加,y 从上到下增加。

default
l.pixeloffset = new Cartesian2(25, 75);
标签的原点由黄色点表示。
Default Value: Cartesian2.ZERO

pixelOffsetScaleByDistance : NearFarScalar

获取或设置标签基于与相机距离的近远像素偏移缩放属性。 标签的像素偏移将在 NearFarScalar#nearValueNearFarScalar#farValue 之间缩放,而相机距离处于指定的 NearFarScalar#nearNearFarScalar#far 的上下限内。 超出这些范围,标签的像素偏移缩放将保持在最近的边界。如果未定义, pixelOffsetScaleByDistance 将被禁用。
Examples:
// Example 1.
// Set a label's pixel offset scale to 0.0 when the
// camera is 1500 meters from the label and scale pixel offset to 10.0 pixels
// in the y direction the camera distance approaches 8.0e6 meters.
text.pixelOffset = new Cesium.Cartesian2(0.0, 1.0);
text.pixelOffsetScaleByDistance = new Cesium.NearFarScalar(1.5e2, 0.0, 8.0e6, 10.0);
// Example 2.
// disable pixel offset by distance
text.pixelOffsetScaleByDistance = undefined;
获取或设置该标签的笛卡尔位置。
获取或设置与标签的像素大小相乘的均匀缩放因子。 缩放值为 1.0 时不会改变标签的大小;大于 1.0 的缩放值会放大标签;小于 1.0 的正缩放值会缩小标签。

应用较大的缩放值可能会导致标签出现像素化。要使文本更大而不出现像素化,请在调用 Label#font 时使用较大的字体大小。


上图中从左到右的缩放值分别是 0.51.02.0
Default Value: 1.0
获取或设置标签基于与相机距离的近远缩放属性。 标签的缩放将在 NearFarScalar#nearValueNearFarScalar#farValue 之间插值,而相机距离处于指定的 NearFarScalar#nearNearFarScalar#far 的上下限内。 超出这些范围,标签的缩放将保持在最近的边界。如果未定义, scaleByDistance 将被禁用。
Examples:
// Example 1.
// Set a label's scaleByDistance to scale by 1.5 when the
// camera is 1500 meters from the label and disappear as
// the camera distance approaches 8.0e6 meters.
label.scaleByDistance = new Cesium.NearFarScalar(1.5e2, 1.5, 8.0e6, 0.0);
// Example 2.
// disable scaling by distance
label.scaleByDistance = undefined;
决定该标签是否显示。使用此属性来隐藏或显示标签,而不是移除它并重新添加到集合中。
Default Value: true

showBackground : boolean

决定该标签后面是否将显示背景。
Default Value: false
获取或设置该标签的样式。
Default Value: LabelStyle.FILL
获取或设置该标签的文本。

totalScale : number

获取标签的总缩放值,即标签的缩放与所需字体的计算相对大小与生成的字形大小的乘积。
Default Value: 1.0
获取或设置标签基于与相机距离的近远半透明属性。 标签的半透明度将在 NearFarScalar#nearValueNearFarScalar#farValue 之间插值,而相机距离处于指定的 NearFarScalar#nearNearFarScalar#far 的上下限内。 超出这些范围,标签的半透明度将保持在最近的边界。如果未定义, translucencyByDistance 将被禁用。
Examples:
// Example 1.
// Set a label's translucencyByDistance to 1.0 when the
// camera is 1500 meters from the label and disappear as
// the camera distance approaches 8.0e6 meters.
text.translucencyByDistance = new Cesium.NearFarScalar(1.5e2, 1.0, 8.0e6, 0.0);
// Example 2.
// disable translucency by distance
text.translucencyByDistance = undefined;
获取或设置该标签的垂直原点,决定标签是在其锚点位置的上方、下方还是中心。


Default Value: VerticalOrigin.BASELINE
Example:
// Use a top, right origin
l.horizontalOrigin = Cesium.HorizontalOrigin.RIGHT;
l.verticalOrigin = Cesium.VerticalOrigin.TOP;

Methods

computeScreenSpacePosition(scene, result)Cartesian2

计算标签原点的屏幕空间位置,考虑眼偏移和像素偏移。 屏幕空间原点是画布的左上角;x 从左到右增加,y 从上到下增加。
Name Type Description
scene Scene 标签所在的场景。
result Cartesian2 optional 存储结果的对象。
Returns:
标签的屏幕空间位置。
Example:
console.log(l.computeScreenSpacePosition(scene).toString());
See:

equals(other)boolean

确定该标签是否等于另一个标签。如果所有属性相等,则标签相等。不同集合中的标签也可以相等。
Name Type Description
other Label 要比较是否相等的标签。
Returns:
如果标签相等则返回 true;否则返回 false

isDestroyed()boolean

如果该对象已被销毁,则返回 true;否则返回 false。

如果该对象已被销毁,则不应使用;调用除 isDestroyed 之外的任何函数将导致 DeveloperError 异常。
Returns:
如果该对象已被销毁,则返回 true;否则返回 false。

Type Definitions

Cesium.Label.ConstructorOptions

Label 构造函数的初始化选项
Properties:
Name Type Attributes Default Description
position Cartesian3 标签的笛卡尔位置。
id * <optional>
用户自定义的对象,当使用 Scene#pick 选择标签时返回。
show boolean <optional>
true 决定该标签是否显示。
text string <optional>
指定标签文本的字符串。
font string <optional>
'30px sans-serif' 指定用于绘制该标签的字体的字符串。字体使用与 CSS 'font' 属性相同的语法指定。
style LabelStyle <optional>
LabelStyle.FILL 指定标签样式的 LabelStyle
scale number <optional>
1.0 指定与标签大小相乘的均匀缩放数字。
showBackground boolean <optional>
false 决定是否显示该标签后面的背景。
backgroundColor Color <optional>
new Color(0.165, 0.165, 0.165, 0.8) 指定标签背景颜色的 Color
backgroundPadding Cartesian2 <optional>
new Cartesian2(7, 5) 指定背景的水平和垂直填充(以像素为单位)的 Cartesian2
pixelOffset Cartesian2 <optional>
Cartesian2.ZERO 指定该标签在屏幕空间中从原点的像素偏移的 Cartesian2
eyeOffset Cartesian3 <optional>
Cartesian3.ZERO 指定在眼坐标系中应用于该标签的 3D 笛卡尔偏移的 Cartesian3
horizontalOrigin HorizontalOrigin <optional>
HorizontalOrigin.LEFT 指定该标签的水平原点的 HorizontalOrigin
verticalOrigin VerticalOrigin <optional>
VerticalOrigin.BASELINE 指定该标签的垂直原点的 VerticalOrigin
heightReference HeightReference <optional>
HeightReference.NONE 指定该标签的高度参考的 HeightReference
fillColor Color <optional>
Color.WHITE 指定标签填充颜色的 Color
outlineColor Color <optional>
Color.BLACK 指定标签轮廓颜色的 Color
outlineWidth number <optional>
1.0 指定标签轮廓宽度的数字。
translucencyByDistance NearFarScalar <optional>
指定基于标签与相机距离的标签的近远半透明属性的 NearFarScalar
pixelOffsetScaleByDistance NearFarScalar <optional>
指定基于标签与相机距离的标签的近远像素偏移缩放属性的 NearFarScalar
scaleByDistance NearFarScalar <optional>
指定基于标签与相机距离的标签的近远缩放属性的 NearFarScalar
distanceDisplayCondition DistanceDisplayCondition <optional>
指定在距离相机的某个距离内显示该标签的 DistanceDisplayCondition
disableDepthTestDistance number <optional>
指定距离相机的距离,在此处禁用深度测试,以防止与地形剪裁。
需要帮助?获得答案的最快方法是来自社区和团队 Cesium Forum.