A
new BM3DTileFeature()
BM3DTileset
的特征。提供对存储在瓦片批处理表中的功能属性的访问,以及分别通过BM3DTileFeature#show
和BM3DTileFeature#color
显示/隐藏功能和更改其突出显示颜色的功能。
对BM3DTileFeature
对象的修改具有瓦片内容的寿命。如果瓦片的内容被卸载,例如,由于它超出了视图范围,需要在缓存中为可见的瓦片释放空间,请侦听BM3DTileset#tileUnload
事件以保存任何修改。同时倾听BM3DTileset#tileVisible
事件以重新应用任何修改。
请勿直接构造。通过BM3DTileContent#getFeature
或使用Scene#pick
和Scene#pickPosition
选择。
Example
// On mouse over, display all the properties for a feature in the console log.
handler.setInputAction(function(movement) {
var feature = scene.pick(movement.endPosition);
if (feature instanceof bmgl.BM3DTileFeature) {
var propertyNames = feature.getPropertyNames();
var length = propertyNames.length;
for (var i = 0; i < length; ++i) {
var propertyName = propertyNames[i];
console.log(propertyName + ': ' + feature.getProperty(propertyName));
}
}
}, bmgl.ScreenSpaceEventType.MOUSE_MOVE);
Members
color : Color
获取或设置与功能的颜色相乘的突出显示颜色。如果是白色,则不会更改功能的颜色。当评估样式的颜色时,将为所有功能设置此选项。
-
Default Value:
Color.WHITE
(readonly) primitive : BM3DTileset
Scene#pick
返回的所有对象都具有primitive
属性。这将返回包含该功能的tileset。
show : Boolean
获取或设置是否显示该功能。当评估样式的显示时,将为所有功能设置此选项。
-
Default Value:
true
(readonly) tileset : BM3DTileset
获取包含该功能的tileset。
Methods
getProperty(name) → {*}
返回具有给定名称的功能属性值的副本。这包括使用批处理表层次结构时来自此功能类和继承类的属性。
Parameters:
name
(String)
属性的区分大小写的名称。
Example
// Display all the properties for a feature in the console log.
var propertyNames = feature.getPropertyNames();
var length = propertyNames.length;
for (var i = 0; i < length; ++i) {
var propertyName = propertyNames[i];
console.log(propertyName + ': ' + feature.getProperty(propertyName));
}
返回功能的属性名称数组。这包括使用批处理表层次结构时来自此功能类和继承类的属性。
Parameters:
results
(Array.<String>)
存储结果的数组。
返回功能是否包含此属性。这包括使用批处理表层次结构时来自此功能类和继承类的属性。
Parameters:
name
(String)
属性的区分大小写的名称。
使用给定的名称设置功能属性的值。
如果不存在具有给定名称的属性,则创建该属性。
Parameters:
name
(String)
属性的区分大小写的名称。
value
(*)
将要复制的属性的值。
Examples
var height = feature.getProperty('Height'); // e.g., the height of a building
var name = 'clicked';
if (feature.getProperty(name)) {
console.log('already clicked');
} else {
feature.setProperty(name, true);
console.log('first click');
}
Throws
-
DeveloperError : 继承的批处理表层次结构属性是只读的。