iflow-engine-base 3.9.222 → 3.9.223

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.
@@ -1,6 +1,6 @@
1
- import { n as S, ap as R, h as E, aC as x, j as A, t as b, E as k, Q as F, p as I, W as D, a as v, T as f, i as P, K as m, V as p, b as y } from "./three-vendor-Drr85AIk.js";
2
- import { C as T, W as w, r as L } from "./sdk-runtime-WxFsGvNA.js";
3
- import { E as z } from "./engine-2d-rxLSmzpm.js";
1
+ import { n as S, ap as R, h as E, aJ as x, j as A, t as b, E as k, Q as F, p as I, W as D, a as v, T as f, i as P, K as m, V as p, b as y } from "./three-vendor-CKBkJo1D.js";
2
+ import { C as T, W as w, r as L } from "./sdk-runtime-DEiHU8dd.js";
3
+ import { E as z } from "./engine-2d-B_eYbNSe.js";
4
4
  class _ {
5
5
  scene;
6
6
  panoramaSphere = null;
@@ -1,6 +1,6 @@
1
- import { n as Js, C as st, t as Zs, V as v, b as N, O as $s, W as en, M as J, Q as ge, a as tn, f as qt, j as De, B as sn, h as ft, r as it, aD as Ue, aE as Pt, aF as at, J as Et, aG as ms, aH as yn, aI as xn, aJ as In, aK as Tn, H as wn, aL as Bn, aM as En, l as lt, aN as As, aO as gs, aP as vn, k as Cs, aQ as Fn, as as Je, ap as Ss, D as Kt, ae as Dn, aC as ys, q as bn, v as We, aR as qe, ax as xs, s as Mn, aS as Rn, a4 as Pn, aT as On, aU as nn, aV as Is, aW as kn, aa as Ln, aX as Qe, aY as mt, p as Hn } from "./three-vendor-Drr85AIk.js";
2
- import { C as Un, r as zn } from "./sdk-runtime-WxFsGvNA.js";
3
- import { E as _n } from "./engine-2d-rxLSmzpm.js";
1
+ import { n as Js, C as st, t as Zs, V as v, b as N, O as $s, W as en, M as J, Q as ge, a as tn, f as qt, j as De, B as sn, h as ft, r as it, aK as Ue, aL as Pt, aM as at, J as Et, aN as ms, aO as yn, aP as xn, aQ as In, aR as Tn, H as wn, aS as Bn, aT as En, l as lt, aU as As, aV as gs, aW as vn, k as Cs, aX as Fn, as as Je, ap as Ss, D as Kt, ae as Dn, aJ as ys, q as bn, v as We, aY as qe, ax as xs, s as Mn, aZ as Rn, a4 as Pn, a_ as On, a$ as nn, az as Is, b0 as kn, aa as Ln, b1 as Qe, b2 as mt, p as Hn } from "./three-vendor-CKBkJo1D.js";
2
+ import { C as Un, r as zn } from "./sdk-runtime-DEiHU8dd.js";
3
+ import { E as _n } from "./engine-2d-B_eYbNSe.js";
4
4
  var Ne = /* @__PURE__ */ ((m) => (m.LoadStart = "gaussian-load-start", m.LoadProgress = "gaussian-load-progress", m.Loaded = "gaussian-loaded", m.LoadError = "gaussian-load-error", m.SceneRemoved = "gaussian-scene-removed", m.FpsUpdated = "gaussian-fps-updated", m.ViewChanged = "gaussian-view-changed", m))(Ne || {});
5
5
  class Qn {
6
6
  listeners = /* @__PURE__ */ new Map();
@@ -1,6 +1,6 @@
1
- import { g as Ob, c as $L, E as lQ } from "./engine-2d-rxLSmzpm.js";
2
- import { aZ as Si, a_ as uQ } from "./three-vendor-Drr85AIk.js";
3
- import { l as hQ, L as dQ, r as fQ } from "./sdk-runtime-WxFsGvNA.js";
1
+ import { g as Ob, c as $L, E as lQ } from "./engine-2d-B_eYbNSe.js";
2
+ import { b3 as Si, b4 as uQ } from "./three-vendor-CKBkJo1D.js";
3
+ import { l as hQ, L as dQ, r as fQ } from "./sdk-runtime-DEiHU8dd.js";
4
4
  function l(e) {
5
5
  return e != null;
6
6
  }
@@ -1,6 +1,6 @@
1
- import { R as Jo, b as Lr, V as zn, t as eu, a$ as tu } from "./three-vendor-Drr85AIk.js";
2
- import { J as As, E as Yr, c as ru, a as au } from "./engine-2d-rxLSmzpm.js";
3
- import { a as Is } from "./engine-3d-DeBBi12f.js";
1
+ import { R as Jo, b as Lr, V as zn, t as eu, b5 as tu } from "./three-vendor-CKBkJo1D.js";
2
+ import { J as As, E as Yr, c as ru, a as au } from "./engine-2d-B_eYbNSe.js";
3
+ import { a as Is } from "./engine-3d-Bg49nZt8.js";
4
4
  class _p {
5
5
  /**
6
6
  * 构造函数
@@ -43382,7 +43382,7 @@ export {
43382
43382
  Gi as Z,
43383
43383
  tr as _,
43384
43384
  pd as a,
43385
- q1 as a$,
43385
+ cr as a$,
43386
43386
  O1 as a0,
43387
43387
  Oh as a1,
43388
43388
  tc as a2,
@@ -43393,33 +43393,33 @@ export {
43393
43393
  kd as a7,
43394
43394
  o0 as a8,
43395
43395
  on as a9,
43396
- qt as aA,
43397
- Bt as aB,
43398
- kn as aC,
43399
- Cn as aD,
43400
- Eh as aE,
43401
- Kn as aF,
43402
- Tt as aG,
43403
- qe as aH,
43404
- yt as aI,
43405
- Yo as aJ,
43406
- I0 as aK,
43407
- Es as aL,
43408
- Si as aM,
43409
- Fl as aN,
43410
- Ll as aO,
43411
- hh as aP,
43412
- ec as aQ,
43413
- Vb as aR,
43414
- h0 as aS,
43415
- xx as aT,
43416
- cr as aU,
43417
- Ht as aV,
43418
- Ms as aW,
43419
- Je as aX,
43420
- ro as aY,
43421
- vo as aZ,
43422
- j1 as a_,
43396
+ km as aA,
43397
+ Om as aB,
43398
+ Wh as aC,
43399
+ Lm as aD,
43400
+ yd as aE,
43401
+ vd as aF,
43402
+ ws as aG,
43403
+ qt as aH,
43404
+ Bt as aI,
43405
+ kn as aJ,
43406
+ Cn as aK,
43407
+ Eh as aL,
43408
+ Kn as aM,
43409
+ Tt as aN,
43410
+ qe as aO,
43411
+ yt as aP,
43412
+ Yo as aQ,
43413
+ I0 as aR,
43414
+ Es as aS,
43415
+ Si as aT,
43416
+ Fl as aU,
43417
+ Ll as aV,
43418
+ hh as aW,
43419
+ ec as aX,
43420
+ Vb as aY,
43421
+ h0 as aZ,
43422
+ xx as a_,
43423
43423
  Wn as aa,
43424
43424
  Tf as ab,
43425
43425
  G1 as ac,
@@ -43444,9 +43444,15 @@ export {
43444
43444
  r1 as av,
43445
43445
  Mg as aw,
43446
43446
  iv as ax,
43447
- vd as ay,
43448
- ws as az,
43447
+ Gh as ay,
43448
+ Ht as az,
43449
43449
  Y as b,
43450
+ Ms as b0,
43451
+ Je as b1,
43452
+ ro as b2,
43453
+ vo as b3,
43454
+ j1 as b4,
43455
+ q1 as b5,
43450
43456
  zh as c,
43451
43457
  fr as d,
43452
43458
  Uh as e,
package/dist/index.d.ts CHANGED
@@ -122,11 +122,200 @@ declare class AngleMeasure2d extends BaseMeasureTool2d {
122
122
  handleMove(point: THREE.Vector3): void;
123
123
  }
124
124
 
125
+ /** 统一管理点线面体标记、特效和原生 HTML 窗体。 */
126
+ declare class Annotation3d {
127
+ private readonly engine;
128
+ private readonly rootGroup;
129
+ private readonly records;
130
+ private readonly textureLoader;
131
+ private readonly occlusionRaycaster;
132
+ private readonly normalizer;
133
+ private readonly materialFactory;
134
+ private readonly geometryBuilder;
135
+ private readonly effectsController;
136
+ private readonly panelLayer;
137
+ private readonly interaction;
138
+ private currentTime;
139
+ /** 初始化标记根节点、DOM 面板层以及交互控制器。 */
140
+ constructor(engine: any);
141
+ /** 新增单个标记并返回最终 id。 */
142
+ add(config: Annotation3dData): string;
143
+ /** 批量新增标记。 */
144
+ addMany(configs: Annotation3dData[]): string[];
145
+ /** 更新标记时直接重建几何和窗体,保持内部状态简单且可预测。 */
146
+ update(id: string, patch: Partial<Annotation3dData>): boolean;
147
+ /** 删除单个标记。 */
148
+ remove(id: string): boolean;
149
+ /** 清空所有标记及其 DOM 面板。 */
150
+ clear(): void;
151
+ /** 获取单个运行时实例。 */
152
+ get(id: string): Annotation3dInstance | undefined;
153
+ /** 获取全部运行时实例。 */
154
+ getAll(): Annotation3dInstance[];
155
+ /** 显示指定标记。 */
156
+ show(id: string): boolean;
157
+ /** 隐藏指定标记。 */
158
+ hide(id: string): boolean;
159
+ /** 统一控制标记显隐,并同步其面板状态。 */
160
+ setVisible(id: string, visible: boolean): boolean;
161
+ /** 手动打开面板,适用于 manual / click 等模式。 */
162
+ showPanel(id: string): boolean;
163
+ /** 手动关闭面板。 */
164
+ hidePanel(id: string): boolean;
165
+ /** 切换面板开关状态。 */
166
+ togglePanel(id: string): boolean;
167
+ /** 更新面板文本、HTML、样式或 actions。 */
168
+ updatePanel(id: string, patch: Partial<Annotation3dPanel>): boolean;
169
+ /** 导出纯数据快照,供保存和恢复。 */
170
+ getData(): Annotation3dData[];
171
+ /** 从纯数据快照恢复整套标记。 */
172
+ restoreData(data: Annotation3dData[]): void;
173
+ /** 每帧刷新特效和窗体投影位置。 */
174
+ updateFrame(deltaTime?: number): void;
175
+ /** 释放事件、几何和 DOM 资源。 */
176
+ dispose(): void;
177
+ /** 组装运行时记录,并将几何与面板初始化好。 */
178
+ private buildRecord;
179
+ /** 新记录统一走同一挂载流程,减少 add / update 重复代码。 */
180
+ private attachRecord;
181
+ /** 内部删除会负责资源回收和 hover 状态清理。 */
182
+ private removeInternal;
183
+ /** 标记显隐变化时,同时同步渲染顺序和面板显示。 */
184
+ private applyVisibility;
185
+ /** 统一生成对外事件 payload。 */
186
+ private toEventPayload;
187
+ /** 统一向引擎事件总线派发标记事件。 */
188
+ private emit;
189
+ }
190
+
191
+ /** 创建或恢复标记使用的纯数据结构。 */
192
+ export declare interface Annotation3dData {
193
+ id?: string;
194
+ type: Annotation3dType;
195
+ points: AnnotationPoint3d[];
196
+ visible?: boolean;
197
+ selectable?: boolean;
198
+ style?: Annotation3dStyle;
199
+ effect?: Annotation3dEffect;
200
+ panel?: Annotation3dPanel;
201
+ data?: any;
202
+ }
203
+
204
+ /** 点线面体统一的特效配置。 */
205
+ export declare interface Annotation3dEffect {
206
+ gradient?: AnnotationGradientEffect;
207
+ glow?: AnnotationGlowEffect;
208
+ flow?: AnnotationFlowEffect;
209
+ pulse?: AnnotationPulseEffect;
210
+ ripple?: AnnotationRippleEffect;
211
+ pillar?: AnnotationPillarEffect;
212
+ baseRing?: AnnotationBaseRingEffect;
213
+ layers?: AnnotationLayersEffect;
214
+ scan?: AnnotationScanEffect;
215
+ }
216
+
217
+ /** 引擎运行时实例,包含根节点和交互状态。 */
218
+ export declare interface Annotation3dInstance {
219
+ id: string;
220
+ type: Annotation3dType;
221
+ points: AnnotationPoint3d[];
222
+ visible: boolean;
223
+ selectable: boolean;
224
+ style: Annotation3dStyle;
225
+ effect: Annotation3dEffect;
226
+ panel?: Omit<Annotation3dPanel, 'actions'>;
227
+ data?: any;
228
+ panelVisible: boolean;
229
+ hovered: boolean;
230
+ root: THREE.Group;
231
+ }
232
+
233
+ /** 标记关联的原生 HTML 窗体配置。 */
234
+ export declare interface Annotation3dPanel {
235
+ visible?: boolean;
236
+ trigger?: 'manual' | 'hover' | 'click' | 'always';
237
+ mode?: 'text' | 'html';
238
+ text?: string;
239
+ html?: string;
240
+ anchor?: 'self' | 'top' | 'center' | 'start' | 'end' | 'centroid';
241
+ offset?: AnnotationPanelOffset3d;
242
+ screenOffset?: AnnotationPanelOffset2d;
243
+ className?: string;
244
+ style?: Record<string, string>;
245
+ interactive?: boolean;
246
+ occlusion?: 'show' | 'hide';
247
+ actions?: Record<string, (ctx: AnnotationActionContext) => void>;
248
+ }
249
+
250
+ /** 点线面体统一样式。 */
251
+ export declare interface Annotation3dStyle {
252
+ color?: string;
253
+ opacity?: number;
254
+ depthTest?: boolean;
255
+ alwaysOnTop?: boolean;
256
+ lineWidth?: number;
257
+ fillColor?: string;
258
+ fillOpacity?: number;
259
+ point?: AnnotationPointStyle;
260
+ line?: AnnotationLineStyle;
261
+ polygon?: AnnotationPolygonStyle;
262
+ volume?: AnnotationVolumeStyle;
263
+ }
264
+
265
+ /** 支持的三维标记类型。 */
266
+ export declare type Annotation3dType = 'point' | 'polyline' | 'polygon' | 'extrudePolygon' | 'box';
267
+
268
+ /** 面板 action 回调上下文。 */
269
+ export declare interface AnnotationActionContext {
270
+ engine: any;
271
+ id: string;
272
+ annotation: Annotation3dInstance;
273
+ action: string;
274
+ element: HTMLElement;
275
+ originalEvent: MouseEvent;
276
+ }
277
+
278
+ /** 底环效果配置。 */
279
+ declare interface AnnotationBaseRingEffect {
280
+ enabled: boolean;
281
+ radius?: number;
282
+ rotateSpeed?: number;
283
+ }
284
+
125
285
  /**
126
286
  * 标注联合类型
127
287
  */
128
288
  declare type AnnotationConfig720 = IconAnnotationConfig | TextAnnotationConfig | LinkAnnotationConfig;
129
289
 
290
+ /** 流动效果配置。 */
291
+ declare interface AnnotationFlowEffect {
292
+ enabled: boolean;
293
+ speed?: number;
294
+ width?: number;
295
+ direction?: 'forward' | 'backward' | 'up';
296
+ }
297
+
298
+ /** 发光效果配置。 */
299
+ declare interface AnnotationGlowEffect {
300
+ enabled: boolean;
301
+ color?: string;
302
+ intensity?: number;
303
+ }
304
+
305
+ /** 渐变色效果配置。 */
306
+ declare interface AnnotationGradientEffect {
307
+ enabled: boolean;
308
+ direction?: 'vertical' | 'horizontal' | 'path';
309
+ stops?: AnnotationGradientStop[];
310
+ }
311
+
312
+ /** 渐变色 stop。 */
313
+ declare interface AnnotationGradientStop {
314
+ offset: number;
315
+ color: string;
316
+ alpha?: number;
317
+ }
318
+
130
319
  /**
131
320
  * 标注实例(包含 DOM 元素)
132
321
  */
@@ -146,6 +335,19 @@ declare interface AnnotationInstance {
146
335
  visible: boolean;
147
336
  }
148
337
 
338
+ /** 多层围栏线效果配置。 */
339
+ declare interface AnnotationLayersEffect {
340
+ enabled: boolean;
341
+ count?: number;
342
+ offsetY?: number;
343
+ }
344
+
345
+ /** 线样式。 */
346
+ declare interface AnnotationLineStyle {
347
+ dashed?: boolean;
348
+ closed?: boolean;
349
+ }
350
+
149
351
  /**
150
352
  * 标注管理器 - 管理全景图中的标注点
151
353
  * 支持图标、文字、超链接三种类型的标注
@@ -265,6 +467,49 @@ declare class AnnotationManager720 {
265
467
  private generateId;
266
468
  }
267
469
 
470
+ /** 面板屏幕偏移。 */
471
+ declare interface AnnotationPanelOffset2d {
472
+ x?: number;
473
+ y?: number;
474
+ }
475
+
476
+ /** 面板三维偏移。 */
477
+ declare interface AnnotationPanelOffset3d {
478
+ x?: number;
479
+ y?: number;
480
+ z?: number;
481
+ }
482
+
483
+ /** 光柱效果配置。 */
484
+ declare interface AnnotationPillarEffect {
485
+ enabled: boolean;
486
+ height?: number;
487
+ width?: number;
488
+ }
489
+
490
+ /** 三维空间点。 */
491
+ declare interface AnnotationPoint3d {
492
+ x: number;
493
+ y: number;
494
+ z: number;
495
+ }
496
+
497
+ /** 点位样式。 */
498
+ declare interface AnnotationPointStyle {
499
+ mode?: 'sprite' | 'hybrid';
500
+ icon?: string;
501
+ iconSize?: number;
502
+ billboard?: boolean;
503
+ anchorY?: number;
504
+ }
505
+
506
+ /** 面样式。 */
507
+ declare interface AnnotationPolygonStyle {
508
+ showEdge?: boolean;
509
+ edgeColor?: string;
510
+ edgeWidth?: number;
511
+ }
512
+
268
513
  /**
269
514
  * 标注位置信息(球面坐标)
270
515
  */
@@ -274,6 +519,29 @@ declare interface AnnotationPosition {
274
519
  radius?: number;
275
520
  }
276
521
 
522
+ /** 呼吸闪烁效果配置。 */
523
+ declare interface AnnotationPulseEffect {
524
+ enabled: boolean;
525
+ speed?: number;
526
+ minOpacity?: number;
527
+ maxOpacity?: number;
528
+ }
529
+
530
+ /** 波纹扩散效果配置。 */
531
+ declare interface AnnotationRippleEffect {
532
+ enabled: boolean;
533
+ count?: number;
534
+ speed?: number;
535
+ maxRadius?: number;
536
+ }
537
+
538
+ /** 扫描效果配置。 */
539
+ declare interface AnnotationScanEffect {
540
+ enabled: boolean;
541
+ speed?: number;
542
+ width?: number;
543
+ }
544
+
277
545
  /**
278
546
  * 标注类型枚举
279
547
  */
@@ -283,6 +551,15 @@ declare enum AnnotationType720 {
283
551
  LINK = "link"
284
552
  }
285
553
 
554
+ /** 体样式。 */
555
+ declare interface AnnotationVolumeStyle {
556
+ height?: number;
557
+ showTop?: boolean;
558
+ showSide?: boolean;
559
+ showBottom?: boolean;
560
+ edgeColor?: string;
561
+ }
562
+
286
563
  declare class AreaMeasure2d extends BaseMeasureTool2d {
287
564
  /** 三点及以上可以闭合面积,双击或 Enter 结束。 */
288
565
  handleClick(point: THREE.Vector3): void;
@@ -2160,6 +2437,7 @@ declare class EngineKernelV2 {
2160
2437
  drawingPin: DrawingPin;
2161
2438
  modelLink3d: ModelLink3d;
2162
2439
  label: Label;
2440
+ annotation3d: Annotation3d;
2163
2441
  calibration: Calibration;
2164
2442
  models: any[];
2165
2443
  reactBoundingClientRect: {
@@ -2170,6 +2448,7 @@ declare class EngineKernelV2 {
2170
2448
  private versionEl;
2171
2449
  private container;
2172
2450
  constructor(options: any);
2451
+ changeHandelBehavedMode(): void;
2173
2452
  updateVersionDisplay(): void;
2174
2453
  /**
2175
2454
  * 通过 viewToken 解析 3D 模型地址,再复用现有 loaderModule URL 加载逻辑。
@@ -2364,6 +2643,7 @@ declare interface EngineSettings {
2364
2643
  declare class EngineStatus {
2365
2644
  private engine;
2366
2645
  isFree: boolean;
2646
+ editModel: boolean;
2367
2647
  isForceFree: boolean;
2368
2648
  isDisableContextMenu: boolean;
2369
2649
  disableModelInteractionHighlight: boolean;
@@ -9079,7 +9079,7 @@ class Va {
9079
9079
  this.unsubscribe(), this.el.remove();
9080
9080
  }
9081
9081
  }
9082
- const Oa = "3.9.222", Fa = {
9082
+ const Oa = "3.9.223", Fa = {
9083
9083
  version: Oa
9084
9084
  }, Mt = Fa.version;
9085
9085
  function oi() {