@hatiolab/things-scene 10.0.0-beta.98 → 10.0.0

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.
Files changed (282) hide show
  1. package/CHANGELOG.md +65 -0
  2. package/README.md +56 -53
  3. package/dist-types/clock/frame-clock.d.ts.map +1 -1
  4. package/dist-types/command/command-migrate.d.ts.map +1 -1
  5. package/dist-types/command/snapshot-commander.d.ts.map +1 -1
  6. package/dist-types/components/audio.d.ts +12 -9
  7. package/dist-types/components/audio.d.ts.map +1 -1
  8. package/dist-types/components/component-drawing.d.ts.map +1 -1
  9. package/dist-types/components/component-geometry.d.ts.map +1 -1
  10. package/dist-types/components/component-hierarchy.d.ts +1 -1
  11. package/dist-types/components/component-hierarchy.d.ts.map +1 -1
  12. package/dist-types/components/component.d.ts +109 -13
  13. package/dist-types/components/component.d.ts.map +1 -1
  14. package/dist-types/components/container-abstract.d.ts +26 -22
  15. package/dist-types/components/container-abstract.d.ts.map +1 -1
  16. package/dist-types/components/container.d.ts +13 -9
  17. package/dist-types/components/container.d.ts.map +1 -1
  18. package/dist-types/components/data/data.d.ts.map +1 -1
  19. package/dist-types/components/data/evaluator.d.ts +27 -0
  20. package/dist-types/components/data/evaluator.d.ts.map +1 -1
  21. package/dist-types/components/donut.d.ts.map +1 -1
  22. package/dist-types/components/ellipse.d.ts +12 -9
  23. package/dist-types/components/ellipse.d.ts.map +1 -1
  24. package/dist-types/components/generic-placeholders.d.ts +12 -9
  25. package/dist-types/components/generic-placeholders.d.ts.map +1 -1
  26. package/dist-types/components/group.d.ts +1 -0
  27. package/dist-types/components/group.d.ts.map +1 -1
  28. package/dist-types/components/html/reposition.d.ts.map +1 -1
  29. package/dist-types/components/html-overlay-container.d.ts +13 -9
  30. package/dist-types/components/html-overlay-container.d.ts.map +1 -1
  31. package/dist-types/components/html-overlay-element.d.ts +25 -18
  32. package/dist-types/components/html-overlay-element.d.ts.map +1 -1
  33. package/dist-types/components/image-view.d.ts +12 -9
  34. package/dist-types/components/image-view.d.ts.map +1 -1
  35. package/dist-types/components/index.d.ts +1 -0
  36. package/dist-types/components/index.d.ts.map +1 -1
  37. package/dist-types/components/info-window.d.ts +12 -9
  38. package/dist-types/components/info-window.d.ts.map +1 -1
  39. package/dist-types/components/line.d.ts.map +1 -1
  40. package/dist-types/components/local-ref.d.ts +12 -9
  41. package/dist-types/components/local-ref.d.ts.map +1 -1
  42. package/dist-types/components/mixins/connectable.d.ts +12 -9
  43. package/dist-types/components/mixins/connectable.d.ts.map +1 -1
  44. package/dist-types/components/mixins/data-source.d.ts +12 -9
  45. package/dist-types/components/mixins/data-source.d.ts.map +1 -1
  46. package/dist-types/components/mixins/gltf-component.d.ts +13 -11
  47. package/dist-types/components/mixins/gltf-component.d.ts.map +1 -1
  48. package/dist-types/components/mixins/holdable.d.ts +12 -0
  49. package/dist-types/components/mixins/holdable.d.ts.map +1 -0
  50. package/dist-types/components/mixins/html-element.d.ts +22 -9
  51. package/dist-types/components/mixins/html-element.d.ts.map +1 -1
  52. package/dist-types/components/mixins/move-handle.d.ts +21 -13
  53. package/dist-types/components/mixins/move-handle.d.ts.map +1 -1
  54. package/dist-types/components/mixins/rect-path.d.ts +12 -9
  55. package/dist-types/components/mixins/rect-path.d.ts.map +1 -1
  56. package/dist-types/components/mixins/three-d-only.d.ts +18 -9
  57. package/dist-types/components/mixins/three-d-only.d.ts.map +1 -1
  58. package/dist-types/components/mixins/value-holder.d.ts +12 -9
  59. package/dist-types/components/mixins/value-holder.d.ts.map +1 -1
  60. package/dist-types/components/modeling-faint.d.ts +14 -0
  61. package/dist-types/components/modeling-faint.d.ts.map +1 -0
  62. package/dist-types/components/mutater/path.d.ts.map +1 -1
  63. package/dist-types/components/node.d.ts +12 -9
  64. package/dist-types/components/node.d.ts.map +1 -1
  65. package/dist-types/components/polygon-container.d.ts +61 -0
  66. package/dist-types/components/polygon-container.d.ts.map +1 -0
  67. package/dist-types/components/polygon.d.ts.map +1 -1
  68. package/dist-types/components/polyline.d.ts +6 -0
  69. package/dist-types/components/polyline.d.ts.map +1 -1
  70. package/dist-types/components/popup.d.ts +12 -9
  71. package/dist-types/components/popup.d.ts.map +1 -1
  72. package/dist-types/components/rect.d.ts +24 -18
  73. package/dist-types/components/rect.d.ts.map +1 -1
  74. package/dist-types/components/retention/retention-manager.d.ts +9 -1
  75. package/dist-types/components/retention/retention-manager.d.ts.map +1 -1
  76. package/dist-types/components/root-container.d.ts +7 -0
  77. package/dist-types/components/root-container.d.ts.map +1 -1
  78. package/dist-types/components/ruler.d.ts +12 -9
  79. package/dist-types/components/ruler.d.ts.map +1 -1
  80. package/dist-types/components/service-component.d.ts +12 -9
  81. package/dist-types/components/service-component.d.ts.map +1 -1
  82. package/dist-types/components/star.d.ts.map +1 -1
  83. package/dist-types/components/text.d.ts +12 -9
  84. package/dist-types/components/text.d.ts.map +1 -1
  85. package/dist-types/core/dom-to-image.d.ts.map +1 -1
  86. package/dist-types/core/logger.d.ts.map +1 -1
  87. package/dist-types/core/memoize.d.ts.map +1 -1
  88. package/dist-types/decorator/decorator-registry.d.ts +10 -1
  89. package/dist-types/decorator/decorator-registry.d.ts.map +1 -1
  90. package/dist-types/decorator/decorators/border-highlighting-decorator.d.ts +0 -4
  91. package/dist-types/decorator/decorators/border-highlighting-decorator.d.ts.map +1 -1
  92. package/dist-types/decorator/decorators/bouncing-arrow-decorator.d.ts +0 -3
  93. package/dist-types/decorator/decorators/bouncing-arrow-decorator.d.ts.map +1 -1
  94. package/dist-types/diagnostics/contract-inspector.d.ts +9 -2
  95. package/dist-types/diagnostics/contract-inspector.d.ts.map +1 -1
  96. package/dist-types/diagnostics/data-lag-tracker.d.ts +31 -25
  97. package/dist-types/diagnostics/data-lag-tracker.d.ts.map +1 -1
  98. package/dist-types/diagnostics/inspector.d.ts +136 -3
  99. package/dist-types/diagnostics/inspector.d.ts.map +1 -1
  100. package/dist-types/diagnostics/loading-overlay.d.ts +67 -10
  101. package/dist-types/diagnostics/loading-overlay.d.ts.map +1 -1
  102. package/dist-types/diagnostics/metrics.d.ts +10 -0
  103. package/dist-types/diagnostics/metrics.d.ts.map +1 -1
  104. package/dist-types/flow/auto-route.d.ts +36 -0
  105. package/dist-types/flow/auto-route.d.ts.map +1 -0
  106. package/dist-types/flow/capability-inference.d.ts +19 -0
  107. package/dist-types/flow/capability-inference.d.ts.map +1 -0
  108. package/dist-types/flow/face-anchors.d.ts +26 -0
  109. package/dist-types/flow/face-anchors.d.ts.map +1 -0
  110. package/dist-types/flow/flow-engine.d.ts +122 -0
  111. package/dist-types/flow/flow-engine.d.ts.map +1 -0
  112. package/dist-types/flow/flow-graph-coordinator.d.ts +80 -0
  113. package/dist-types/flow/flow-graph-coordinator.d.ts.map +1 -0
  114. package/dist-types/flow/flow-graph-validator.d.ts +33 -0
  115. package/dist-types/flow/flow-graph-validator.d.ts.map +1 -0
  116. package/dist-types/flow/flow-graph.d.ts +76 -0
  117. package/dist-types/flow/flow-graph.d.ts.map +1 -0
  118. package/dist-types/flow/flow-introspection.d.ts +36 -0
  119. package/dist-types/flow/flow-introspection.d.ts.map +1 -0
  120. package/dist-types/flow/flow-node.d.ts +69 -0
  121. package/dist-types/flow/flow-node.d.ts.map +1 -0
  122. package/dist-types/flow/flow-orientation-coordinator.d.ts +13 -0
  123. package/dist-types/flow/flow-orientation-coordinator.d.ts.map +1 -0
  124. package/dist-types/flow/flow-orientation.d.ts +42 -0
  125. package/dist-types/flow/flow-orientation.d.ts.map +1 -0
  126. package/dist-types/flow/flow-trace.d.ts +5 -0
  127. package/dist-types/flow/flow-trace.d.ts.map +1 -0
  128. package/dist-types/flow/index.d.ts +16 -0
  129. package/dist-types/flow/index.d.ts.map +1 -0
  130. package/dist-types/flow/segment-topology.d.ts +225 -0
  131. package/dist-types/flow/segment-topology.d.ts.map +1 -0
  132. package/dist-types/interfaces/event-handler.d.ts +40 -0
  133. package/dist-types/interfaces/event-handler.d.ts.map +1 -0
  134. package/dist-types/interfaces/index.d.ts +2 -0
  135. package/dist-types/interfaces/index.d.ts.map +1 -1
  136. package/dist-types/interfaces/providers.d.ts +7 -0
  137. package/dist-types/interfaces/providers.d.ts.map +1 -1
  138. package/dist-types/items/arrangement/centering-queue-strategy.d.ts +10 -0
  139. package/dist-types/items/arrangement/centering-queue-strategy.d.ts.map +1 -0
  140. package/dist-types/items/arrangement/index.d.ts +2 -0
  141. package/dist-types/items/arrangement/index.d.ts.map +1 -0
  142. package/dist-types/{transfer/container-capacity.d.ts → items/capacity-mixin.d.ts} +39 -78
  143. package/dist-types/items/capacity-mixin.d.ts.map +1 -0
  144. package/dist-types/items/capacity.d.ts +53 -0
  145. package/dist-types/items/capacity.d.ts.map +1 -0
  146. package/dist-types/items/index.d.ts +7 -0
  147. package/dist-types/items/index.d.ts.map +1 -0
  148. package/dist-types/items/items-data-binding.d.ts +103 -0
  149. package/dist-types/items/items-data-binding.d.ts.map +1 -0
  150. package/dist-types/items/slot-record.d.ts +23 -0
  151. package/dist-types/items/slot-record.d.ts.map +1 -0
  152. package/dist-types/items/stacking/index.d.ts +3 -0
  153. package/dist-types/items/stacking/index.d.ts.map +1 -0
  154. package/dist-types/items/stacking/stack-layout.d.ts +33 -0
  155. package/dist-types/items/stacking/stack-layout.d.ts.map +1 -0
  156. package/dist-types/items/stacking/stacking-strategy.d.ts +114 -0
  157. package/dist-types/items/stacking/stacking-strategy.d.ts.map +1 -0
  158. package/dist-types/layer/layer.d.ts +1 -0
  159. package/dist-types/layer/layer.d.ts.map +1 -1
  160. package/dist-types/layer/model-layer.d.ts +39 -2
  161. package/dist-types/layer/model-layer.d.ts.map +1 -1
  162. package/dist-types/layer/modeler/index.d.ts +1 -0
  163. package/dist-types/layer/modeler/index.d.ts.map +1 -1
  164. package/dist-types/layer/modeler/move-handle-icon.d.ts +2 -0
  165. package/dist-types/layer/modeler/move-handle-icon.d.ts.map +1 -0
  166. package/dist-types/layer/modeler/move-handle-modeler.d.ts +18 -0
  167. package/dist-types/layer/modeler/move-handle-modeler.d.ts.map +1 -0
  168. package/dist-types/layer/modeler/path-handler.d.ts.map +1 -1
  169. package/dist-types/layer/modeler/rotator.d.ts.map +1 -1
  170. package/dist-types/layer/modeling-layer.d.ts +19 -0
  171. package/dist-types/layer/modeling-layer.d.ts.map +1 -1
  172. package/dist-types/layer/selection-layer.d.ts +7 -0
  173. package/dist-types/layer/selection-layer.d.ts.map +1 -1
  174. package/dist-types/layer/snap-guide-layer.d.ts.map +1 -1
  175. package/dist-types/license/license.d.ts.map +1 -1
  176. package/dist-types/search/scene-search-engine.d.ts +0 -1
  177. package/dist-types/search/scene-search-engine.d.ts.map +1 -1
  178. package/dist-types/search/search-overlay.d.ts +26 -1
  179. package/dist-types/search/search-overlay.d.ts.map +1 -1
  180. package/dist-types/things-scene/api/clipboard.d.ts +1 -1
  181. package/dist-types/things-scene/api/clipboard.d.ts.map +1 -1
  182. package/dist-types/things-scene/api/listener.d.ts +1 -1
  183. package/dist-types/things-scene/api/listener.d.ts.map +1 -1
  184. package/dist-types/things-scene/api/to-data-url.d.ts +1 -1
  185. package/dist-types/things-scene/api/to-data-url.d.ts.map +1 -1
  186. package/dist-types/things-scene/api/zorder.d.ts +1 -1
  187. package/dist-types/things-scene/api/zorder.d.ts.map +1 -1
  188. package/dist-types/things-scene/application-context.d.ts +15 -2
  189. package/dist-types/things-scene/application-context.d.ts.map +1 -1
  190. package/dist-types/things-scene/create.d.ts +24 -0
  191. package/dist-types/things-scene/create.d.ts.map +1 -1
  192. package/dist-types/things-scene/index.d.ts +13 -5
  193. package/dist-types/things-scene/index.d.ts.map +1 -1
  194. package/dist-types/things-scene/scene.d.ts +115 -20
  195. package/dist-types/things-scene/scene.d.ts.map +1 -1
  196. package/dist-types/threed/common.d.ts +6 -1
  197. package/dist-types/threed/common.d.ts.map +1 -1
  198. package/dist-types/threed/factories/backdrop.d.ts +25 -18
  199. package/dist-types/threed/factories/backdrop.d.ts.map +1 -1
  200. package/dist-types/threed/factories/banner.d.ts +14 -9
  201. package/dist-types/threed/factories/banner.d.ts.map +1 -1
  202. package/dist-types/threed/factories/camera.d.ts +13 -9
  203. package/dist-types/threed/factories/camera.d.ts.map +1 -1
  204. package/dist-types/threed/factories/cube.d.ts +12 -9
  205. package/dist-types/threed/factories/cube.d.ts.map +1 -1
  206. package/dist-types/threed/factories/decal.d.ts +25 -20
  207. package/dist-types/threed/factories/decal.d.ts.map +1 -1
  208. package/dist-types/threed/factories/floor-plate.d.ts +2 -0
  209. package/dist-types/threed/factories/floor-plate.d.ts.map +1 -1
  210. package/dist-types/threed/factories/gltf-object.d.ts +24 -18
  211. package/dist-types/threed/factories/gltf-object.d.ts.map +1 -1
  212. package/dist-types/threed/factories/polygon.d.ts.map +1 -1
  213. package/dist-types/threed/factories/sprite.d.ts +12 -9
  214. package/dist-types/threed/factories/sprite.d.ts.map +1 -1
  215. package/dist-types/threed/factories/wall.d.ts +12 -9
  216. package/dist-types/threed/factories/wall.d.ts.map +1 -1
  217. package/dist-types/threed/handle-3d.d.ts.map +1 -1
  218. package/dist-types/threed/index.d.ts +6 -0
  219. package/dist-types/threed/index.d.ts.map +1 -1
  220. package/dist-types/threed/managers/event-manager3d.d.ts +6 -0
  221. package/dist-types/threed/managers/event-manager3d.d.ts.map +1 -1
  222. package/dist-types/threed/managers/gizmo-operation-manager.d.ts +0 -1
  223. package/dist-types/threed/managers/gizmo-operation-manager.d.ts.map +1 -1
  224. package/dist-types/threed/managers/renderer-manager.d.ts +6 -0
  225. package/dist-types/threed/managers/renderer-manager.d.ts.map +1 -1
  226. package/dist-types/threed/managers/vertex-gizmo-manager.d.ts +0 -1
  227. package/dist-types/threed/managers/vertex-gizmo-manager.d.ts.map +1 -1
  228. package/dist-types/threed/material-bank.d.ts +42 -0
  229. package/dist-types/threed/material-bank.d.ts.map +1 -0
  230. package/dist-types/threed/material-variant.d.ts +43 -0
  231. package/dist-types/threed/material-variant.d.ts.map +1 -0
  232. package/dist-types/threed/real-object-dom-element.d.ts +8 -0
  233. package/dist-types/threed/real-object-dom-element.d.ts.map +1 -1
  234. package/dist-types/threed/real-object-dom-texture.d.ts +0 -1
  235. package/dist-types/threed/real-object-dom-texture.d.ts.map +1 -1
  236. package/dist-types/threed/real-object-mesh.d.ts +0 -1
  237. package/dist-types/threed/real-object-mesh.d.ts.map +1 -1
  238. package/dist-types/threed/real-object-plane-2d.d.ts +0 -1
  239. package/dist-types/threed/real-object-plane-2d.d.ts.map +1 -1
  240. package/dist-types/threed/real-object-sprite.d.ts +0 -1
  241. package/dist-types/threed/real-object-sprite.d.ts.map +1 -1
  242. package/dist-types/threed/real-object-text.d.ts.map +1 -1
  243. package/dist-types/threed/real-object.d.ts +104 -3
  244. package/dist-types/threed/real-object.d.ts.map +1 -1
  245. package/dist-types/threed/texture/fillstyle-texture.d.ts +13 -2
  246. package/dist-types/threed/texture/fillstyle-texture.d.ts.map +1 -1
  247. package/dist-types/threed/three-capability.d.ts +8 -0
  248. package/dist-types/threed/three-capability.d.ts.map +1 -1
  249. package/dist-types/threed/threed-enabled.d.ts +5 -0
  250. package/dist-types/threed/threed-enabled.d.ts.map +1 -0
  251. package/dist-types/threed/utils/dispose.d.ts.map +1 -1
  252. package/dist-types/threed/utils/polygon-shape.d.ts +21 -0
  253. package/dist-types/threed/utils/polygon-shape.d.ts.map +1 -0
  254. package/dist-types/tracker/tracker.d.ts +57 -0
  255. package/dist-types/tracker/tracker.d.ts.map +1 -0
  256. package/dist-types/transfer/carrier-line-capability.d.ts +95 -0
  257. package/dist-types/transfer/carrier-line-capability.d.ts.map +1 -0
  258. package/dist-types/transfer/index.d.ts +13 -3
  259. package/dist-types/transfer/index.d.ts.map +1 -1
  260. package/dist-types/transfer/pickup-helpers.d.ts +11 -1
  261. package/dist-types/transfer/pickup-helpers.d.ts.map +1 -1
  262. package/dist-types/transfer/tracer.d.ts +35 -0
  263. package/dist-types/transfer/tracer.d.ts.map +1 -0
  264. package/dist-types/transfer/transfer-helpers.d.ts +18 -0
  265. package/dist-types/transfer/transfer-helpers.d.ts.map +1 -0
  266. package/dist-types/transfer/transfer.d.ts +132 -43
  267. package/dist-types/transfer/transfer.d.ts.map +1 -1
  268. package/dist-types/transfer/transferable-mixin.d.ts +275 -0
  269. package/dist-types/transfer/transferable-mixin.d.ts.map +1 -0
  270. package/dist-types/transfer/types.d.ts +75 -2
  271. package/dist-types/transfer/types.d.ts.map +1 -1
  272. package/dist-types/transition/transition-effect.d.ts +21 -1
  273. package/dist-types/transition/transition-effect.d.ts.map +1 -1
  274. package/dist-types/types/capability.d.ts +65 -0
  275. package/dist-types/types/capability.d.ts.map +1 -0
  276. package/package.json +2 -2
  277. package/things-scene-min.js +11 -11
  278. package/things-scene-min.js.map +1 -1
  279. package/things-scene-transfer.mjs +3 -2
  280. package/things-scene.mjs +3 -3
  281. package/things-scene.mjs.map +1 -1
  282. package/dist-types/transfer/container-capacity.d.ts.map +0 -1
