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

main.cesium.PolylineGraphics.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

/**
 * Describes a polyline. The first two positions define a line segment,
 * and each additional position defines a line segment from the previous position. The segments
 * can be linear connected points, great arcs, or clamped to terrain.
 * @see Online Documentation
 */
@JsName("\$cesium__PolylineGraphics")
external class PolylineGraphics {
    /**
     * 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 polyline.
     * @see Online Documentation
     */
    var show: Property?

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

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

    /**
     * Gets or sets the numeric Property specifying the angular distance between each latitude and longitude if arcType is not ArcType.NONE and clampToGround is false.
     * @see Online Documentation
     */
    var granularity: Property?

    /**
     * Gets or sets the Property specifying the material used to draw the polyline.
     * @see Online Documentation
     */
    var material: MaterialProperty

    /**
     * Gets or sets the Property specifying the material used to draw the polyline when it fails the depth test.
     *
     * Requires the EXT_frag_depth WebGL extension to render properly. If the extension is not supported,
     * there may be artifacts.
     * @see Online Documentation
     */
    var depthFailMaterial: MaterialProperty

    /**
     * Gets or sets the [ArcType] Property specifying whether the line segments should be great arcs, rhumb lines or linearly connected.
     * @see Online Documentation
     */
    var arcType: Property?

    /**
     * Gets or sets the boolean Property specifying whether the polyline
     * should be clamped to the ground.
     * @see Online Documentation
     */
    var clampToGround: Property?

    /**
     * Get or sets the enum Property specifying whether the polyline
     * 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 polyline will be displayed.
     * @see Online Documentation
     */
    var distanceDisplayCondition: Property?

    /**
     * Gets or sets the [ClassificationType] Property specifying whether this polyline 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 polyline. Only has an effect if `clampToGround` is true and polylines on terrain is supported.
     * @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: PolylineGraphics? = definedExternally): PolylineGraphics

    /**
     * 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: PolylineGraphics)
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy