@itwin/core-frontend
Version:
iTwin.js frontend components
48 lines • 1.97 kB
TypeScript
/** @packageDocumentation
* @module WebGL
*/
import { ColorDef, RgbColor } from "@itwin/core-common";
import { UniformHandle } from "./UniformHandle";
export declare abstract class FloatColor {
protected readonly _components: Float32Array;
private _tbgr;
protected constructor(numComponents: number);
protected abstract maskTbgr(tbgr: number): number;
protected abstract setComponents(r: number, g: number, b: number, a: number): void;
get red(): number;
get green(): number;
get blue(): number;
get tbgr(): number;
get isWhite(): boolean;
setColorDef(def: ColorDef): void;
setRgbColor(rgb: RgbColor): void;
setTbgr(tbgr: number): void;
protected setRgbComponents(r: number, g: number, b: number): void;
protected setRgbaComponents(r: number, g: number, b: number, a: number): void;
}
export declare class FloatRgb extends FloatColor {
constructor();
protected maskTbgr(tbgr: number): number;
protected setComponents(r: number, g: number, b: number, _a: number): void;
set(r: number, g: number, b: number): void;
bind(uniform: UniformHandle): void;
static fromColorDef(def: ColorDef): FloatRgb;
static fromRgbColor(rgb: RgbColor): FloatRgb;
static from(r: number, g: number, b: number): FloatRgb;
static fromTbgr(tbgr: number): FloatRgb;
}
export declare class FloatRgba extends FloatColor {
constructor();
protected maskTbgr(tbgr: number): number;
protected setComponents(r: number, g: number, b: number, a: number): void;
set(r: number, g: number, b: number, a: number): void;
get alpha(): number;
set alpha(alpha: number);
get hasTranslucency(): boolean;
bind(uniform: UniformHandle): void;
static fromColorDef(def: ColorDef): FloatRgba;
static fromTbgr(tbgr: number): FloatRgba;
static from(r: number, g: number, b: number, a: number): FloatRgba;
clone(out?: FloatRgba): FloatRgba;
}
//# sourceMappingURL=FloatRGBA.d.ts.map