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

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

// Automatically generated - do not modify!

@file:Suppress(
    "EXTERNAL_CLASS_CONSTRUCTOR_PROPERTY_PARAMETER",
)

package cesium

/**
 * An atmosphere drawn around the limb of the provided ellipsoid.  Based on
 * [Accurate Atmospheric Scattering](https://developer.nvidia.com/gpugems/GPUGems2/gpugems2_chapter16.html)
 * in GPU Gems 2.
 *
 * This is only supported in 3D. Atmosphere is faded out when morphing to 2D or Columbus view.
 * ```
 * scene.skyAtmosphere = new SkyAtmosphere();
 * ```
 * @see Online Documentation
 *
 * @constructor
 * @property [ellipsoid] The ellipsoid that the atmosphere is drawn around.
 *   Default value - [Ellipsoid.WGS84]
 * @see Online Documentation
 */
@JsName("\$cesium__SkyAtmosphere")
external class SkyAtmosphere(val ellipsoid: Ellipsoid = definedExternally) {
    /**
     * Determines if the atmosphere is shown.
     * @see Online Documentation
     */
    var show: Boolean

    /**
     * Compute atmosphere per-fragment instead of per-vertex.
     * This produces better looking atmosphere with a slight performance penalty.
     * @see Online Documentation
     */
    var perFragmentAtmosphere: Boolean

    /**
     * The hue shift to apply to the atmosphere. Defaults to 0.0 (no shift).
     * A hue shift of 1.0 indicates a complete rotation of the hues available.
     * @see Online Documentation
     */
    var hueShift: Double

    /**
     * The saturation shift to apply to the atmosphere. Defaults to 0.0 (no shift).
     * A saturation shift of -1.0 is monochrome.
     * @see Online Documentation
     */
    var saturationShift: Double

    /**
     * The brightness shift to apply to the atmosphere. Defaults to 0.0 (no shift).
     * A brightness shift of -1.0 is complete darkness, which will let space show through.
     * @see Online Documentation
     */
    var brightnessShift: Double

    /**
     * Returns true if this object was destroyed; otherwise, false.
     *
     * If this object was destroyed, it should not be used; calling any function other than
     * `isDestroyed` will result in a [DeveloperError] exception.
     * @return `true` if this object was destroyed; otherwise, `false`.
     * @see Online Documentation
     */
    fun isDestroyed(): Boolean

    /**
     * Destroys the WebGL resources held by this object.  Destroying an object allows for deterministic
     * release of WebGL resources, instead of relying on the garbage collector to destroy this object.
     *
     * Once an object is destroyed, it should not be used; calling any function other than
     * `isDestroyed` will result in a [DeveloperError] exception.  Therefore,
     * assign the return value (`undefined`) to the object as done in the example.
     * ```
     * skyAtmosphere = skyAtmosphere && skyAtmosphere.destroy();
     * ```
     * @see Online Documentation
     */
    fun destroy()
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy