标签可绘制在3D场景中与视口对齐的文本。这个构造函数不应直接使用,而是通过调用
LabelCollection#add
创建标签。
Throws:
-
DeveloperError :translucencyByDistance.far必须大于translucencyByDistance.near
-
DeveloperError :pixelOffsetScaleByDistance.far必须大于pixelOffsetScaleByDistance.near
-
DeveloperError :distanceDisplayCondition.far必须大于distanceDisplayCondition.near
Members
确定是否运行将标签文本与从右到左语言匹配的算法
-
Default Value:
false
Examples:
// Example 1.
// Set a label's rightToLeft before init
LSGlobe.Label.enableRightToLeftDetection = true;
var myLabelEntity = viewer.entities.add({
label: {
id: 'my label',
text: 'זה טקסט בעברית \n ועכשיו יורדים שורה',
}
});
// Example 2.
var myLabelEntity = viewer.entities.add({
label: {
id: 'my label',
text: 'English text'
}
});
// Set a label's rightToLeft after init
LSGlobe.Label.enableRightToLeftDetection = true;
myLabelEntity.text = 'טקסט חדש';
backgroundColor : Color
获取或设置此标签的背景色。
-
Default Value:
new Color(0.165, 0.165, 0.165, 0.8)
backgroundPadding : Cartesian2
获取或设置此标签的背景填充(以像素为单位)。
x
值控制水平填充,而
y
值控制垂直填充。
-
Default Value:
new Cartesian2(7, 5)
获取或设置与相机的距离,在深度处禁用深度测试,例如,以防止剪切地形。设置为零时,将始终应用深度测试。设置为Number.POSITIVE_INFINITY时,永远不会应用深度测试。
distanceDisplayCondition : DistanceDisplayCondition
获取或设置条件,该条件指定将在距相机的距离显示此标签。
-
Default Value:
undefined
eyeOffset : Cartesian3
获取并设置在眼坐标中应用于此标签的3D笛卡尔偏移。眼睛坐标是左撇子坐标系,其中
眼偏移通常用于将多个标签或对象布置在同一位置,例如在相应的3D模型上方布置标签。
在下方,标签位于地球的中心,但眼睛偏移使其始终处于无论观看者或地球的方向如何,它都会出现在地球的顶部。
x
指向查看者的右侧,
y
指向上方,以及
z
指向屏幕。眼坐标与世界坐标和模型坐标使用相同的比例,通常是米。
眼偏移通常用于将多个标签或对象布置在同一位置,例如在相应的3D模型上方布置标签。
在下方,标签位于地球的中心,但眼睛偏移使其始终处于无论观看者或地球的方向如何,它都会出现在地球的顶部。
l.eyeOffset =新的Cartesian3(0.0,8000000.0,0.0);
-
Default Value:
Cartesian3.ZERO
fillColor : Color
获取或设置此标签的填充颜色。
-
Default Value:
Color.WHITE
See:
获取或设置用于绘制此标签的字体。使用与CSS'font'属性相同的语法指定字体。
-
Default Value:
'30px sans-serif'
See:
heightReference : HeightReference
获取或设置此广告牌的高度参考。
-
Default Value:
HeightReference.NONE
horizontalOrigin : HorizontalOrigin
获取或设置此标签的水平原点,确定标签是否绘制在其锚定位置的左侧,中心或右侧。
-
Default Value:
HorizontalOrigin.LEFT
Example:
// Use a top, right origin
l.horizontalOrigin = LSGlobe.HorizontalOrigin.RIGHT;
l.verticalOrigin = LSGlobe.VerticalOrigin.TOP;
获取或设置拾取标签时返回的用户定义值。
outlineColor : Color
获取或设置此标签的轮廓色。
-
Default Value:
Color.BLACK
See:
获取或设置此标签的轮廓宽度。
-
Default Value:
1.0
See:
pixelOffset : Cartesian2
获取或设置屏幕空间中距此标签原点的像素偏移量。这是常用的在同一位置对齐多个标签和广告牌,例如图像和文本。的屏幕空间原点是画布的左上角;
标签的原点由黄点表示。
x
从从左到右,
y
从上到下增加。
默认
|
l.pixeloffset = new Cartesian2(25,75);
|
-
Default Value:
Cartesian2.ZERO
pixelOffsetScaleByDistance : NearFarScalar
根据Label与相机的距离来获取或设置Label的近和远像素偏移缩放比例属性。标签的像素偏移将在
NearFarScalar#nearValue
和
NearFarScalar#farValue
,而摄像头距离在上下限之内指定的
NearFarScalar#near
和
NearFarScalar#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 LSGlobe.Cartesian2(0.0, 1.0);
text.pixelOffsetScaleByDistance = new LSGlobe.NearFarScalar(1.5e2, 0.0, 8.0e6, 10.0);
// Example 2.
// disable pixel offset by distance
text.pixelOffsetScaleByDistance = undefined;
position : Cartesian3
获取或设置此标签的笛卡尔位置。
获取或设置与标签大小(以像素为单位)相乘的统一比例。比例尺
应用较大的值可能会使标签像素化。为了使文本变大而没有像素化,调用
上图从左到右分别是
1.0
不会更改标签的大小;规模大于
1.0
放大标签;小于
1.0
的正比例缩小标签。
应用较大的值可能会使标签像素化。为了使文本变大而没有像素化,调用
Label#font
时,请使用较大的字体。
上图从左到右分别是
0.5
,
1.0
,和
2.0
。
-
Default Value:
1.0
scaleByDistance : NearFarScalar
根据标签到相机的距离,获取或设置标签的近和远缩放属性。标签的比例将在
NearFarScalar#nearValue
和
NearFarScalar#farValue
,而摄像头距离在上下限之内指定的
NearFarScalar#near
和
NearFarScalar#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 LSGlobe.NearFarScalar(1.5e2, 1.5, 8.0e6, 0.0);
// Example 2.
// disable scaling by distance
label.scaleByDistance = undefined;
确定是否显示此标签。使用它可以隐藏或显示标签,而不是将其删除并将其重新添加到集合中。
-
Default Value:
true
确定是否将显示此标签后面的背景。
-
Default Value:
false
style : LabelStyle
获取或设置此标签的样式。
-
Default Value:
LabelStyle.FILL
获取或设置此标签的文本。
获取标签的总比例,即标签的比例乘以计算出的相对大小与生成的字形大小进行比较。
-
Default Value:
1.0
translucencyByDistance : NearFarScalar
根据标签到相机的距离,获取或设置标签的近和远半透明属性。标签的半透明性会在
NearFarScalar#nearValue
和
NearFarScalar#farValue
,而摄像头距离在上下限之内指定的
NearFarScalar#near
和
NearFarScalar#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 LSGlobe.NearFarScalar(1.5e2, 1.0, 8.0e6, 0.0);
// Example 2.
// disable translucency by distance
text.translucencyByDistance = undefined;
verticalOrigin : VerticalOrigin
获取或设置此标签的垂直原点,以确定标签是否为到其锚定位置的上方,下方或中心。
-
Default Value:
VerticalOrigin.BASELINE
Example:
// Use a top, right origin
l.horizontalOrigin = LSGlobe.HorizontalOrigin.RIGHT;
l.verticalOrigin = LSGlobe.VerticalOrigin.TOP;
Methods
computeScreenSpacePosition (scene, result ) → Cartesian2
考虑到眼睛和像素偏移,计算标签原点的屏幕空间位置。屏幕空间原点是画布的左上角;
x
从从左到右,
y
从上到下增加。
Name | Type | Description |
---|---|---|
scene
|
Scene | 标签所在的场景。 |
result
|
Cartesian2 | 可选 将结果存储到的对象。 |
Returns:
标签的屏幕空间位置。
Example:
console.log(l.computeScreenSpacePosition(scene).toString());
See:
确定此标签是否等于另一个标签。如果标签的所有属性均相等相等。不同集合中的标签可以相等。
Name | Type | Description |
---|---|---|
other
|
Label | 要进行相等性比较的标签。 |
Returns:
真正
标签是否相等;除此以外,
假
。
Returns:
如果该对象被破坏,则为true;否则为false。否则为假。