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

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

The newest version!
// Automatically generated - do not modify!

@file:JsModule("cesium")

@file:Suppress(
    "NON_EXTERNAL_DECLARATION_IN_INAPPROPRIATE_FILE",
)

package cesium

/**
 * Describes an ellipse defined by a center point and semi-major and semi-minor axes.
 * The ellipse conforms to the curvature of the globe and can be placed on the surface or
 * at altitude and can optionally be extruded into a volume.
 * The center point is determined by the containing [Entity].
 * @see Online Documentation
 */
external class EllipseGraphics {
    /**
     * 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 ellipse.
     * @see Online Documentation
     */
    var show: Property?

    /**
     * Gets or sets the numeric Property specifying the semi-major axis.
     * @see Online Documentation
     */
    var semiMajorAxis: Property?

    /**
     * Gets or sets the numeric Property specifying the semi-minor axis.
     * @see Online Documentation
     */
    var semiMinorAxis: Property?

    /**
     * Gets or sets the numeric Property specifying the altitude of the ellipse.
     * @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 ellipse extrusion.
     * Setting this property creates 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 numeric property specifying the rotation of the ellipse counter-clockwise from north.
     * @see Online Documentation
     */
    var rotation: Property?

    /**
     * Gets or sets the numeric property specifying the rotation of the ellipse texture counter-clockwise from north.
     * @see Online Documentation
     */
    var stRotation: Property?

    /**
     * Gets or sets the numeric Property specifying the angular distance between points on the ellipse.
     * @see Online Documentation
     */
    var granularity: Property?

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

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

    /**
     * Gets or sets the Property specifying whether the ellipse 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?

    /**
     * Gets or sets the numeric Property specifying the number of vertical lines to draw along the perimeter for the outline.
     * @see Online Documentation
     */
    var numberOfVerticalLines: Property?

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

    /**
     * Gets or sets the [ClassificationType] Property specifying whether this ellipse 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 ellipse ordering.  Only has an effect if the ellipse is constant and neither height or extrudedHeight 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: EllipseGraphics? = definedExternally): EllipseGraphics

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

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




© 2015 - 2024 Weber Informatics LLC | Privacy Policy