@@ -23,7 +23,6 @@ export declare class VertexGizmoManager {
23
23
  private _activeKind;
24
24
  private _activeHandle?;
25
25
  private _isDragging;
26
- private _isExtending;
27
26
  private _isPending;
28
27
  private _pendingHit?;
29
28
  private _pendingHandleType?;
@@ -1 +1 @@
1
- {"version":3,"file":"vertex-gizmo-manager.d.ts","sourceRoot":"","sources":["../../../src/threed/managers/vertex-gizmo-manager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"vertex-gizmo-manager.d.ts","sourceRoot":"","sources":["../../../src/threed/managers/vertex-gizmo-manager.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,42 @@
1
+ import * as THREE from 'three';
2
+ /**
3
+ * 코어 공통 **Material Bank** — 이름(key) + intrinsic spec 으로 base material 을 등록·공유한다.
4
+ *
5
+ * base 캐시 키 = `key + spec 시그니처`. 같은 key 라도 **spec(재질 속성)이 다르면 별도 base**(예:
6
+ * 인스턴스별 material3d 커스터마이즈)이고, spec 이 같으면 컴포넌트 종류를 넘어 **공유**된다. key 관례는
7
+ * `"{컴포넌트명}|{용도}"` (예: `"conveyor|belt"`, `"chute|body"`).
8
+ *
9
+ * 상태색은 `material(key, spec, color)` — base(색 없는 intrinsic)에 색 overlay(색상별 공유 변형).
10
+ * faint 는 색을 버리고 base 로 수렴(코어 applyFocusDim 자동). 예) 상태색 4종 컴포넌트(같은 intrinsic)
11
+ * → base 1 + 색 4 + faint 1 = 6개, 인스턴스 무관.
12
+ *
13
+ * material 은 미리 만들지 않고 lazy 생성, 앱 수명 공유. dispose 는 앱/씬 종료 시 MaterialBank.dispose().
14
+ */
15
+ export interface MaterialSpec {
16
+ color?: THREE.ColorRepresentation;
17
+ metalness?: number;
18
+ roughness?: number;
19
+ opacity?: number;
20
+ transparent?: boolean;
21
+ emissive?: THREE.ColorRepresentation;
22
+ emissiveIntensity?: number;
23
+ envMapIntensity?: number;
24
+ side?: THREE.Side;
25
+ map?: THREE.Texture | null;
26
+ flatShading?: boolean;
27
+ depthWrite?: boolean;
28
+ }
29
+ export declare const MaterialBank: {
30
+ /**
31
+ * key + spec 으로 공유 base material 을 얻는다(같은 (key, spec)이면 공유, spec 다르면 별도 base).
32
+ * color 를 주면 base 의 색 overlay 변형(같은 색끼리 공유), 안 주면 base 자체. faint 는 코어 자동.
33
+ */
34
+ material(key: string, spec: MaterialSpec, color?: THREE.ColorRepresentation): THREE.MeshStandardMaterial;
35
+ /** 등록된 base 개수(테스트/진단용). */
36
+ readonly size: number;
37
+ /** key 로 등록된 base 존재 여부(spec 무관, prefix 매칭). */
38
+ has(key: string): boolean;
39
+ /** 전체 해제 — 앱/씬 종료 시. 각 base 의 변형(색·faint)까지 dispose. */
40
+ dispose(): void;
41
+ };
42
+ //# sourceMappingURL=material-bank.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"material-bank.d.ts","sourceRoot":"","sources":["../../src/threed/material-bank.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAI9B;;;;;;;;;;;;GAYG;AAEH,MAAM,WAAW,YAAY;IAC3B,KAAK,CAAC,EAAE,KAAK,CAAC,mBAAmB,CAAA;IACjC,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,WAAW,CAAC,EAAE,OAAO,CAAA;IACrB,QAAQ,CAAC,EAAE,KAAK,CAAC,mBAAmB,CAAA;IACpC,iBAAiB,CAAC,EAAE,MAAM,CAAA;IAC1B,eAAe,CAAC,EAAE,MAAM,CAAA;IACxB,IAAI,CAAC,EAAE,KAAK,CAAC,IAAI,CAAA;IACjB,GAAG,CAAC,EAAE,KAAK,CAAC,OAAO,GAAG,IAAI,CAAA;IAC1B,WAAW,CAAC,EAAE,OAAO,CAAA;IACrB,UAAU,CAAC,EAAE,OAAO,CAAA;CACrB;AAgDD,eAAO,MAAM,YAAY;IACvB;;;OAGG;kBACW,MAAM,QAAQ,YAAY,UAAU,KAAK,CAAC,mBAAmB,GAAG,KAAK,CAAC,oBAAoB;IAOxG,4BAA4B;mBAChB,MAAM;IAIlB,gDAAgD;aACvC,MAAM,GAAG,OAAO;IAMzB,wDAAwD;eAC7C,IAAI;CAOhB,CAAA"}
@@ -0,0 +1,43 @@
1
+ import * as THREE from 'three';
2
+ /**
3
+ * 파생 material 변형(variant) 공유 레지스트리 — **base material 하나**에서 `(base × spec)` 로 변형을
4
+ * lazy 생성·공유한다. 상태색과 faint 를 같은 메커니즘으로 다룬다:
5
+ * - 상태색 : resolveVariant(base, { color }) → 같은 색 인스턴스들이 변형 하나 공유
6
+ * - faint : resolveVariant(base, { opacityFactor:0.5 }) → color 없음(=base 색) → base 당 1개, 색 무관 수렴
7
+ *
8
+ * 예) 상태색 4종 컴포넌트 → base 1 + 색 변형 4 + faint 1 = **6개**(인스턴스 수 무관). faint 는 색을
9
+ * 버리고 base 로 모이므로 색상 수만큼 늘지 않는다.
10
+ *
11
+ * base 는 절대 변경하지 않으므로 공유 안전(오염 없음). content alpha 등 base.opacity 변화는 스왑
12
+ * 시점에 곱해 반영된다.
13
+ *
14
+ * 수명 2층: 캐시 WeakMap<base, Map<sig, variant>>(base GC 시 소멸) + 명시적 GPU 해제(base dispose 시
15
+ * disposeVariantsOf; 텍스처는 base 참조공유라 제외). dispose 전 restoreCanonicalMaterials 로 원복.
16
+ */
17
+ export interface MaterialVariantSpec {
18
+ color?: THREE.ColorRepresentation;
19
+ /** base.opacity 에 곱할 배율(content alpha 등). 1 이상이면 무변형. */
20
+ opacityFactor?: number;
21
+ }
22
+ /** `base × spec` 공유 변형을 돌려준다. 무변형 spec 이면 base 그대로. */
23
+ export declare function resolveVariant(base: any, spec: MaterialVariantSpec): any;
24
+ /**
25
+ * mesh.material 을 faint(흐림)로 스왑하거나(faint=true) 원복(false). **faint 는 색을 버리고 base 로
26
+ * 수렴**한다 — 현재 material 이 색 변형이면 그 base 의 faint 변형(색 무관 1개)을 공유한다. base 선언이
27
+ * 없으면 material 자신이 base(하위호환: material 별 faint). 복원은 표시 material 로(색 정확히 되돌림).
28
+ */
29
+ export declare function setFaint(mesh: any, faint: boolean): void;
30
+ /**
31
+ * content alpha × faint 를 mesh.material 에 **opacity 오버레이**로 반영 — 코어가 모든 컴포넌트에 일괄.
32
+ * canonical(=컴포넌트가 만든 설계 material, 설계 opacity 유지) 을 base 로 삼아 variant 스왑:
33
+ * - faint: 색·contentAlpha·emissive 무관하게 base 당 하나로 수렴(opacity = 설계 × 0.5).
34
+ * - 비-faint & contentAlpha<1: 색 유지 + opacity = 설계 × contentAlpha.
35
+ * - 무변형(contentAlpha≥1, 비-faint): canonical 그대로(스왑 없음).
36
+ * 컴포넌트는 alpha 를 material 에 굽지 않는다(설계 opacity 만) — 코어가 여기서 한 번만 곱한다.
37
+ */
38
+ export declare function applyMeshOpacity(mesh: any, contentAlpha: number, faint: boolean): void;
39
+ /** dispose 전 호출 — 변형을 벗기고 표시 material 복원. 공유 변형/base 텍스처의 조기 파괴 방지. */
40
+ export declare function restoreCanonicalMaterials(root: any): void;
41
+ /** base material dispose 시 그 변형들의 GPU program 도 해제(텍스처는 base 소유라 제외). */
42
+ export declare function disposeVariantsOf(base: any): void;
43
+ //# sourceMappingURL=material-variant.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"material-variant.d.ts","sourceRoot":"","sources":["../../src/threed/material-variant.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAE9B;;;;;;;;;;;;;;GAcG;AAEH,MAAM,WAAW,mBAAmB;IAClC,KAAK,CAAC,EAAE,KAAK,CAAC,mBAAmB,CAAA;IACjC,yDAAyD;IACzD,aAAa,CAAC,EAAE,MAAM,CAAA;CACvB;AAuCD,uDAAuD;AACvD,wBAAgB,cAAc,CAAC,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,mBAAmB,GAAG,GAAG,CAexE;AAED;;;;GAIG;AACH,wBAAgB,QAAQ,CAAC,IAAI,EAAE,GAAG,EAAE,KAAK,EAAE,OAAO,GAAG,IAAI,CAexD;AAID;;;;;;;GAOG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,GAAG,EAAE,YAAY,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,GAAG,IAAI,CAgBtF;AAED,uEAAuE;AACvE,wBAAgB,yBAAyB,CAAC,IAAI,EAAE,GAAG,GAAG,IAAI,CAQzD;AAED,yEAAyE;AACzE,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,GAAG,GAAG,IAAI,CAKjD"}
@@ -19,7 +19,15 @@ export declare class RealObjectDomElement extends RealObject<CSS3DObject> {
19
19
  */
20
20
  syncFromObject3D(): void;
21
21
  build(): void;
22
+ updateMaterial3d(): void;
22
23
  updateDimension(): void;
24
+ /**
25
+ * CSS3D 는 Three.js material 이 없어 base applyFocusDim(material opacity)이 DOM 에 안 닿는다.
26
+ * DOM opacity/가시성의 **단일 기록자는 html-element.applyElementModelingFaint** 이므로 위임한다
27
+ * (content alpha × faint 계산·규약을 2D 와 완전히 공유 — 이중 계산 제거).
28
+ * base updateHidden(편집)·scene._reapplyModelingFaint·updateAlpha 가 모두 이 경로로 수렴.
29
+ */
30
+ applyFocusDim(): void;
23
31
  updateAlpha(): void;
24
32
  }
25
33
  //# sourceMappingURL=real-object-dom-element.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"real-object-dom-element.d.ts","sourceRoot":"","sources":["../../src/threed/real-object-dom-element.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,WAAW,EAAE,MAAM,+CAA+C,CAAA;AAC3E,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAA;AAE7C,qBAAa,oBAAqB,SAAQ,UAAU,CAAC,WAAW,CAAC;IAC/D,sCAAsC;IACtC,SAAS,KAAK,cAAc,WAE3B;IAED,IAAa,gBAAgB,WAE5B;IAED,SAAS,CAAC,mBAAmB;IAI7B;;;OAGG;IACH,IAAI,QAAQ;;;;MAQX;IAED;;OAEG;IACH,gBAAgB;IAqChB,KAAK;IAsBL,eAAe;IAsBf,WAAW;CAUZ"}
1
+ {"version":3,"file":"real-object-dom-element.d.ts","sourceRoot":"","sources":["../../src/threed/real-object-dom-element.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,WAAW,EAAE,MAAM,+CAA+C,CAAA;AAC3E,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAA;AAgB7C,qBAAa,oBAAqB,SAAQ,UAAU,CAAC,WAAW,CAAC;IAC/D,sCAAsC;IACtC,SAAS,KAAK,cAAc,WAE3B;IAED,IAAa,gBAAgB,WAE5B;IAED,SAAS,CAAC,mBAAmB;IAI7B;;;OAGG;IACH,IAAI,QAAQ;;;;MAQX;IAED;;OAEG;IACH,gBAAgB;IAqChB,KAAK;IA0BL,gBAAgB;IAUhB,eAAe;IAsBf;;;;;OAKG;IACM,aAAa,IAAI,IAAI;IAIrB,WAAW;CAIrB"}
@@ -11,7 +11,6 @@ export declare class RealObjectDomTexture extends RealObject<THREE.Mesh> {
11
11
  build(): void;
12
12
  updateDimension(): void;
13
13
  updateAlpha(): void;
14
- updateHidden(): void;
15
14
  private _debouncedRebuild;
16
15
  private _rebuildTexture;
17
16
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"real-object-dom-texture.d.ts","sourceRoot":"","sources":["../../src/threed/real-object-dom-texture.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAC9B,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAA;AAe7C,qBAAa,oBAAqB,SAAQ,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC;IAC9D,sCAAsC;IACtC,SAAS,KAAK,cAAc,WAE3B;IAED,IAAa,gBAAgB,WAE5B;IAED,OAAO,CAAC,cAAc,CAAC,CAA+B;IACtD,OAAO,CAAC,eAAe,CAAC,CAAY;gBAExB,SAAS,EAAE,GAAG;IAiB1B,SAAS,CAAC,mBAAmB;IAI7B,KAAK;IA4BL,eAAe;IAMf,WAAW;IAKX,YAAY;IAIZ,OAAO,CAAC,iBAAiB;IAUzB,OAAO,CAAC,eAAe;IAQvB;;;OAGG;IACH,OAAO,CAAC,kBAAkB;IAW1B,eAAe;IAIf,iBAAiB;IAIjB,UAAU;IAIV,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC;IAYhE,gBAAgB;IAahB,KAAK;IASL,OAAO;CAWR"}
1
+ {"version":3,"file":"real-object-dom-texture.d.ts","sourceRoot":"","sources":["../../src/threed/real-object-dom-texture.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAC9B,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAA;AAe7C,qBAAa,oBAAqB,SAAQ,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC;IAC9D,sCAAsC;IACtC,SAAS,KAAK,cAAc,WAE3B;IAED,IAAa,gBAAgB,WAE5B;IAED,OAAO,CAAC,cAAc,CAAC,CAA+B;IACtD,OAAO,CAAC,eAAe,CAAC,CAAY;gBAExB,SAAS,EAAE,GAAG;IAiB1B,SAAS,CAAC,mBAAmB;IAI7B,KAAK;IAyBL,eAAe;IAMf,WAAW;IAKX,OAAO,CAAC,iBAAiB;IAUzB,OAAO,CAAC,eAAe;IAQvB;;;OAGG;IACH,OAAO,CAAC,kBAAkB;IAW1B,eAAe;IAIf,iBAAiB;IAIjB,UAAU;IAIV,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC;IAYhE,gBAAgB;IAchB,KAAK;IASL,OAAO;CAWR"}
@@ -4,7 +4,6 @@ export declare abstract class RealObjectMesh extends RealObject<THREE.Mesh> {
4
4
  protected getObject3dInstance(): THREE.Mesh<THREE.BufferGeometry<THREE.NormalBufferAttributes, THREE.BufferGeometryEventMap>, THREE.Material | THREE.Material[], THREE.Object3DEventMap>;
5
5
  build(): void;
6
6
  updateAlpha(): void;
7
- updateHidden(): void;
8
7
  updateFillStyle(): void;
9
8
  updateStrokeStyle(): void;
10
9
  updateDimension(): void;
@@ -1 +1 @@
1
- {"version":3,"file":"real-object-mesh.d.ts","sourceRoot":"","sources":["../../src/threed/real-object-mesh.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAK9B,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAA;AAG7C,8BAAsB,cAAe,SAAQ,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC;IACjE,SAAS,CAAC,mBAAmB;IAI7B,KAAK;IASL,WAAW;IAMX,YAAY;IAIZ,eAAe;IAsBf,iBAAiB;IAuBjB,eAAe,IAAI,IAAI;IAqBvB,SAAS,CAAC,QAAQ,CAAC,aAAa,IAAI,IAAI;IAExC,aAAa,IAAI,IAAI;IAOrB,gBAAgB;IAShB,KAAK;CAKN"}
1
+ {"version":3,"file":"real-object-mesh.d.ts","sourceRoot":"","sources":["../../src/threed/real-object-mesh.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAK9B,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAA;AAG7C,8BAAsB,cAAe,SAAQ,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC;IACjE,SAAS,CAAC,mBAAmB;IAI7B,KAAK;IASL,WAAW;IAMX,eAAe;IAgCf,iBAAiB;IAuBjB,eAAe,IAAI,IAAI;IAqBvB,SAAS,CAAC,QAAQ,CAAC,aAAa,IAAI,IAAI;IAExC,aAAa,IAAI,IAAI;IAOrB,gBAAgB;IAShB,KAAK;CAKN"}
@@ -11,7 +11,6 @@ export declare class RealObjectPlane2D extends RealObject<THREE.Mesh> {
11
11
  protected getObject3dInstance(): THREE.Mesh<THREE.BufferGeometry<THREE.NormalBufferAttributes, THREE.BufferGeometryEventMap>, THREE.Material | THREE.Material[], THREE.Object3DEventMap>;
12
12
  build(): void;
13
13
  updateAlpha(): void;
14
- updateHidden(): void;
15
14
  get dimension(): {
16
15
  width: number;
17
16
  height: number;
@@ -1 +1 @@
1
- {"version":3,"file":"real-object-plane-2d.d.ts","sourceRoot":"","sources":["../../src/threed/real-object-plane-2d.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAC9B,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAA;AAc7C,qBAAa,iBAAkB,SAAQ,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC;IAC3D,sCAAsC;IACtC,SAAS,KAAK,cAAc,WAE3B;IAED,+CAA+C;IAC/C,IAAa,gBAAgB,WAE5B;IAED,OAAO,CAAC,cAAc,CAAC,CAA+B;IACtD,OAAO,CAAC,eAAe,CAAC,CAAY;gBAExB,SAAS,EAAE,GAAG;IAkB1B,SAAS,CAAC,mBAAmB;IAI7B,KAAK;IA4BL,WAAW;IAKX,YAAY;IAIZ,IAAI,SAAS;;;;MAGZ;IAED,IAAI,KAAK;;;;MAIR;IAED,eAAe;IAIf,OAAO,CAAC,iBAAiB;IAUzB;;;OAGG;IACH,OAAO,CAAC,kBAAkB;IAW1B,MAAM;IAQN,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC;IAWhE,eAAe;IAIf,iBAAiB;IAIjB,UAAU;IAIV,gBAAgB;IAahB,KAAK;IASL,OAAO;CAWR"}
1
+ {"version":3,"file":"real-object-plane-2d.d.ts","sourceRoot":"","sources":["../../src/threed/real-object-plane-2d.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAC9B,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAA;AAc7C,qBAAa,iBAAkB,SAAQ,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC;IAC3D,sCAAsC;IACtC,SAAS,KAAK,cAAc,WAE3B;IAED,+CAA+C;IAC/C,IAAa,gBAAgB,WAE5B;IAED,OAAO,CAAC,cAAc,CAAC,CAA+B;IACtD,OAAO,CAAC,eAAe,CAAC,CAAY;gBAExB,SAAS,EAAE,GAAG;IAkB1B,SAAS,CAAC,mBAAmB;IAI7B,KAAK;IAyBL,WAAW;IAKX,IAAI,SAAS;;;;MAGZ;IAED,IAAI,KAAK;;;;MAIR;IAED,eAAe;IAIf,OAAO,CAAC,iBAAiB;IAUzB;;;OAGG;IACH,OAAO,CAAC,kBAAkB;IAW1B,MAAM;IAQN,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC;IAWhE,eAAe;IAIf,iBAAiB;IAIjB,UAAU;IAIV,gBAAgB;IAchB,KAAK;IASL,OAAO;CAWR"}
@@ -12,7 +12,6 @@ export declare abstract class RealObjectSprite extends RealObject<THREE.Sprite>
12
12
  */
13
13
  get geometricOffsetY(): number;
14
14
  updateAlpha(): void;
15
- updateHidden(): void;
16
15
  updateFillStyle(): void;
17
16
  }
18
17
  //# sourceMappingURL=real-object-sprite.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"real-object-sprite.d.ts","sourceRoot":"","sources":["../../src/threed/real-object-sprite.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAI9B,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAA;AAE7C,8BAAsB,gBAAiB,SAAQ,UAAU,CAAC,KAAK,CAAC,MAAM,CAAC;IACrE,SAAS,CAAC,mBAAmB;IAI7B,KAAK;IAML,QAAQ,CAAC,aAAa,IAAI,IAAI;IAI9B,IAAI,EAAE,WAWL;IAED;;;;OAIG;IACH,IAAa,gBAAgB,IAAI,MAAM,CAGtC;IAED,WAAW;IAMX,YAAY;IAIZ,eAAe;CAqBhB"}
1
+ {"version":3,"file":"real-object-sprite.d.ts","sourceRoot":"","sources":["../../src/threed/real-object-sprite.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAI9B,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAA;AAE7C,8BAAsB,gBAAiB,SAAQ,UAAU,CAAC,KAAK,CAAC,MAAM,CAAC;IACrE,SAAS,CAAC,mBAAmB;IAI7B,KAAK;IAML,QAAQ,CAAC,aAAa,IAAI,IAAI;IAI9B,IAAI,EAAE,WAWL;IAED;;;;OAIG;IACH,IAAa,gBAAgB,IAAI,MAAM,CAGtC;IAED,WAAW;IAMX,eAAe;CAqBhB"}
@@ -1 +1 @@
1
- {"version":3,"file":"real-object-text.d.ts","sourceRoot":"","sources":["../../src/threed/real-object-text.ts"],"names":[],"mappings":"AASA,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAA;AAItD;;GAEG;AACH,qBAAa,cAAe,SAAQ,cAAc;IAChD,iDAAiD;IACjD,IAAI,SAAS,IAAI,MAAM,CAEtB;IAED,6CAA6C;IAC7C,SAAS,KAAK,cAAc,WAE3B;IAED,IAAa,gBAAgB,WAE5B;IAED,aAAa;IAKb,iBAAiB;IAEjB,eAAe;IAKf,eAAe;IAiBf,UAAU;IAyDV,WAAW;CASZ"}
1
+ {"version":3,"file":"real-object-text.d.ts","sourceRoot":"","sources":["../../src/threed/real-object-text.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAA;AAItD;;GAEG;AACH,qBAAa,cAAe,SAAQ,cAAc;IAChD,iDAAiD;IACjD,IAAI,SAAS,IAAI,MAAM,CAEtB;IAED,6CAA6C;IAC7C,SAAS,KAAK,cAAc,WAE3B;IAED,IAAa,gBAAgB,WAE5B;IAED,aAAa;IAKb,iBAAiB;IAEjB,eAAe;IAKf,eAAe;IAiBf,UAAU;IAyDV,WAAW;CAQZ"}
@@ -12,7 +12,7 @@ export declare abstract class RealObject<T extends THREE.Object3D = THREE.Object
12
12
  private _lastText?;
13
13
  object3d: T;
14
14
  private _onchangeWrapper;
15
- static buildFillStyleTexture(component: Component, fillStyleOverride?: unknown): THREE.Texture<unknown> | undefined;
15
+ static buildFillStyleTexture(component: Component, fillStyleOverride?: unknown, options?: import('./texture/fillstyle-texture.js').TextureUVOptions): THREE.Texture<unknown> | undefined;
16
16
  constructor(component: Component | any);
17
17
  update(): void;
18
18
  /**
@@ -34,6 +34,16 @@ export declare abstract class RealObject<T extends THREE.Object3D = THREE.Object
34
34
  protected getObject3dInstance(): T;
35
35
  build(): void;
36
36
  updateMaterial3d(): void;
37
+ /**
38
+ * 그림자 cast/receive 의도 훅. 기본은 material3d 해석값을 그대로 사용한다.
39
+ * 컴포넌트가 자기 본질에 맞게 override — 예) FloorPlate 는 항상 receive=true,
40
+ * 불투명일 때만 cast=true. build()/updateMaterial3d() 가 이 훅을 거쳐 적용하므로,
41
+ * material3d 편집으로 도는 updateMaterial3d 에서도 컴포넌트 의도가 덮이지 않는다.
42
+ */
43
+ protected resolveShadow(cast?: boolean, receive?: boolean): {
44
+ cast: boolean;
45
+ receive: boolean;
46
+ };
37
47
  private _applyShadow;
38
48
  /** 기즈모(translate/rotate/scale)를 통한 변환이 가능한지 여부. 기본 true. */
39
49
  get gizmoTransformable(): boolean;
@@ -73,6 +83,21 @@ export declare abstract class RealObject<T extends THREE.Object3D = THREE.Object
73
83
  setTransientPlacement(p: Placement): void;
74
84
  /** Transient placement 해제 → default (state-driven) 로 복귀. */
75
85
  clearTransientPlacement(): void;
86
+ /**
87
+ * 보유 item(_items) 3D 배치의 *기본 구현* — three-capability 가 item 3D 빌드 후 호출.
88
+ *
89
+ * host 가 배치 capability(`placementFor` = Capacity + arrangementStrategy)를 가지면 각
90
+ * item 을 그 seating pose(holder-local)에 놓는다. → host 가 배치 수식을 hand-roll 하지
91
+ * 않고 *슬롯 + arrangementStrategy 선언만으로* 3D 배치를 얻는다. (영역 적층이 필요한 host —
92
+ * pallet/stockpile/trailer — 는 대신 StackingStrategy 를 선언하고 자기 layoutHeldItems 에서
93
+ * 적용한다.) host 가 자기만의 배치(chute 슬로프 / forklift fork)를 원하면 이 메서드를 override 한다.
94
+ *
95
+ * *선언된 slot(host.slots)에 배정된* item(rack cell / spot 등)은 receive/자체 로직이 이미
96
+ * 소유하므로 건드리지 않는다(회귀 방지). 그 외 — slot-less item, 또는 host 가 선언하지 않은
97
+ * slotId 를 가진 item(예: data 로 올린 pallet 위 box 의 논리 cellId) — 은 순번대로 placementFor
98
+ * 로 배치한다. placementFor 없으면 no-op(기존 동작 보존).
99
+ */
100
+ layoutHeldItems(): void;
76
101
  /**
77
102
  * Component의 상태값의 변화를 Object3D에 반영 - translate, rotation, scale
78
103
  */
@@ -97,13 +122,60 @@ export declare abstract class RealObject<T extends THREE.Object3D = THREE.Object
97
122
  get cz(): number;
98
123
  /**
99
124
  * 이 컨테이너가 아이템을 받는 표면의 Y (자신의 object3d local space 기준).
100
- * 서브클래스에서 오버라이드하면 ContainerCapacity.receive()가 수용된 아이템의
125
+ * 서브클래스에서 오버라이드하면 FlowNode.receive()가 수용된 아이템의
101
126
  * zPos를 0으로 설정하고, cz 계산 시 이 값만큼 자동으로 보정된다.
102
127
  * 결과: 수용된 아이템의 zPos=0 이 "이 표면 위에 놓임"을 의미하게 됨.
103
128
  *
104
- * 반환값: object3d local Y에서 표면의 위치. 0 = 표면 없음(기본값).
129
+ * **주의**: 값은 *_cz formula -parentGeoOffset 자동 상쇄 적용 전_* 의
130
+ * raw 값이다. cz formula:
131
+ *
132
+ * cz = childZPos + tz + childSyncZPosOffset - parentGeoOffset + receivingSurfaceY
133
+ * carrier.bottom in parent local = -parentDepth/2 + receivingSurfaceY (floor default)
134
+ *
135
+ * 즉 *_carrier.bottom 을 top face (= +parentDepth/2) 에 정렬_* 하려면
136
+ * receivingSurfaceY = parentDepth (NOT parentDepth/2)
137
+ *
138
+ * 직관적 이름의 함정 — *_local Y_* 같은데 실은 *_+parentGeoOffset 포함된_*
139
+ * 값. 같은 실수 반복 회피 위해 `surfaceAtLocalY(localY)` helper 사용 권장.
140
+ *
141
+ * @returns object3d local Y에서 표면의 위치 (+parentGeoOffset 포함). 0 = 표면 없음.
105
142
  */
106
143
  get receivingSurfaceY(): number;
144
+ /**
145
+ * `receivingSurfaceY` 의 *_의도 일치 helper_*. caller 는 *_직관적 local Y_*
146
+ * (= center 기준; top face = +depth/2, bottom = -depth/2) 만 명시하고, helper
147
+ * 가 *_+parentGeoOffset 자동 상쇄_* 처리.
148
+ *
149
+ * 사용:
150
+ * ```ts
151
+ * get receivingSurfaceY() {
152
+ * return this.surfaceAtLocalY(this.effectiveDepth / 2) // 메인바디 상단면
153
+ * }
154
+ * ```
155
+ *
156
+ * 효과: `carrier.bottom in parent local = localY` (= 직관 일치).
157
+ *
158
+ * cz formula 풀이:
159
+ * cz = childZPos + childSyncZPosOffset - parentGeoOffset + (localY + parentGeoOffset)
160
+ * = childZPos + childSyncZPosOffset + localY
161
+ * carrier.bottom = -childSyncZPosOffset + cz = childZPos + localY (= localY)
162
+ *
163
+ * 같은 실수 반복 차단: receivingSurfaceY 의 raw 의미 (= +parentGeoOffset 포함)
164
+ * 와 직관 (= local Y) 의 *_분리_* — helper 가 변환 책임.
165
+ */
166
+ protected surfaceAtLocalY(localY: number): number;
167
+ /**
168
+ * 깊이형 컨테이너가 *일반 자식(_components)* 을 안착시킬 표면 Y — scenePlacement 별:
169
+ * floor(기본): 상단면(+depth/2) / inverted: 하단면(-depth/2) / space: 중앙(0).
170
+ *
171
+ * base `receivingSurfaceY` 기본값은 0(표면 없음 — carrier/item/primitive shape).
172
+ * 슬래브형 컨테이너(FloorPlate 등)는 `get receivingSurfaceY() { return this.placementSurfaceY() }`
173
+ * 로 이 컨벤션을 opt-in 한다 — placement→안착면 규칙을 컴포넌트마다 재구현하지 않도록 공통화.
174
+ *
175
+ * (center origin 의 geometricOffsetY 는 cz 공식의 -parentGeoOffset 과 surfaceAtLocalY 의
176
+ * +geometricOffsetY 에서 상쇄 → 실효 자식 안착면 = scenePlacement 가 지정하는 face.)
177
+ */
178
+ protected placementSurfaceY(): number;
107
179
  /**
108
180
  * 실제 사용되는 zPos 값. depth의 effectiveDepth와 짝을 이루는 NaN-safe getter.
109
181
  *
@@ -143,6 +215,12 @@ export declare abstract class RealObject<T extends THREE.Object3D = THREE.Object
143
215
  * `component.root`(= RootContainer, 최상위)가 아닌 `component.rootModel`(= 3D 모델의 루트)을 읽어야 한다.
144
216
  */
145
217
  protected get scenePlacement(): 'floor' | 'space' | 'inverted';
218
+ /**
219
+ * `scenePlacement` 의 public 읽기 전용 노출 — PlacementSurface contract
220
+ * (FlowNode.placementFor) 가 carrier 의 sync offset (zPos →
221
+ * object3d.position.y 변환분) 을 holder 와 동일 모드로 계산하는 데 사용.
222
+ */
223
+ get placementMode(): 'floor' | 'space' | 'inverted';
146
224
  private _components3D?;
147
225
  /**
148
226
  * 팩토리가 bottom-up 좌표계(y=0이 바닥, +Y 방향으로 쌓음)로 자체 mesh를 추가할 group.
@@ -200,7 +278,30 @@ export declare abstract class RealObject<T extends THREE.Object3D = THREE.Object
200
278
  */
201
279
  syncAnimationDelta(): void;
202
280
  updateDimension(): void;
281
+ /**
282
+ * content alpha 는 이제 코어의 opacity 오버레이(applyMaterialOpacity)가 faint 와 함께 일괄 적용한다.
283
+ * 컴포넌트는 alpha 를 material 에 굽지 않는다(설계 opacity 만) — 여기서 오버레이 재적용만 트리거.
284
+ * (하위호환: updateAlpha 를 직접 호출하던 곳도 동일 경로로 수렴.)
285
+ */
203
286
  updateAlpha(): void;
287
+ /**
288
+ * 편집 모드 모델링 흐림(faint) 대상 여부 — 3채널 공용 판정(isComponentFaint)에 위임.
289
+ * hidden 이거나 포커스 필터 불일치(dim)면 true. 뷰 모드는 흐림 없음(hidden 은 visible 로 처리).
290
+ */
291
+ protected isModelingFaint(): boolean;
292
+ /**
293
+ * **content alpha × faint 를 material opacity 로 일괄 반영** (코어 소유, 모든 컴포넌트 공통).
294
+ * 컴포넌트가 만든 material(설계 opacity)을 canonical 로 삼아, `state.alpha × (faint?0.5:1)` 배율의
295
+ * 공유 변형으로 mesh.material 을 스왑한다(material-variant.applyMeshOpacity). 공유 원본은 불변이라
296
+ * 공유 material(bank/모듈 싱글턴)을 써도 오염 없음. faint 는 색을 버리고 base 로 수렴, 비-faint 는
297
+ * 색 유지. 무변형(alpha≥1·비-faint)이면 스왑 없음.
298
+ *
299
+ * 다른 RealObject 가 소유한 서브트리는 건너뛴다(각 컴포넌트가 자기 것 처리 —
300
+ * scene._reapplyModelingFaint 가 전체 순회). applyFocusDim 은 하위호환 별칭.
301
+ */
302
+ applyMaterialOpacity(): void;
303
+ /** 하위호환 별칭 — 이제 content alpha × faint 를 함께 적용. */
304
+ applyFocusDim(): void;
204
305
  updateHidden(): void;
205
306
  updateStrokeStyle(): void;
206
307
  updateFillStyle(): void;
@@ -1 +1 @@
1
- {"version":3,"file":"real-object.d.ts","sourceRoot":"","sources":["../../src/threed/real-object.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"real-object.d.ts","sourceRoot":"","sources":["../../src/threed/real-object.ts"],"names":[],"mappings":"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"}
@@ -18,11 +18,22 @@ export declare function drawGradientCanvas(fillStyle: {
18
18
  color: string;
19
19
  }[];
20
20
  }, w: number, h: number): HTMLCanvasElement | null;
21
+ /**
22
+ * buildFillStyleTexture / buildPatternTexture 옵션 — image load 가 비동기라
23
+ * wrapS / repeat / rotation 이 onload 안에서 *마지막에 set* 되어 호출자가 외부
24
+ * 에서 변경해도 overwrite 됨. 옵션으로 명시하면 onload 안에서 적용 보장.
25
+ */
26
+ export interface TextureUVOptions {
27
+ /** true 면 U 축 거울상 (texture.repeat.x = -1, offset.x = 1). */
28
+ mirror?: boolean;
29
+ /** 추가 회전 (degrees). 90/180/270 등. */
30
+ rotation?: number;
31
+ }
21
32
  /**
22
33
  * 패턴 fillStyle을 2D 옵션(fitPattern, offset, align, repeat, color)에 맞춰
23
34
  * 캔버스 텍스처로 생성한다. 이미지 로드 완료 후 component.invalidate()로 갱신.
24
35
  */
25
- export declare function buildPatternTexture(component: Component, fillStyle: any): THREE.Texture;
36
+ export declare function buildPatternTexture(component: Component, fillStyle: any, options?: TextureUVOptions): THREE.Texture;
26
37
  /**
27
38
  * gradient fillStyle을 THREE.CanvasTexture로 생성한다.
28
39
  */
@@ -42,5 +53,5 @@ export declare function buildGradientTexture(fillStyle: {
42
53
  * Backdrop 처럼 한 컴포넌트가 여러 면에 서로 다른 fillStyle 을 적용하는
43
54
  * 경우, frozen state 를 mutate 하지 않고 override 만 전달하면 된다.
44
55
  */
45
- export declare function buildFillStyleTexture(component: Component, fillStyleOverride?: unknown): THREE.Texture | undefined;
56
+ export declare function buildFillStyleTexture(component: Component, fillStyleOverride?: unknown, options?: TextureUVOptions): THREE.Texture | undefined;
46
57
  //# sourceMappingURL=fillstyle-texture.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"fillstyle-texture.d.ts","sourceRoot":"","sources":["../../../src/threed/texture/fillstyle-texture.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAC9B,OAAO,KAAK,SAAS,MAAM,+BAA+B,CAAA;AAG1D;;;GAGG;AACH,wBAAgB,kBAAkB,CAChC,SAAS,EAAE;IACT,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,UAAU,CAAC,EAAE;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,EAAE,CAAA;IAClD,uDAAuD;IACvD,aAAa,CAAC,EAAE;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,EAAE,CAAA;CACtD,EACD,CAAC,EAAE,MAAM,EACT,CAAC,EAAE,MAAM,GACR,iBAAiB,GAAG,IAAI,CAyC1B;AAED;;;GAGG;AACH,wBAAgB,mBAAmB,CAAC,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,GAAG,GAAG,KAAK,CAAC,OAAO,CAsJvF;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAClC,SAAS,EAAE;IAAE,YAAY,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IAAC,UAAU,EAAE;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,EAAE,CAAA;CAAE,GAC1H,KAAK,CAAC,aAAa,GAAG,SAAS,CASjC;AAED;;;;;;GAMG;AACH,wBAAgB,qBAAqB,CACnC,SAAS,EAAE,SAAS,EACpB,iBAAiB,CAAC,EAAE,OAAO,GAC1B,KAAK,CAAC,OAAO,GAAG,SAAS,CAkB3B"}
1
+ {"version":3,"file":"fillstyle-texture.d.ts","sourceRoot":"","sources":["../../../src/threed/texture/fillstyle-texture.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAC9B,OAAO,KAAK,SAAS,MAAM,+BAA+B,CAAA;AAG1D;;;GAGG;AACH,wBAAgB,kBAAkB,CAChC,SAAS,EAAE;IACT,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,UAAU,CAAC,EAAE;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,EAAE,CAAA;IAClD,uDAAuD;IACvD,aAAa,CAAC,EAAE;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,EAAE,CAAA;CACtD,EACD,CAAC,EAAE,MAAM,EACT,CAAC,EAAE,MAAM,GACR,iBAAiB,GAAG,IAAI,CAyC1B;AAED;;;;GAIG;AACH,MAAM,WAAW,gBAAgB;IAC/B,4DAA4D;IAC5D,MAAM,CAAC,EAAE,OAAO,CAAA;IAChB,qCAAqC;IACrC,QAAQ,CAAC,EAAE,MAAM,CAAA;CAClB;AAiBD;;;GAGG;AACH,wBAAgB,mBAAmB,CAAC,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,GAAG,EAAE,OAAO,CAAC,EAAE,gBAAgB,GAAG,KAAK,CAAC,OAAO,CAyJnH;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAClC,SAAS,EAAE;IAAE,YAAY,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IAAC,UAAU,EAAE;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,EAAE,CAAA;CAAE,GAC1H,KAAK,CAAC,aAAa,GAAG,SAAS,CASjC;AAED;;;;;;GAMG;AACH,wBAAgB,qBAAqB,CACnC,SAAS,EAAE,SAAS,EACpB,iBAAiB,CAAC,EAAE,OAAO,EAC3B,OAAO,CAAC,EAAE,gBAAgB,GACzB,KAAK,CAAC,OAAO,GAAG,SAAS,CAsB3B"}
@@ -71,6 +71,8 @@ export declare class ThreeCapability {
71
71
  private _onFocus?;
72
72
  private _redrawHandler?;
73
73
  private _onComponentAdd?;
74
+ private _onItemAdd?;
75
+ private _onItemRemove?;
74
76
  private _onComponentRemove?;
75
77
  private _onSelectionChanged?;
76
78
  private _onAddStart?;
@@ -427,6 +429,12 @@ export declare class ThreeCapability {
427
429
  * @param style 화살표 스타일 옵션
428
430
  */
429
431
  addArrow(id: string, from: Component, to: Component, style?: ArrowStyle3D): void;
432
+ /**
433
+ * Selection/decorator outline 의 색을 설정. visibleEdge / hiddenEdge 동일 색.
434
+ * Tracker 등 외부 모듈이 자기 정책 (예: 영구 추적 highlight 색) 으로 outline
435
+ * 색을 동기화할 때 사용. 0xf26522 (기본 색) 으로 복원도 같은 메서드.
436
+ */
437
+ setOutlineColor(color: number): void;
430
438
  /**
431
439
  * ID로 3D 화살표를 제거한다.
432
440
  */
@@ -1 +1 @@
1
- {"version":3,"file":"three-capability.d.ts","sourceRoot":"","sources":["../../src/threed/three-capability.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"three-capability.d.ts","sourceRoot":"","sources":["../../src/threed/three-capability.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,5 @@
1
+ /** 3D 기능 전역 사용 여부. */
2
+ export declare function isThreedEnabled(): boolean;
3
+ /** 3D 기능 전역 on/off. 앱 부트스트랩에서 씬 생성 전에 호출. */
4
+ export declare function setThreedEnabled(value: boolean): void;
5
+ //# sourceMappingURL=threed-enabled.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"threed-enabled.d.ts","sourceRoot":"","sources":["../../src/threed/threed-enabled.ts"],"names":[],"mappings":"AAgBA,sBAAsB;AACtB,wBAAgB,eAAe,IAAI,OAAO,CAEzC;AAED,6CAA6C;AAC7C,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,OAAO,GAAG,IAAI,CAErD"}
@@ -1 +1 @@
1
- {"version":3,"file":"dispose.d.ts","sourceRoot":"","sources":["../../../src/threed/utils/dispose.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAwB9B,wBAAgB,eAAe,CAAC,GAAG,EAAE,KAAK,CAAC,QAAQ,QAmBlD"}
1
+ {"version":3,"file":"dispose.d.ts","sourceRoot":"","sources":["../../../src/threed/utils/dispose.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAiC9B,wBAAgB,eAAe,CAAC,GAAG,EAAE,KAAK,CAAC,QAAQ,QAmBlD"}
@@ -0,0 +1,21 @@
1
+ import * as THREE from 'three';
2
+ import { type PolygonPathPoint } from '../../types/polygon-path.js';
3
+ export interface BuildShapeOptions {
4
+ /** 코너 라운드 fallback (per-vertex radius 없을 때). default 0. */
5
+ round?: number;
6
+ /** 곡선/라운드 sampling 분할 수. default 24. */
7
+ divisions?: number;
8
+ }
9
+ /**
10
+ * PolygonPath 를 THREE.Shape 로 변환.
11
+ *
12
+ * - 모든 path 점이 직선 + radius 0 + bulge 0 → moveTo/lineTo 만의 단순 polygon
13
+ * - 코너 라운드 (radius) 또는 호 (bulge) 가 하나라도 있으면 → THREE.Path 로
14
+ * quadraticCurveTo / absarc 구성 후 `getPoints(divisions)` 로 polyline 화
15
+ * 해서 Shape 생성 (ExtrudeGeometry UV 호환성 — Three.js 곡선 처리의 mesh
16
+ * center / UV 불일치 회피 패턴, polygon factory 와 동일)
17
+ *
18
+ * 빈 path / 단일 점 → empty Shape.
19
+ */
20
+ export declare function buildShapeFromPolygonPath(path: PolygonPathPoint[] | undefined | null, options?: BuildShapeOptions): THREE.Shape;
21
+ //# sourceMappingURL=polygon-shape.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"polygon-shape.d.ts","sourceRoot":"","sources":["../../../src/threed/utils/polygon-shape.ts"],"names":[],"mappings":"AAiBA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAC9B,OAAO,EAIL,KAAK,gBAAgB,EACtB,MAAM,6BAA6B,CAAA;AAEpC,MAAM,WAAW,iBAAiB;IAChC,2DAA2D;IAC3D,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,wCAAwC;IACxC,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,yBAAyB,CACvC,IAAI,EAAE,gBAAgB,EAAE,GAAG,SAAS,GAAG,IAAI,EAC3C,OAAO,GAAE,iBAAsB,GAC9B,KAAK,CAAC,KAAK,CAiEb"}
@@ -0,0 +1,57 @@
1
+ import type Component from '../components/component.js';
2
+ export interface TrackerOptions {
3
+ /** 원본 대상 deco-border color. CSS hex (예: '#00aaff7f'). 3D outline 색에도 동기화 (RGB 만). */
4
+ color?: string;
5
+ /** polling 간격 (ms). 기본 1000. wall-clock 기준 (simulation paused 와 무관). */
6
+ intervalMs?: number;
7
+ /**
8
+ * 원본이 트리에 없을 때 대신 highlight 할 컴포넌트를 application 정책으로 결정.
9
+ * polling 매 tick 에 원본 미발견 시 호출. null/undefined 반환 시 highlight 없이
10
+ * 추적만 유지. 원본이 다시 등장하면 polling 이 원본으로 즉시 복귀하고 fallback 해제.
11
+ */
12
+ fallback?: (id: string, scene: any) => Component | null | undefined;
13
+ /** fallback 컴포넌트 deco-border 색. 미지정 시 color 와 동일. */
14
+ fallbackColor?: string;
15
+ }
16
+ /**
17
+ * 특정 id 의 컴포넌트를 영구 추적해서 시각적으로 highlight.
18
+ *
19
+ * - 단일 추적: start() 는 이전 추적을 자동 stop.
20
+ * - polling: wall-clock 기준 throttle. simulation paused 와 무관.
21
+ * - 자동 재부착: 컴포넌트가 dispose/재등장 사이클을 타도 polling 이 새 인스턴스에
22
+ * 다시 부착. carrier 등 동적 컴포넌트에 적합.
23
+ * - 2D/3D 일관성: 2D 는 deco-border (SVG overlay), 3D 는 things-scene 의
24
+ * OutlinePass 가 같은 컴포넌트를 자동 outline. outline 색은 옵션 color 로 동기화.
25
+ * - fallback: 원본이 없는 동안 application 이 결정한 대체 컴포넌트를 highlight.
26
+ * 원본 등장 시 fallback 자동 해제 후 원본으로 복귀.
27
+ */
28
+ export declare class Tracker {
29
+ private _scene;
30
+ private _id;
31
+ private _target;
32
+ private _fallback;
33
+ private _unsubscribe?;
34
+ private _lastCheckMs;
35
+ private _options;
36
+ constructor(scene: any);
37
+ get trackingId(): string | null;
38
+ /**
39
+ * 추적 시작. id 가 트리에 없어도 등록 — 나중에 등장하면 자동 부착.
40
+ * fallback 옵션 지정 시 원본이 없는 동안 fallback 으로 결정된 컴포넌트를 highlight.
41
+ */
42
+ start(id: string, options?: TrackerOptions): void;
43
+ /**
44
+ * 추적 종료. deco-border 해제 + watcher 정지 + 3D outline 색 복원.
45
+ */
46
+ stop(): void;
47
+ dispose(): void;
48
+ /** polling 1회 (또는 start 시 즉시 부착). */
49
+ private _tickOnce;
50
+ private _findTarget;
51
+ private _clearTarget;
52
+ private _clearFallback;
53
+ private _decoOptions;
54
+ private _setOutlineColorFromHex;
55
+ private _setOutlineColor;
56
+ }
57
+ //# sourceMappingURL=tracker.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tracker.d.ts","sourceRoot":"","sources":["../../src/tracker/tracker.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,SAAS,MAAM,4BAA4B,CAAA;AAEvD,MAAM,WAAW,cAAc;IAC7B,qFAAqF;IACrF,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,wEAAwE;IACxE,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB;;;;OAIG;IACH,QAAQ,CAAC,EAAE,CAAC,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,KAAK,SAAS,GAAG,IAAI,GAAG,SAAS,CAAA;IACnE,qDAAqD;IACrD,aAAa,CAAC,EAAE,MAAM,CAAA;CACvB;AAUD;;;;;;;;;;;GAWG;AACH,qBAAa,OAAO;IAClB,OAAO,CAAC,MAAM,CAAK;IACnB,OAAO,CAAC,GAAG,CAAsB;IACjC,OAAO,CAAC,OAAO,CAAyB;IACxC,OAAO,CAAC,SAAS,CAAyB;IAC1C,OAAO,CAAC,YAAY,CAAC,CAAY;IACjC,OAAO,CAAC,YAAY,CAAI;IACxB,OAAO,CAAC,QAAQ,CAGG;gBAEP,KAAK,EAAE,GAAG;IAItB,IAAI,UAAU,IAAI,MAAM,GAAG,IAAI,CAE9B;IAED;;;OAGG;IACH,KAAK,CAAC,EAAE,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,cAAc,GAAG,IAAI;IA6BjD;;OAEG;IACH,IAAI,IAAI,IAAI;IAcZ,OAAO,IAAI,IAAI;IAIf,qCAAqC;IACrC,OAAO,CAAC,SAAS;IAoCjB,OAAO,CAAC,WAAW;IAKnB,OAAO,CAAC,YAAY;IAOpB,OAAO,CAAC,cAAc;IAOtB,OAAO,CAAC,YAAY;IAIpB,OAAO,CAAC,uBAAuB;IAM/B,OAAO,CAAC,gBAAgB;CAMzB"}