iflow-engine-base 3.4.4 → 3.4.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.d.ts CHANGED
@@ -552,6 +552,8 @@ declare class ComposerModule {
552
552
  outputPass: any;
553
553
  fxaaPass: any;
554
554
  constructor(engine: any);
555
+ applyClippingToAmbientOcclusionPass(pass: any): void;
556
+ syncAmbientOcclusionClipping(): void;
555
557
  resize(width?: number, height?: number): void;
556
558
  init(): void;
557
559
  }
@@ -1472,6 +1474,34 @@ declare class EngineModelModule {
1472
1474
  setGTAOIntensity(value: number): void;
1473
1475
  }
1474
1476
 
1477
+ declare interface EngineSettings {
1478
+ render: {
1479
+ mode: RenderMode;
1480
+ contrast: number;
1481
+ saturation: number;
1482
+ shadowIntensity: number;
1483
+ lightIntensity: number;
1484
+ gtaoIntensity: number;
1485
+ };
1486
+ display: {
1487
+ showEdge: boolean;
1488
+ edgeOpacity: number;
1489
+ showGrid: boolean;
1490
+ showLevel: boolean;
1491
+ showGround: boolean;
1492
+ groundId: string;
1493
+ groundHeight: number;
1494
+ };
1495
+ environment: {
1496
+ type: EnvironmentType;
1497
+ hdrId: string;
1498
+ hdrIntensity: number;
1499
+ skyPreset: SkyPresetName;
1500
+ skyParams: SkyParams;
1501
+ skyIntensity: number;
1502
+ };
1503
+ }
1504
+
1475
1505
  declare class EngineStatus {
1476
1506
  private engine;
1477
1507
  isFree: boolean;
@@ -1502,6 +1532,8 @@ declare class EngineStatus2d {
1502
1532
  */
1503
1533
  declare type EntityType = 'LINE' | 'POLYLINE' | 'CIRCLE' | 'HATCH' | 'INSERT' | 'MTEXT' | 'DIMENSIONLINEAR';
1504
1534
 
1535
+ declare type EnvironmentType = 'none' | 'hdr' | 'sky';
1536
+
1505
1537
  /**
1506
1538
  * 事件监听器函数类型
1507
1539
  */
@@ -1858,7 +1890,7 @@ declare class Ground {
1858
1890
  /** 获取地面列表(id + 名称) */
1859
1891
  getGroundList(): Array<{
1860
1892
  id: string;
1861
- name: string;
1893
+ names: string[];
1862
1894
  }>;
1863
1895
  /** 获取当前地面 id */
1864
1896
  getCurrentId(): GroundId;
@@ -2610,11 +2642,15 @@ declare class ModelEdge {
2610
2642
  private groupEdge;
2611
2643
  private material;
2612
2644
  private modelEdgeLoaded;
2645
+ private modelEdgeLoadingPromise;
2613
2646
  private indexes;
2614
2647
  constructor(engine: any);
2615
2648
  active(): void;
2616
2649
  disActive(): void;
2617
- private loadModelEdge;
2650
+ private hasPendingModelEdges;
2651
+ private loadZipJsonAsync;
2652
+ private ensureModelEdgeData;
2653
+ loadModelEdge(): Promise<void>;
2618
2654
  private show;
2619
2655
  getModelEdge(url: string, id: Number): any;
2620
2656
  hideModelEdge(url: string, id: Number): void;
@@ -3246,6 +3282,8 @@ declare class RangeScale {
3246
3282
  private fitCameraToBoundingBox;
3247
3283
  }
3248
3284
 
3285
+ declare type RenderMode = 'simple' | 'balance' | 'advanced';
3286
+
3249
3287
  declare class RenderModule {
3250
3288
  private engine;
3251
3289
  renderer: THREE_2.WebGLRenderer | null;
@@ -3587,74 +3625,51 @@ declare interface SearchResult {
3587
3625
 
3588
3626
  declare class Setting {
3589
3627
  private engine;
3590
- private ground;
3628
+ private settings;
3629
+ private environmentApplyVersion;
3591
3630
  constructor(engine: any);
3592
3631
  init(): void;
3593
- /**
3594
- * 隐藏或显示性能监视器
3595
- * @param visible - true显示,false隐藏
3596
- */
3597
- setStatsVisible(visible: boolean): void;
3598
- /**
3599
- * 设置环境光照强度
3600
- * @param intensity - 光照强度,默认范围 0-5
3601
- */
3632
+ getSettings(): EngineSettings;
3633
+ getPresetLists(): {
3634
+ ground: SettingPresetItem[];
3635
+ hdr: SettingPresetItem[];
3636
+ sky: SettingPresetItem[];
3637
+ };
3638
+ setSettings(data: Partial<EngineSettings>): Promise<void>;
3639
+ resetToDefault(): Promise<void>;
3640
+ setRenderMode(mode: RenderMode): void;
3641
+ setContrast(value: number): void;
3642
+ setSaturation(value: number): void;
3643
+ setShadowIntensity(value: number): void;
3644
+ setLightIntensity(value: number): void;
3645
+ setGTAOIntensity(value: number): void;
3646
+ setShowEdge(show: boolean): void;
3647
+ setEdgeOpacity(value: number): void;
3648
+ setShowGrid(show: boolean): void;
3649
+ setShowLevel(show: boolean): void;
3650
+ setShowGround(show: boolean): void;
3651
+ setGroundId(id: string): void;
3652
+ setGroundHeight(height: number): void;
3653
+ setEnvironmentType(type: EnvironmentType): Promise<void>;
3654
+ setHdrId(id: string): Promise<void>;
3655
+ setHdrIntensity(value: number): void;
3656
+ setSkyPreset(preset: SkyPresetName): void;
3657
+ setSkyParams(params: SkyParams): void;
3658
+ setSkyIntensity(value: number): void;
3602
3659
  setAmbientLightIntensity(intensity: number): void;
3603
- /**
3604
- * 设置环境光照颜色
3605
- * @param color - 颜色,可以是十六进制数字 (0xffffff) 或字符串 ('#ffffff')
3606
- */
3607
- setAmbientLightColor(color: number | string): void;
3608
- /**
3609
- * 设置定向光源强度
3610
- * @param intensity - 光照强度,默认范围 0-5
3611
- */
3612
- setDirectionalLightIntensity(intensity: number): void;
3613
- /**
3614
- * 设置定向光源颜色
3615
- * @param color - 颜色,可以是十六进制数字 (0xffffff) 或字符串 ('#ffffff')
3616
- */
3617
- setDirectionalLightColor(color: number | string): void;
3618
- /**
3619
- * 设置阴影精细度(阴影贴图分辨率)
3620
- * @param quality - 质量等级:'low' (1024), 'medium' (2048), 'high' (4096), 'ultra' (8192)
3621
- */
3622
- setShadowQuality(quality: 'low' | 'medium' | 'high' | 'ultra'): void;
3623
- /**
3624
- * 设置是否开启定向光阴影
3625
- * @param enabled - true开启,false关闭
3626
- */
3627
- setDirectionalLightShadow(enabled: boolean): void;
3628
- /**
3629
- * 设置是否开启GTAO阴影(环境光遮蔽)
3630
- * @param enabled - true开启,false关闭
3631
- */
3632
- setGTAOEnabled(enabled: boolean): void;
3633
- /**
3634
- * 设置场景饱和度
3635
- * @param saturation - 饱和度值,1.0为正常,>1增强,<1降低,推荐范围 0.5-2.0
3636
- */
3637
- setSceneSaturation(saturation: number): void;
3638
- /**
3639
- * 设置场景对比度
3640
- * @param contrast - 对比度值,1.0为正常,>1增强,<1降低,推荐范围 0.5-2.0
3641
- */
3642
- setSceneContrast(contrast: number): void;
3643
- /**
3644
- * 设置是否开启地面
3645
- * @param enabled - true开启,false关闭
3646
- * @param options - 地面配置选项
3647
- */
3648
- setGroundEnabled(enabled: boolean, options?: {
3649
- size?: number;
3650
- color?: number | string;
3651
- opacity?: number;
3652
- }): void;
3653
- /**
3654
- * 设置HDR背景
3655
- * @param hdrTexture - HDR环境贴图(THREE.Texture),传入null则移除背景
3656
- */
3657
- setHDRBackground(hdrTexture: THREE.Texture | null): void;
3660
+ private _applyRenderSettings;
3661
+ private _applyDisplaySettings;
3662
+ private _applyEnvironmentSettings;
3663
+ private _updateDirectionalLight;
3664
+ private _mergeEnvironmentSettings;
3665
+ private _toPresetItem;
3666
+ private _clone;
3667
+ }
3668
+
3669
+ declare interface SettingPresetItem {
3670
+ id: string;
3671
+ name: string;
3672
+ names: string[];
3658
3673
  }
3659
3674
 
3660
3675
  declare class SkyManager {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "iflow-engine-base",
3
- "version": "3.4.4",
3
+ "version": "3.4.6",
4
4
  "description": "BIM Engine SDK for Vue2, Vue3, React and HTML",
5
5
  "main": "./dist/bim-engine-sdk.umd.js",
6
6
  "module": "./dist/bim-engine-sdk.es.js",