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

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

// Automatically generated - do not modify!

@file:JsModule("cesium")

@file:Suppress(
    "NON_EXTERNAL_DECLARATION_IN_INAPPROPRIATE_FILE",
)

package cesium

/**
 * Describes a corridor, which is a shape defined by a centerline and width that
 * conforms to the curvature of the globe. It can be placed on the surface or at altitude
 * and can optionally be extruded into a volume.
 * @see Online Documentation
 */
external class CorridorGraphics {
    /**
     * Gets the event that is raised whenever a property or sub-property is changed or modified.
     * @see Online Documentation
     */
    val definitionChanged: Event

    /**
     * Gets or sets the boolean Property specifying the visibility of the corridor.
     * @see Online Documentation
     */
    var show: Property?

    /**
     * Gets or sets a Property specifying the array of [Cartesian3] positions that define the centerline of the corridor.
     * @see Online Documentation
     */
    var positions: Property?

    /**
     * Gets or sets the numeric Property specifying the width of the outline.
     * @see Online Documentation
     */
    var width: Property?

    /**
     * Gets or sets the numeric Property specifying the altitude of the corridor.
     * @see Online Documentation
     */
    var height: Property?

    /**
     * Gets or sets the Property specifying the [HeightReference].
     * @see Online Documentation
     */
    var heightReference: Property?

    /**
     * Gets or sets the numeric Property specifying the altitude of the corridor extrusion.
     * Setting this property creates a corridor shaped volume starting at height and ending
     * at this altitude.
     * @see Online Documentation
     */
    var extrudedHeight: Property?

    /**
     * Gets or sets the Property specifying the extruded [HeightReference].
     * @see Online Documentation
     */
    var extrudedHeightReference: Property?

    /**
     * Gets or sets the [CornerType] Property specifying how corners are styled.
     * @see Online Documentation
     */
    var cornerType: Property?

    /**
     * Gets or sets the numeric Property specifying the sampling distance between each latitude and longitude point.
     * @see Online Documentation
     */
    var granularity: Property?

    /**
     * Gets or sets the boolean Property specifying whether the corridor is filled with the provided material.
     * @see Online Documentation
     */
    var fill: Property?

    /**
     * Gets or sets the Property specifying the material used to fill the corridor.
     * @see Online Documentation
     */
    var material: MaterialProperty?

    /**
     * Gets or sets the Property specifying whether the corridor is outlined.
     * @see Online Documentation
     */
    var outline: Property?

    /**
     * Gets or sets the Property specifying the [Color] of the outline.
     * @see Online Documentation
     */
    var outlineColor: Property?

    /**
     * Gets or sets the numeric Property specifying the width of the outline.
     *
     * Note: This property will be ignored on all major browsers on Windows platforms. For details, see (@link https://github.com/CesiumGS/cesium/issues/40}.
     * @see Online Documentation
     */
    var outlineWidth: Property?

    /**
     * Get or sets the enum Property specifying whether the corridor
     * casts or receives shadows from light sources.
     * @see Online Documentation
     */
    var shadows: Property?

    /**
     * Gets or sets the [DistanceDisplayCondition] Property specifying at what distance from the camera that this corridor will be displayed.
     * @see Online Documentation
     */
    var distanceDisplayCondition: Property?

    /**
     * Gets or sets the [ClassificationType] Property specifying whether this corridor will classify terrain, 3D Tiles, or both when on the ground.
     * @see Online Documentation
     */
    var classificationType: Property?

    /**
     * Gets or sets the zIndex Property specifying the ordering of the corridor.  Only has an effect if the coridor is static and neither height or exturdedHeight are specified.
     * @see Online Documentation
     */
    var zIndex: ConstantProperty?

    /**
     * Duplicates this instance.
     * @param [result] The object onto which to store the result.
     * @return The modified result parameter or a new instance if one was not provided.
     * @see Online Documentation
     */
    fun clone(result: CorridorGraphics? = definedExternally): CorridorGraphics

    /**
     * Assigns each unassigned property on this object to the value
     * of the same property on the provided source object.
     * @param [source] The object to be merged into this object.
     * @see Online Documentation
     */
    fun merge(source: CorridorGraphics)
}

inline fun CorridorGraphics(
    block: CorridorGraphics.() -> Unit,
): CorridorGraphics =
    CorridorGraphics().apply(block)




© 2015 - 2024 Weber Informatics LLC | Privacy Policy