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

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

// Automatically generated - do not modify!

@file:Suppress(
    "NON_EXTERNAL_DECLARATION_IN_INAPPROPRIATE_FILE",
)

package cesium

/**
 * A 3D model based on [glTF](https://github.com/KhronosGroup/glTF), the runtime asset format for WebGL, OpenGL ES, and OpenGL.
 * The position and orientation of the model is determined by the containing [Entity].
 *
 * Cesium includes support for glTF geometry, materials, animations, and skinning.
 * Cameras and lights are not currently supported.
 * @see Online Documentation
 */
@JsName("\$cesium__ModelGraphics")
external class ModelGraphics {
    /**
     * 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 model.
     * @see Online Documentation
     */
    var show: Property?

    /**
     * Gets or sets the string Property specifying the URI of the glTF asset.
     * @see Online Documentation
     */
    var uri: Property?

    /**
     * Gets or sets the numeric Property specifying a uniform linear scale
     * for this model. Values greater than 1.0 increase the size of the model while
     * values less than 1.0 decrease it.
     * @see Online Documentation
     */
    var scale: Property?

    /**
     * Gets or sets the numeric Property specifying the approximate minimum
     * pixel size of the model regardless of zoom. This can be used to ensure that
     * a model is visible even when the viewer zooms out.  When `0.0`,
     * no minimum size is enforced.
     * @see Online Documentation
     */
    var minimumPixelSize: Property?

    /**
     * Gets or sets the numeric Property specifying the maximum scale
     * size of a model. This property is used as an upper limit for
     * [ModelGraphics.minimumPixelSize].
     * @see Online Documentation
     */
    var maximumScale: Property?

    /**
     * Get or sets the boolean Property specifying whether textures
     * may continue to stream in after the model is loaded.
     * @see Online Documentation
     */
    var incrementallyLoadTextures: Property?

    /**
     * Gets or sets the boolean Property specifying if glTF animations should be run.
     * @see Online Documentation
     */
    var runAnimations: Property?

    /**
     * Gets or sets the boolean Property specifying if glTF animations should hold the last pose for time durations with no keyframes.
     * @see Online Documentation
     */
    var clampAnimations: Property?

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

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

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

    /**
     * Gets or sets the numeric Property specifying the size of the silhouette in pixels.
     * @see Online Documentation
     */
    var silhouetteSize: Property?

    /**
     * Gets or sets the Property specifying the [Color] that blends with the model's rendered color.
     * @see Online Documentation
     */
    var color: Property?

    /**
     * Gets or sets the enum Property specifying how the color blends with the model.
     * @see Online Documentation
     */
    var colorBlendMode: Property?

    /**
     * A numeric Property specifying the color strength when the `colorBlendMode` is MIX.
     * A value of 0.0 results in the model's rendered color while a value of 1.0 results in a solid color, with
     * any value in-between resulting in a mix of the two.
     * @see Online Documentation
     */
    var colorBlendAmount: Property?

    /**
     * A property specifying the [Cartesian2] used to scale the diffuse and specular image-based lighting contribution to the final color.
     * @see Online Documentation
     */
    var imageBasedLightingFactor: Property?

    /**
     * A property specifying the [Cartesian3] light color when shading the model. When `undefined` the scene's light color is used instead.
     * @see Online Documentation
     */
    var lightColor: Property?

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

    /**
     * Gets or sets the set of node transformations to apply to this model.  This is represented as an [PropertyBag], where keys are
     * names of nodes, and values are [TranslationRotationScale] Properties describing the transformation to apply to that node.
     * The transformation is applied after the node's existing transformation as specified in the glTF, and does not replace the node's existing transformation.
     * @see Online Documentation
     */
    var nodeTransformations: PropertyBag

    /**
     * Gets or sets the set of articulation values to apply to this model.  This is represented as an [PropertyBag], where keys are
     * composed as the name of the articulation, a single space, and the name of the stage.
     * @see Online Documentation
     */
    var articulations: PropertyBag

    /**
     * A property specifying the [ClippingPlaneCollection] used to selectively disable rendering the model.
     * @see Online Documentation
     */
    var clippingPlanes: Property?

    /**
     * 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: ModelGraphics? = definedExternally): ModelGraphics

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




© 2015 - 2024 Weber Informatics LLC | Privacy Policy