@itwin/core-frontend
Version:
iTwin.js frontend components
58 lines • 2.28 kB
TypeScript
/** @packageDocumentation
* @module WebGL
*/
import { FeatureAppearanceProvider, PackedFeature, RenderFeatureTable } from "@itwin/core-common";
import { WebGLDisposable } from "./Disposable";
import { UniformHandle } from "./UniformHandle";
import { Hilites, Target } from "./Target";
import { BatchOptions } from "../../../common/render/BatchOptions";
export declare function isFeatureHilited(feature: PackedFeature, hilites: Hilites, isModelHilited: boolean): boolean;
/** @internal */
export type FeatureOverridesCleanup = () => void;
/** @internal */
export declare class FeatureOverrides implements WebGLDisposable {
readonly target: Target;
private readonly _options;
private _lut?;
private _mostRecentSymbologyOverrides?;
private _lastFlashId;
private _hiliteSyncObserver;
private _pickExclusionsSyncObserver;
private _anyOverridden;
private _allHidden;
private _anyTranslucent;
private _anyViewIndependentTranslucent;
private _anyOpaque;
private _anyHilited;
private _lutParams;
private _uniformSymbologyFlags;
private _cleanup?;
get anyOverridden(): boolean;
get allHidden(): boolean;
get anyTranslucent(): boolean;
get anyViewIndependentTranslucent(): boolean;
get anyOpaque(): boolean;
get anyHilited(): boolean;
/** For tests. */
get lutData(): Uint8Array | undefined;
get byteLength(): number;
get isUniform(): boolean;
private updateUniformSymbologyFlags;
getUniformOverrides(): Uint8Array;
private _initialize;
private _update;
private setTransparency;
private buildLookupTable;
private updateFlashedAndHilited;
private updateFlashed;
private constructor();
static createFromTarget(target: Target, options: BatchOptions, cleanup: FeatureOverridesCleanup | undefined): FeatureOverrides;
get isDisposed(): boolean;
[Symbol.dispose](): void;
initFromMap(map: RenderFeatureTable, provider: FeatureAppearanceProvider): void;
update(features: RenderFeatureTable, provider: FeatureAppearanceProvider): void;
bindLUTParams(uniform: UniformHandle): void;
bindLUT(uniform: UniformHandle): void;
bindUniformSymbologyFlags(uniform: UniformHandle): void;
}
//# sourceMappingURL=FeatureOverrides.d.ts.map