import { OnInit, OnDestroy, AfterViewInit, ElementRef, OnChanges, SimpleChanges, NgZone } from '@angular/core'; import * as i0 from "@angular/core"; export declare class LiquidEtherBackgroundComponent implements OnInit, AfterViewInit, OnDestroy, OnChanges { private ngZone; containerRef: ElementRef; /** 背景颜色 */ ncBgColor: string; /** 颜色数组,用于映射流体速度场的渲染颜色 */ ncColors: string[]; /** 鼠标拖动产生的流体力度(0-60) */ ncMouseForce: number; /** 鼠标影响半径(单位:像素 10-300) */ ncCursorSize: number; /** 是否启用粘性模拟(启用后运动更平滑、更厚重) */ private _isViscous; set ncIsViscous(val: boolean | string); get ncIsViscous(): boolean; /** 粘性系数(仅在 ncIsViscous 为 true 时生效 1-100) */ ncViscous: number; /** 粘性扩散的迭代次数(仅在ncIsViscous为true时生效 1-64,次数越多,迭代越平滑,速度越慢)) */ ncIterationsViscous: number; /** 强制不可压缩性所需的压力泊松迭代次数(2-64) */ ncIterationsPoisson: number; /** 在对流/扩散过程中使用固定的模拟时间步长,数值越小越精确但性能开销更高 */ ncDt: number; /** 启用BFECC平流(误差补偿)可获得更清晰的流场;禁用可略微提高性能 */ private _bfecc; set ncBFECC(val: boolean | string); get ncBFECC(): boolean; /** 模拟纹理相对于画布大小的比例(0~1,越小性能越好,模糊程度越高) */ ncResolution: number; /** 是否开启边界反弹模式(流体在边界处反弹而非穿透) */ private _isBounce; set ncIsBounce(val: boolean | string); get ncIsBounce(): boolean; /** 是否开启自动演示模式(无用户操作时自动驱动流体运动) */ private _autoDemo; set ncAutoDemo(val: boolean | string); get ncAutoDemo(): boolean; /** 自动指针运动速度(标准化单位/秒,0-1) */ ncAutoSpeed: number; /** 在自动模式下,对速度增量应用乘数(0-4) */ ncAutoIntensity: number; /** 用户移动鼠标时,从自动指针到实际光标的插值时间(秒) */ ncTakeoverDuration: number; /** 自动模式恢复前,短暂的无操作时间(毫秒) */ ncAutoResumeDelay: number; /** 激活后,自动移动速度从0加速到全速所需的时间(秒) */ ncAutoRampDuration: number; private webgl; private resizeObserver; private intersectionObserver; private rafId; private resizeRafId; private isVisible; constructor(ngZone: NgZone); ngOnInit(): void; ngAfterViewInit(): void; ngOnDestroy(): void; ngOnChanges(changes: SimpleChanges): void; private initWebGL; private makePaletteTexture; private createWebGLManager; private applyOptions; private applyOptionsToSimulation; private setupResizeObserver; private setupIntersectionObserver; private cleanup; onMouseMove(event: MouseEvent): void; onTouchStart(event: TouchEvent): void; onTouchMove(event: TouchEvent): void; onTouchEnd(): void; onMouseLeave(): void; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; }