iflow-engine-base 3.4.4 → 3.4.5

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;
@@ -3246,6 +3278,8 @@ declare class RangeScale {
3246
3278
  private fitCameraToBoundingBox;
3247
3279
  }
3248
3280
 
3281
+ declare type RenderMode = 'simple' | 'balance' | 'advanced';
3282
+
3249
3283
  declare class RenderModule {
3250
3284
  private engine;
3251
3285
  renderer: THREE_2.WebGLRenderer | null;
@@ -3587,74 +3621,51 @@ declare interface SearchResult {
3587
3621
 
3588
3622
  declare class Setting {
3589
3623
  private engine;
3590
- private ground;
3624
+ private settings;
3625
+ private environmentApplyVersion;
3591
3626
  constructor(engine: any);
3592
3627
  init(): void;
3593
- /**
3594
- * 隐藏或显示性能监视器
3595
- * @param visible - true显示,false隐藏
3596
- */
3597
- setStatsVisible(visible: boolean): void;
3598
- /**
3599
- * 设置环境光照强度
3600
- * @param intensity - 光照强度,默认范围 0-5
3601
- */
3628
+ getSettings(): EngineSettings;
3629
+ getPresetLists(): {
3630
+ ground: SettingPresetItem[];
3631
+ hdr: SettingPresetItem[];
3632
+ sky: SettingPresetItem[];
3633
+ };
3634
+ setSettings(data: Partial<EngineSettings>): Promise<void>;
3635
+ resetToDefault(): Promise<void>;
3636
+ setRenderMode(mode: RenderMode): void;
3637
+ setContrast(value: number): void;
3638
+ setSaturation(value: number): void;
3639
+ setShadowIntensity(value: number): void;
3640
+ setLightIntensity(value: number): void;
3641
+ setGTAOIntensity(value: number): void;
3642
+ setShowEdge(show: boolean): void;
3643
+ setEdgeOpacity(value: number): void;
3644
+ setShowGrid(show: boolean): void;
3645
+ setShowLevel(show: boolean): void;
3646
+ setShowGround(show: boolean): void;
3647
+ setGroundId(id: string): void;
3648
+ setGroundHeight(height: number): void;
3649
+ setEnvironmentType(type: EnvironmentType): Promise<void>;
3650
+ setHdrId(id: string): Promise<void>;
3651
+ setHdrIntensity(value: number): void;
3652
+ setSkyPreset(preset: SkyPresetName): void;
3653
+ setSkyParams(params: SkyParams): void;
3654
+ setSkyIntensity(value: number): void;
3602
3655
  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;
3656
+ private _applyRenderSettings;
3657
+ private _applyDisplaySettings;
3658
+ private _applyEnvironmentSettings;
3659
+ private _updateDirectionalLight;
3660
+ private _mergeEnvironmentSettings;
3661
+ private _toPresetItem;
3662
+ private _clone;
3663
+ }
3664
+
3665
+ declare interface SettingPresetItem {
3666
+ id: string;
3667
+ name: string;
3668
+ names: string[];
3658
3669
  }
3659
3670
 
3660
3671
  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.5",
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",