PropertyBag

new SuperMap3D.PropertyBag(value, createPropertyCallback)

Property 其值是属性名与其他属性计算值的key-value映射。
Name Type Description
value Object optional 对象,包含属性名称到属性的key-value映射。
createPropertyCallback function optional 当 value 中的任何属性值不是 Property 时将调用的函数。

Members

readonlydefinitionChanged : Event

获取对象中包含的属性集发生变化或其中一个属性本身发生变化时引发的事件。

readonlyisConstant : Boolean

获取表示该属性是否为常量的值。 如果此对象中的所有属性项都是常量,则此属性被视为常量。

propertyNames : Array

获取在此实例上注册的所有属性的名称。

Methods

addProperty(propertyName, value, createPropertyCallback)

向此对象添加属性。
Name Type Description
propertyName String 要添加的属性的名称。
value * optional 新属性的值(如果提供)。
createPropertyCallback function optional 当将此新属性的值设置为非属性值时将调用的函数。
Throws:
  • DeveloperError : "propertyName" 已经是一个注册过的属性。

equals(other)Boolean

将此属性与所提供的属性进行比较,如果相等则返回true,否则返回 false。
Name Type Description
other Property optional 一个属性。
Returns:
如果左右相等则为 true,否则为 false。

getValue(time, result)Object

获取该属性的值。 每个包含的属性都将在给定时间内进行评估,总体结果将是一个将属性名称映射到这些值的对象。
Name Type Description
time JulianDate 检索值的时间。
result Object optional 要存储数值的对象,如果省略,则会创建一个新实例并返回。 请注意,结果中任何不属于此 PropertyBag 的属性都将保持原样。
Returns:
修改后的结果参数,或一个新实例(如果未提供结果参数)。

hasProperty(propertyName)Boolean

确定此对象是否已定义了具有给定名称的属性。
Name Type Description
propertyName String 要检查的属性名称。
Returns:
True 如果此对象定义了一个具有给定名称的属性,则为false,否则为false。

merge(source, createPropertyCallback)

将此对象上每个未指定的属性赋值给所提供源对象上相同属性的值。
Name Type Description
source Object 要合并到该对象中的对象。
createPropertyCallback function optional 当 value 中的任何属性值不是 Property 时将调用的函数。

removeProperty(propertyName)

删除之前通过 addProperty 添加的属性。
Name Type Description
propertyName String 要删除的属性名称。
Throws:
  • DeveloperError : "propertyName" 已经是一个注册过的属性。