@babylonjs/gui
Version:
Babylon.js GUI module =====================
96 lines (95 loc) • 3.24 kB
TypeScript
import type { Nullable } from "@babylonjs/core/types.js";
import { Observable } from "@babylonjs/core/Misc/observable.js";
import type { TransformNode } from "@babylonjs/core/Meshes/transformNode.js";
import type { Scene } from "@babylonjs/core/scene.js";
import { Control3D } from "./control3D.js";
import type { AbstractMesh } from "@babylonjs/core/Meshes/abstractMesh.js";
import { MRDLSliderBarMaterial } from "../materials/mrdl/mrdlSliderBarMaterial.js";
import { MRDLSliderThumbMaterial } from "../materials/mrdl/mrdlSliderThumbMaterial.js";
import { MRDLBackplateMaterial } from "../materials/mrdl/mrdlBackplateMaterial.js";
/**
* Class used to create a slider in 3D
*/
export declare class Slider3D extends Control3D {
/**
* Base Url for the models.
*/
static MODEL_BASE_URL: string;
/**
* File name for the 8x4 model.
*/
static MODEL_FILENAME: string;
private _sliderBackplate;
private _sliderBackplateMaterial;
private _sliderBarMaterial;
private _sliderThumbMaterial;
private _sliderThumb;
private _sliderBar;
private _sliderBackplateVisible;
private _minimum;
private _maximum;
private _value;
private _step;
private _draggedPosition;
/** Observable raised when the sldier value changes */
onValueChangedObservable: Observable<number>;
/**
* Creates a new slider
* @param name defines the control name
* @param sliderBackplateVisible defines if the control has a backplate, default is false
*/
constructor(name?: string, sliderBackplateVisible?: boolean);
/**
* Gets the mesh used to render this control
*/
get mesh(): Nullable<AbstractMesh>;
/** Gets or sets minimum value */
get minimum(): number;
set minimum(value: number);
/** Gets or sets maximum value */
get maximum(): number;
set maximum(value: number);
/** Gets or sets step value */
get step(): number;
set step(value: number);
/** Gets or sets current value */
get value(): number;
set value(value: number);
protected get start(): number;
protected get end(): number;
/**
* Gets the slider bar material used by this control
*/
get sliderBarMaterial(): MRDLSliderBarMaterial;
/**
* Gets the slider thumb material used by this control
*/
get sliderThumbMaterial(): MRDLSliderThumbMaterial;
/**
* Gets the slider backplate material used by this control
*/
get sliderBackplateMaterial(): MRDLBackplateMaterial;
/**
* Gets the slider bar mesh used by this control
*/
get sliderBar(): AbstractMesh;
/**
* Gets the slider thumb mesh used by this control
*/
get sliderThumb(): AbstractMesh;
/**
* Gets the slider backplate mesh used by this control
*/
get sliderBackplate(): AbstractMesh;
/** Sets a boolean indicating if the control is visible */
set isVisible(value: boolean);
protected _createNode(scene: Scene): TransformNode;
protected _affectMaterial(mesh: AbstractMesh): void;
private _createBehavior;
private _convertToPosition;
private _convertToValue;
/**
* Releases all associated resources
*/
dispose(): void;
}