All Downloads are FREE. Search and download functionalities are using the official Maven repository.

main.cesium.GeometryUpdater.kt Maven / Gradle / Ivy

There is a newer version: 1.90.0-10
Show newest version
// Automatically generated - do not modify!

@file:Suppress(
    "NON_EXTERNAL_DECLARATION_IN_INAPPROPRIATE_FILE",
)

package cesium

/**
 * An abstract class for updating geometry entities.
 * @see Online Documentation
 */
@JsName("\$cesium__GeometryUpdater")
external class GeometryUpdater(options: ConstructorOptions) {
    /**
     * @property [entity] The entity containing the geometry to be visualized.
     * @property [scene] The scene where visualization is taking place.
     * @property [geometryOptions] Options for the geometry
     * @property [geometryPropertyName] The geometry property name
     * @property [observedPropertyNames] The entity properties this geometry cares about
     */
    interface ConstructorOptions {
        var entity: Entity
        var scene: Scene
        var geometryOptions: Any
        var geometryPropertyName: String
        var observedPropertyNames: Array
    }

    /**
     * Gets the unique ID associated with this updater
     * @see Online Documentation
     */
    val id: String

    /**
     * Gets the entity associated with this geometry.
     * @see Online Documentation
     */
    val entity: Entity

    /**
     * Gets a value indicating if the geometry has a fill component.
     * @see Online Documentation
     */
    val fillEnabled: Boolean

    /**
     * Gets a value indicating if fill visibility varies with simulation time.
     * @see Online Documentation
     */
    val hasConstantFill: Boolean

    /**
     * Gets the material property used to fill the geometry.
     * @see Online Documentation
     */
    val fillMaterialProperty: MaterialProperty

    /**
     * Gets a value indicating if the geometry has an outline component.
     * @see Online Documentation
     */
    val outlineEnabled: Boolean

    /**
     * Gets a value indicating if the geometry has an outline component.
     * @see Online Documentation
     */
    val hasConstantOutline: Boolean

    /**
     * Gets the [Color] property for the geometry outline.
     * @see Online Documentation
     */
    val outlineColorProperty: Property

    /**
     * Gets the constant with of the geometry outline, in pixels.
     * This value is only valid if isDynamic is false.
     * @see Online Documentation
     */
    val outlineWidth: Double

    /**
     * Gets the property specifying whether the geometry
     * casts or receives shadows from light sources.
     * @see Online Documentation
     */
    val shadowsProperty: Property

    /**
     * Gets or sets the [DistanceDisplayCondition] Property specifying at what distance from the camera that this geometry will be displayed.
     * @see Online Documentation
     */
    val distanceDisplayConditionProperty: Property

    /**
     * Gets or sets the [ClassificationType] Property specifying if this geometry will classify terrain, 3D Tiles, or both when on the ground.
     * @see Online Documentation
     */
    val classificationTypeProperty: Property

    /**
     * Gets a value indicating if the geometry is time-varying.
     * If true, all visualization is delegated to a DynamicGeometryUpdater
     * returned by GeometryUpdater#createDynamicUpdater.
     * @see Online Documentation
     */
    val isDynamic: Boolean

    /**
     * Gets a value indicating if the geometry is closed.
     * This property is only valid for static geometry.
     * @see Online Documentation
     */
    val isClosed: Boolean

    /**
     * Gets an event that is raised whenever the public properties
     * of this updater change.
     * @see Online Documentation
     */
    val geometryChanged: Boolean

    /**
     * Checks if the geometry is outlined at the provided time.
     * @param [time] The time for which to retrieve visibility.
     * @return true if geometry is outlined at the provided time, false otherwise.
     * @see Online Documentation
     */
    fun isOutlineVisible(time: JulianDate): Boolean

    /**
     * Checks if the geometry is filled at the provided time.
     * @param [time] The time for which to retrieve visibility.
     * @return true if geometry is filled at the provided time, false otherwise.
     * @see Online Documentation
     */
    fun isFilled(time: JulianDate): Boolean

    /**
     * Creates the geometry instance which represents the fill of the geometry.
     * @param [time] The time to use when retrieving initial attribute values.
     * @return The geometry instance representing the filled portion of the geometry.
     * @see Online Documentation
     */
    fun createFillGeometryInstance(time: JulianDate): GeometryInstance

    /**
     * Creates the geometry instance which represents the outline of the geometry.
     * @param [time] The time to use when retrieving initial attribute values.
     * @return The geometry instance representing the outline portion of the geometry.
     * @see Online Documentation
     */
    fun createOutlineGeometryInstance(time: JulianDate): GeometryInstance

    /**
     * Returns true if this object was destroyed; otherwise, false.
     * @return True if this object was destroyed; otherwise, false.
     * @see Online Documentation
     */
    fun isDestroyed(): Boolean

    /**
     * Destroys and resources used by the object.  Once an object is destroyed, it should not be used.
     * @see Online Documentation
     */
    fun destroy()
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy