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

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

// Automatically generated - do not modify!

@file:JsModule("cesium")

@file:Suppress(
    "EXTERNAL_CLASS_CONSTRUCTOR_PROPERTY_PARAMETER",
)

package cesium

/**
 * The view model for [Cesium3DTilesInspector].
 * @see Online Documentation
 *
 * @constructor
 * @property [scene] The scene instance to use.
 * @property [performanceContainer] The container for the performance display
 * @see Online Documentation
 */
external class Cesium3DTilesInspectorViewModel(
    val scene: Scene,
    val performanceContainer: org.w3c.dom.HTMLElement,
) {
    /**
     * Gets or sets the flag to enable performance display.  This property is observable.
     * @see Online Documentation
     */
    var performance: Boolean

    /**
     * Gets or sets the flag to show statistics.  This property is observable.
     * @see Online Documentation
     */
    var showStatistics: Boolean

    /**
     * Gets or sets the flag to show pick statistics.  This property is observable.
     * @see Online Documentation
     */
    var showPickStatistics: Boolean

    /**
     * Gets or sets the flag to show the inspector.  This property is observable.
     * @see Online Documentation
     */
    var inspectorVisible: Boolean

    /**
     * Gets or sets the flag to show the tileset section.  This property is observable.
     * @see Online Documentation
     */
    var tilesetVisible: Boolean

    /**
     * Gets or sets the flag to show the display section.  This property is observable.
     * @see Online Documentation
     */
    var displayVisible: Boolean

    /**
     * Gets or sets the flag to show the update section.  This property is observable.
     * @see Online Documentation
     */
    var updateVisible: Boolean

    /**
     * Gets or sets the flag to show the logging section.  This property is observable.
     * @see Online Documentation
     */
    var loggingVisible: Boolean

    /**
     * Gets or sets the flag to show the style section.  This property is observable.
     * @see Online Documentation
     */
    var styleVisible: Boolean

    /**
     * Gets or sets the flag to show the tile info section.  This property is observable.
     * @see Online Documentation
     */
    var tileDebugLabelsVisible: Boolean

    /**
     * Gets or sets the flag to show the optimization info section. This property is observable.
     * @see Online Documentation
     */
    var optimizationVisible: Boolean

    /**
     * Gets or sets the JSON for the tileset style.  This property is observable.
     * @see Online Documentation
     */
    var styleString: String

    /**
     * Gets the names of the properties in the tileset.  This property is observable.
     * @see Online Documentation
     */
    val properties: Array

    /**
     * Gets or sets the flag to enable dynamic screen space error.  This property is observable.
     * @see Online Documentation
     */
    var dynamicScreenSpaceError: Boolean

    /**
     * Gets or sets the color blend mode.  This property is observable.
     * @see Online Documentation
     */
    var colorBlendMode: Cesium3DTileColorBlendMode

    /**
     * Gets or sets the flag to enable picking.  This property is observable.
     * @see Online Documentation
     */
    var picking: Boolean

    /**
     * Gets or sets the flag to colorize tiles.  This property is observable.
     * @see Online Documentation
     */
    var colorize: Boolean

    /**
     * Gets or sets the flag to draw with wireframe.  This property is observable.
     * @see Online Documentation
     */
    var wireframe: Boolean

    /**
     * Gets or sets the flag to show bounding volumes.  This property is observable.
     * @see Online Documentation
     */
    var showBoundingVolumes: Boolean

    /**
     * Gets or sets the flag to show content volumes.  This property is observable.
     * @see Online Documentation
     */
    var showContentBoundingVolumes: Boolean

    /**
     * Gets or sets the flag to show request volumes.  This property is observable.
     * @see Online Documentation
     */
    var showRequestVolumes: Boolean

    /**
     * Gets or sets the flag to suspend updates.  This property is observable.
     * @see Online Documentation
     */
    var freezeFrame: Boolean

    /**
     * Gets or sets the flag to show debug labels only for the currently picked tile.  This property is observable.
     * @see Online Documentation
     */
    var showOnlyPickedTileDebugLabel: Boolean

    /**
     * Gets or sets the flag to show tile geometric error.  This property is observable.
     * @see Online Documentation
     */
    var showGeometricError: Boolean

    /**
     * Displays the number of commands, points, triangles and features used per tile.  This property is observable.
     * @see Online Documentation
     */
    var showRenderingStatistics: Boolean

    /**
     * Displays the memory used per tile.  This property is observable.
     * @see Online Documentation
     */
    var showMemoryUsage: Boolean

    /**
     * Gets or sets the flag to show the tile url.  This property is observable.
     * @see Online Documentation
     */
    var showUrl: Boolean

    /**
     * Gets or sets the maximum screen space error.  This property is observable.
     * @see Online Documentation
     */
    var maximumScreenSpaceError: Int

    /**
     * Gets or sets the dynamic screen space error density.  This property is observable.
     * @see Online Documentation
     */
    var dynamicScreenSpaceErrorDensity: Double

    /**
     * Gets or sets the dynamic screen space error density slider value.
     * This allows the slider to be exponential because values tend to be closer to 0 than 1.
     * This property is observable.
     * @see Online Documentation
     */
    var dynamicScreenSpaceErrorDensitySliderValue: Double

    /**
     * Gets or sets the dynamic screen space error factor.  This property is observable.
     * @see Online Documentation
     */
    var dynamicScreenSpaceErrorFactor: Double

    /**
     * Gets or sets the flag to enable point cloud shading. This property is observable.
     * @see Online Documentation
     */
    var pointCloudShading: Boolean

    /**
     * Gets or sets the geometric error scale.  This property is observable.
     * @see Online Documentation
     */
    var geometricErrorScale: Double

    /**
     * Gets or sets the maximum attenuation.  This property is observable.
     * @see Online Documentation
     */
    var maximumAttenuation: Int

    /**
     * Gets or sets the base resolution.  This property is observable.
     * @see Online Documentation
     */
    var baseResolution: Int

    /**
     * Gets or sets the flag to enable eye dome lighting. This property is observable.
     * @see Online Documentation
     */
    var eyeDomeLighting: Boolean

    /**
     * Gets or sets the eye dome lighting strength.  This property is observable.
     * @see Online Documentation
     */
    var eyeDomeLightingStrength: Double

    /**
     * Gets or sets the eye dome lighting radius.  This property is observable.
     * @see Online Documentation
     */
    var eyeDomeLightingRadius: Double

    /**
     * Gets or sets the pick state
     * @see Online Documentation
     */
    var pickActive: Boolean

    /**
     * Gets or sets the flag to determine if level of detail skipping should be applied during the traversal.
     * This property is observable.
     * @see Online Documentation
     */
    var skipLevelOfDetail: Boolean

    /**
     * Gets or sets the multiplier defining the minimum screen space error to skip. This property is observable.
     * @see Online Documentation
     */
    var skipScreenSpaceErrorFactor: Int

    /**
     * Gets or sets the screen space error that must be reached before skipping levels of detail. This property is observable.
     * @see Online Documentation
     */
    var baseScreenSpaceError: Int

    /**
     * Gets or sets the constant defining the minimum number of levels to skip when loading tiles. This property is observable.
     * @see Online Documentation
     */
    var skipLevels: Int

    /**
     * Gets or sets the flag which, when true, only tiles that meet the maximum screen space error will ever be downloaded.
     * This property is observable.
     * @see Online Documentation
     */
    var immediatelyLoadDesiredLevelOfDetail: Boolean

    /**
     * Gets or sets the flag which determines whether siblings of visible tiles are always downloaded during traversal.
     * This property is observable
     * @see Online Documentation
     */
    var loadSiblings: Boolean

    /**
     * Gets the statistics text.  This property is observable.
     * @see Online Documentation
     */
    val statisticsText: String

    /**
     * Gets the pick statistics text.  This property is observable.
     * @see Online Documentation
     */
    val pickStatisticsText: String

    /**
     * Gets the available blend modes
     * @see Online Documentation
     */
    val colorBlendModes: Array

    /**
     * Gets the editor error message
     * @see Online Documentation
     */
    val editorError: String

    /**
     * Gets or sets the tileset of the view model.
     * @see Online Documentation
     */
    var tileset: Cesium3DTileset

    /**
     * Gets the current feature of the view model.
     * @see Online Documentation
     */
    var feature: Cesium3DTileFeature

    /**
     * Gets the current tile of the view model
     * @see Online Documentation
     */
    var tile: Cesium3DTile

    /**
     * Toggles the pick tileset mode
     * @see Online Documentation
     */
    fun togglePickTileset()

    /**
     * Toggles the inspector visibility
     * @see Online Documentation
     */
    fun toggleInspector()

    /**
     * Toggles the visibility of the tileset section
     * @see Online Documentation
     */
    fun toggleTileset()

    /**
     * Toggles the visibility of the display section
     * @see Online Documentation
     */
    fun toggleDisplay()

    /**
     * Toggles the visibility of the update section
     * @see Online Documentation
     */
    fun toggleUpdate()

    /**
     * Toggles the visibility of the logging section
     * @see Online Documentation
     */
    fun toggleLogging()

    /**
     * Toggles the visibility of the style section
     * @see Online Documentation
     */
    fun toggleStyle()

    /**
     * Toggles the visibility of the tile Debug Info section
     * @see Online Documentation
     */
    fun toggleTileDebugLabels()

    /**
     * Toggles the visibility of the optimization section
     * @see Online Documentation
     */
    fun toggleOptimization()

    /**
     * Trims tile cache
     * @see Online Documentation
     */
    fun trimTilesCache()

    /**
     * Compiles the style in the style editor.
     * @see Online Documentation
     */
    fun compileStyle()

    /**
     * Handles key press events on the style editor.
     * @see Online Documentation
     */
    fun styleEditorKeyPress()

    /**
     * @return true if the object has been destroyed, false otherwise.
     * @see Online Documentation
     */
    fun isDestroyed(): Boolean

    /**
     * Destroys the widget.  Should be called if permanently
     * removing the widget from layout.
     * @see Online Documentation
     */
    fun destroy()

    companion object {
        /**
         * Generates an HTML string of the statistics
         * @param [tileset] The tileset
         * @param [isPick] Whether this is getting the statistics for the pick pass
         * @return The formatted statistics
         * @see Online Documentation
         */
        fun getStatistics(
            tileset: Cesium3DTileset,
            isPick: Boolean,
        ): String
    }
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy