ss-component-new 1.3.695 → 1.3.697

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 (85) hide show
  1. package/dist/config.js +1 -1
  2. package/dist/{index-BHtNKL1L.js → index-BKK_dL6t.js} +1 -1
  3. package/dist/{index-ChNfRlIP.js → index-BKoAuSBh.js} +223 -18
  4. package/dist/index-D7JA6c9V.js +53058 -0
  5. package/dist/index-Dh-XsS5U.js +1044 -0
  6. package/dist/index-DpYqhPhA.js +182 -0
  7. package/dist/index-Q71ALCnS.js +213 -0
  8. package/dist/index-z0_YrIG2.js +50 -0
  9. package/dist/menu-BwJj321q.js +5217 -0
  10. package/dist/origin-eVVoOCRz.js +11430 -0
  11. package/dist/ss-component.css +2 -8
  12. package/dist/ss-component.js +28 -64
  13. package/dist/ss-component2.js +15 -75
  14. package/dist/ss-component3.js +1 -1
  15. package/package.json +8 -6
  16. package/public/config.js +1 -1
  17. package/dist/JSEncrypt-B36c1iN5.js +0 -1983
  18. package/dist/MTLLoader-fu1majr7.js +0 -657
  19. package/dist/URDFLoader-DG491kO8.js +0 -2299
  20. package/dist/animationData-iKsXhBLL.js +0 -83
  21. package/dist/array-hv-iolw_.js +0 -1045
  22. package/dist/clone-j0I6jGJI.js +0 -8
  23. package/dist/eleIcon-qStmsM1q.js +0 -29
  24. package/dist/fileUtil-UOt_otFo.js +0 -20
  25. package/dist/iconfont-jwZTqjI3.js +0 -1018
  26. package/dist/icons/svg/functionList.svg +0 -1
  27. package/dist/icons/svg/method.svg +0 -1
  28. package/dist/index-11kpzK0A.js +0 -209
  29. package/dist/index-B-aFq64D.js +0 -93
  30. package/dist/index-B344yCJI.js +0 -107
  31. package/dist/index-B4vSRtvT.js +0 -1000
  32. package/dist/index-BFw9okkt.js +0 -63010
  33. package/dist/index-BPMcUKIT.js +0 -103
  34. package/dist/index-BUqAl9Ev.js +0 -20549
  35. package/dist/index-Bcr-OqeW.js +0 -62
  36. package/dist/index-BhKxwXKI.js +0 -83
  37. package/dist/index-BjlQhL90.js +0 -84
  38. package/dist/index-BsvmdFpW.js +0 -627
  39. package/dist/index-C4jPBVPP.js +0 -55
  40. package/dist/index-CDx4Yfw0.js +0 -25280
  41. package/dist/index-CFm8dPNq.js +0 -331
  42. package/dist/index-CJlI35A-.js +0 -48
  43. package/dist/index-CV_jQDcg.js +0 -9
  44. package/dist/index-CWLgH0tL.js +0 -411
  45. package/dist/index-CWOXvFfD.js +0 -44
  46. package/dist/index-CeGa9pc6.js +0 -665
  47. package/dist/index-ClqA3eGZ.js +0 -28484
  48. package/dist/index-D-boFJIv.js +0 -873
  49. package/dist/index-D1pKtwPz.js +0 -119
  50. package/dist/index-DFOOD95R.js +0 -447
  51. package/dist/index-DKx2CTEL.js +0 -572
  52. package/dist/index-DNyQV8z1.js +0 -78
  53. package/dist/index-DUbSVaH3.js +0 -93
  54. package/dist/index-DUbk5m5P.js +0 -99
  55. package/dist/index-DZmXuPt5.js +0 -622
  56. package/dist/index-D_bmYgFA.js +0 -30
  57. package/dist/index-Dyn2r0VE.js +0 -470
  58. package/dist/index-YjBTGOkO.js +0 -61
  59. package/dist/index-bFrEKaq_.js +0 -8989
  60. package/dist/index-hMFaIKW2.js +0 -98
  61. package/dist/index-rlStojTL.js +0 -52
  62. package/dist/index-rr5LPnDh.js +0 -201
  63. package/dist/index-uF-ibwG0.js +0 -9
  64. package/dist/index.vue_vue_type_style_index_0_scoped_83e6d490_lang-Ww36oycE.js +0 -137877
  65. package/dist/isString-0ZglyOfu.js +0 -8
  66. package/dist/localIcon-D5UoFBU5.js +0 -76
  67. package/dist/main-Cx8oyhHy.js +0 -502
  68. package/dist/menuIndex-CwBxge00.js +0 -159
  69. package/dist/request-1RPa2bBn.js +0 -9048
  70. package/dist/threeModel-D0Z3a4Jl.js +0 -1108
  71. package/dist/threePreview-CzIm7J7g.js +0 -2259
  72. package/dist/threeSceneView-BbuwnDk9.js +0 -1290
  73. package/dist/threeSceneViewForCPMPIP-B7EufZpB.js +0 -539
  74. package/dist/threeTrackPathView-B4DWtZ5_.js +0 -620
  75. package/dist/threeViewerHost-CDYOyVIs.js +0 -233
  76. package/dist/urdfTree-CNIS8SgN.js +0 -254
  77. package/dist/workpieceTreePanel-CMBs8GTw.js +0 -559
  78. package/public/icons/svg/functionList.svg +0 -1
  79. package/public/icons/svg/method.svg +0 -1
  80. /package/dist/icons/svg/{tableClose.svg → table-close.svg} +0 -0
  81. /package/dist/icons/svg/{tableExpand.svg → table-expand.svg} +0 -0
  82. /package/dist/icons/svg/{Update.svg → update.svg} +0 -0
  83. /package/public/icons/svg/{tableClose.svg → table-close.svg} +0 -0
  84. /package/public/icons/svg/{tableExpand.svg → table-expand.svg} +0 -0
  85. /package/public/icons/svg/{Update.svg → update.svg} +0 -0
@@ -1,539 +0,0 @@
1
- import { defineComponent as ge, ref as r, computed as k, watch as X, onUnmounted as De, resolveComponent as G, createElementBlock as x, openBlock as g, createElementVNode as n, createCommentVNode as U, createVNode as s, toDisplayString as L, Fragment as Be, renderList as Je, withCtx as le, shallowRef as te, onMounted as Me, nextTick as me, onBeforeUnmount as Ee, withDirectives as I, vShow as W, unref as z, renderSlot as ve, createBlock as de } from "vue";
2
- import { s as pe } from "./threeViewerHost-CDYOyVIs.js";
3
- import { u as Ge, a as He, b as Ie, T as y, C as We } from "./iconfont-jwZTqjI3.js";
4
- import { U as Xe, u as Ye, a as Ze, W as qe } from "./workpieceTreePanel-CMBs8GTw.js";
5
- import { c as Ke } from "./index-bFrEKaq_.js";
6
- import "./index.vue_vue_type_style_index_0_scoped_83e6d490_lang-Ww36oycE.js";
7
- import { _ as fe } from "./index.vue_vue_type_script_setup_true_lang-DRzriV-s.js";
8
- import { g as Qe, b as et, U as tt, J as lt, d as nt } from "./urdfTree-CNIS8SgN.js";
9
- import { E as _ } from "./request-1RPa2bBn.js";
10
- import { _ as he } from "./_plugin-vue_export-helper-CHgC5LLL.js";
11
- import { i as at } from "./animationData-iKsXhBLL.js";
12
- import { O as ot } from "./MTLLoader-fu1majr7.js";
13
- const st = { class: "panel-content" }, it = {
14
- key: 0,
15
- class: "animation-controls"
16
- }, rt = { class: "control-row" }, ut = { class: "control-row" }, ct = { class: "frame-info" }, vt = { class: "control-row" }, dt = {
17
- key: 1,
18
- class: "empty-state"
19
- }, mt = { class: "dialog-footer" }, pt = /* @__PURE__ */ ge({
20
- __name: "urdfAnimationPanel",
21
- props: {
22
- model: {},
23
- scene: {},
24
- xyzbcList: {}
25
- },
26
- setup(S, { expose: f }) {
27
- const j = S, i = r([]), T = r(!1), F = r(""), c = r("stopped"), h = r(0), O = r(0), C = r(10), v = r(null);
28
- let d = 0;
29
- const P = r([]), w = k(() => j.model ? Qe(j.model).map((b) => b.name) : []), R = k(() => [...w.value]), ne = k(() => R.value.length > 0 ? `请按以下格式粘贴数据 (第一行为表头,使用 Tab 分隔):
30
- ${R.value.join(" ")}
31
- 0 0 0 ...
32
- 1 2 3 ...` : "请先加载模型。"), Y = k(() => i.value[h.value] || {});
33
- X(() => j.model, (a) => {
34
- a ? (v.value = new Xe(a), P.value = et(a), h.value = 0) : (v.value = null, P.value = []);
35
- }, { immediate: !0 });
36
- const J = (a) => {
37
- if (a < 0 || a >= i.value.length) {
38
- console.error(`帧索引 ${a} 超出范围`);
39
- return;
40
- }
41
- const l = i.value[a];
42
- if (v.value) {
43
- const b = {};
44
- w.value.forEach((A) => {
45
- const u = parseFloat(l[A]);
46
- isNaN(u) || (b[A] = u);
47
- }), v.value.setJointAngles(b);
48
- }
49
- h.value = a, O.value = i.value.length > 1 ? a / (i.value.length - 1) * 100 : 100;
50
- }, M = async (a) => {
51
- try {
52
- for (let l = h.value; l < i.value.length; l++) {
53
- if (a !== d) return;
54
- const b = i.value[l], A = {};
55
- if (v.value)
56
- w.value.forEach((u) => {
57
- const m = parseFloat(b[u]);
58
- isNaN(m) || (A[u] = m);
59
- }), await v.value.animateToState(
60
- A,
61
- C.value,
62
- (u) => {
63
- a === d && (O.value = (l + u) / i.value.length * 100);
64
- }
65
- );
66
- else {
67
- if (await new Promise((u) => setTimeout(u, C.value)), a !== d) return;
68
- O.value = (l + 1) / i.value.length * 100;
69
- }
70
- h.value = l;
71
- }
72
- a === d && (_.success("动画播放完成"), c.value = "stopped", O.value = 100);
73
- } catch (l) {
74
- console.error("动画播放出错:", l), _.error("动画播放出错"), c.value = "stopped";
75
- }
76
- }, N = () => {
77
- if (i.value.length === 0) {
78
- _.error("无动画数据");
79
- return;
80
- }
81
- c.value === "stopped" && (h.value = 0, J(0)), c.value = "playing", d++, M(d), _.info("动画播放中");
82
- }, Z = () => {
83
- c.value === "playing" && (d++, c.value = "paused", _.info("动画已暂停"));
84
- }, q = () => {
85
- d++, c.value = "stopped", h.value = 0, O.value = 0, J(0), _.info("动画已停止并重置");
86
- }, ae = () => {
87
- c.value === "playing" ? Z() : N();
88
- }, D = (a) => {
89
- d++, c.value = "paused", J(a);
90
- }, oe = () => {
91
- if (!F.value.trim()) {
92
- _.warning("导入内容不能为空");
93
- return;
94
- }
95
- const a = F.value.trim().split(`
96
- `).filter((m) => m.trim() !== "");
97
- if (a.length < 2) {
98
- _.error("导入数据至少需要包含表头行和一行数据");
99
- return;
100
- }
101
- const l = a[0].split(" ").map((m) => m.trim()), b = {};
102
- if (l.forEach((m, p) => {
103
- R.value.includes(m) && (b[p] = m);
104
- }), Object.keys(b).length === 0) {
105
- _.error("没有找到匹配的表头,请检查表头名称是否正确");
106
- return;
107
- }
108
- const u = a.slice(1).map((m) => {
109
- const p = m.split(" "), B = {};
110
- return R.value.forEach((H) => {
111
- B[H] = "0";
112
- }), Object.entries(b).forEach(([H, se]) => {
113
- const E = p[parseInt(H)];
114
- E !== void 0 && E.trim() !== "" && (B[se] = E.trim());
115
- }), B;
116
- });
117
- u.length > 0 ? (i.value = u, _.success(`成功导入 ${u.length} 行数据!`), T.value = !1, F.value = "", q()) : _.error("未能解析到有效数据,请检查格式。");
118
- };
119
- X(() => j.xyzbcList, () => {
120
- j.xyzbcList && (i.value = Ke(j.xyzbcList));
121
- }, {
122
- immediate: !0
123
- });
124
- const K = (a) => `第 ${a + 1} 帧`;
125
- return f({
126
- handlePlayPause: ae,
127
- playAnimation: N,
128
- pauseAnimation: Z,
129
- stopAnimation: q
130
- }), De(() => {
131
- d++;
132
- }), (a, l) => {
133
- const b = G("el-input-number"), A = G("el-slider"), u = G("el-input"), m = G("el-dialog");
134
- return g(), x("div", st, [
135
- l[11] || (l[11] = n("div", { class: "action-bar" }, null, -1)),
136
- i.value.length > 0 ? (g(), x("div", it, [
137
- n("div", rt, [
138
- l[5] || (l[5] = n("label", null, "帧间隔 (ms):", -1)),
139
- s(b, {
140
- modelValue: C.value,
141
- "onUpdate:modelValue": l[0] || (l[0] = (p) => C.value = p),
142
- min: 10,
143
- max: 5e3,
144
- step: 100,
145
- size: "small",
146
- style: { width: "120px" }
147
- }, null, 8, ["modelValue"])
148
- ]),
149
- n("div", ut, [
150
- l[6] || (l[6] = n("label", null, "当前帧:", -1)),
151
- n("span", ct, L(h.value + 1) + " / " + L(i.value.length), 1)
152
- ]),
153
- n("div", vt, [
154
- l[7] || (l[7] = n("label", null, "动画进度:", -1)),
155
- s(A, {
156
- modelValue: h.value,
157
- "onUpdate:modelValue": l[1] || (l[1] = (p) => h.value = p),
158
- min: 0,
159
- max: i.value.length > 0 ? i.value.length - 1 : 0,
160
- step: 1,
161
- "format-tooltip": K,
162
- onInput: D,
163
- disabled: i.value.length === 0 || c.value === "playing",
164
- style: { "flex-grow": "1", margin: "0 10px" }
165
- }, null, 8, ["modelValue", "max", "disabled"])
166
- ]),
167
- n("div", null, [
168
- l[8] || (l[8] = n("label", null, "当前帧数据:", -1)),
169
- n("div", null, [
170
- Y.value ? (g(!0), x(Be, { key: 0 }, Je(Y.value, (p, B) => (g(), x("div", { key: B }, L(B) + ": " + L(p), 1))), 128)) : U("", !0)
171
- ])
172
- ])
173
- ])) : U("", !0),
174
- i.value.length === 0 ? (g(), x("div", dt, l[9] || (l[9] = [
175
- n("p", null, "请先创建数据", -1)
176
- ]))) : U("", !0),
177
- s(m, {
178
- modelValue: T.value,
179
- "onUpdate:modelValue": l[4] || (l[4] = (p) => T.value = p),
180
- title: "导入数据",
181
- width: "500px"
182
- }, {
183
- footer: le(() => [
184
- n("span", mt, [
185
- s(fe, {
186
- modelValue: "取消",
187
- onClick: l[3] || (l[3] = (p) => T.value = !1)
188
- }),
189
- s(fe, {
190
- modelValue: "确认导入",
191
- onClick: oe,
192
- type: "primary"
193
- })
194
- ])
195
- ]),
196
- default: le(() => [
197
- l[10] || (l[10] = n("p", { class: "import-instructions" }, " 请从Excel或CSV中复制数据 (首行为表头, Tab分隔) ", -1)),
198
- s(u, {
199
- modelValue: F.value,
200
- "onUpdate:modelValue": l[2] || (l[2] = (p) => F.value = p),
201
- type: "textarea",
202
- rows: 10,
203
- placeholder: ne.value
204
- }, null, 8, ["modelValue", "placeholder"])
205
- ]),
206
- _: 1,
207
- __: [10]
208
- }, 8, ["modelValue"])
209
- ]);
210
- };
211
- }
212
- }), be = /* @__PURE__ */ he(pt, [["__scopeId", "data-v-00d63f4b"]]), ft = async (S) => await new ot().loadAsync(S), bt = async (S) => await ft(S), gt = { class: "obj-viewer-container" }, ht = { class: "buttonGroup-topLeft" }, yt = { class: "buttonGroup-left" }, _t = { class: "buttonGroup-right" }, kt = { class: "buttonGroup-bottom" }, Ct = { class: "left-panel" }, Pt = { class: "panel-header" }, wt = { class: "panel-body" }, zt = { class: "right-panel" }, Ut = { class: "panel-header" }, xt = { class: "panel-body" }, jt = {
213
- key: 0,
214
- class: "loading-overlay"
215
- }, At = {
216
- key: 1,
217
- class: "brand"
218
- }, Lt = {
219
- key: 0,
220
- class: "brand-item"
221
- }, Vt = { class: "item-value" }, $t = {
222
- key: 1,
223
- class: "brand-item"
224
- }, Tt = { class: "item-value" }, Ot = {
225
- key: 2,
226
- class: "brand-item"
227
- }, Rt = { class: "item-value" }, St = /* @__PURE__ */ ge({
228
- __name: "threeSceneViewForCPMPIP",
229
- props: {
230
- fileBlobs: { default: () => [] },
231
- threeData: {}
232
- },
233
- setup(S) {
234
- const f = S, j = r([]), i = k(() => {
235
- var e, o;
236
- return (o = (e = f == null ? void 0 : f.threeData) == null ? void 0 : e.data) == null ? void 0 : o.csvUrl;
237
- });
238
- X(() => i.value, async () => {
239
- if (console.log("csvUrl", i.value), i.value) {
240
- const t = await at(i.value);
241
- j.value = t;
242
- }
243
- }, {
244
- immediate: !0
245
- });
246
- const T = k(() => {
247
- var e, o;
248
- return (o = (e = f == null ? void 0 : f.threeData) == null ? void 0 : e.data) == null ? void 0 : o.bladeObjUrl;
249
- }), F = r(pe.ROBOT), c = r(null), h = r(!1), O = r(""), C = r(!1), v = r(""), d = r(!1), P = r(""), w = te(null), R = r("叶片模型"), ne = te(null), Y = te(null), J = te(null), M = r(be), {
250
- currentModels: N,
251
- resetView: Z,
252
- initThreeJS: q,
253
- handleResize: ae,
254
- getThreeJSObjects: D,
255
- cleanup: oe,
256
- setAndFitModels: K,
257
- axesHelperVisible: a,
258
- toggleAxesVisibility: l,
259
- zoomIn: b,
260
- zoomOut: A
261
- } = Ge(c), { loadSceneFromFile: u } = Ze(
262
- D,
263
- N,
264
- h,
265
- O
266
- ), { isAnimating: m, toggleAnimation: p, startAnimation: B, stopAnimation: H } = He(D, N), { isClipping: se, activeClippingAxis: E, toggleClipping: ye, updateClippingPlanes: _e } = Ie(D, N), { initRaycaster: ke, selectedObject3D: Ce, setSelectedObjVisible: Pe, updatePosition: we, updateRotation: ze, dispose: Ue } = Ye(c, D, N), xe = () => {
267
- l();
268
- }, je = (t) => {
269
- E.value = t, _e();
270
- }, V = k(() => {
271
- var e, o;
272
- return (o = (e = f == null ? void 0 : f.threeData) == null ? void 0 : e.data) == null ? void 0 : o.machine;
273
- }), ie = k(() => {
274
- var e;
275
- return (e = V == null ? void 0 : V.value) == null ? void 0 : e.modelNumber;
276
- }), re = k(() => {
277
- var e;
278
- return (e = V == null ? void 0 : V.value) == null ? void 0 : e.serialNumber;
279
- }), ue = k(() => {
280
- var e;
281
- return (e = V == null ? void 0 : V.value) == null ? void 0 : e.manufacturer;
282
- }), Ae = k(() => ie.value || re.value || ue.value), Le = k(() => F.value === pe.ROBOT), Q = (t) => {
283
- C.value = !0, v.value = t, t === "剖面视图" && !se.value && ye();
284
- }, ce = (t) => {
285
- d.value = !0, P.value = t;
286
- }, Ve = () => {
287
- var t;
288
- (t = M.value) == null || t.handlePlayPause();
289
- }, $e = () => {
290
- var t;
291
- (t = M.value) == null || t.pauseAnimation();
292
- }, Te = () => {
293
- var t;
294
- (t = M.value) == null || t.stopAnimation();
295
- }, Oe = (t, e) => nt(t, e), Re = async (t) => {
296
- const e = Oe(t, R.value);
297
- if (Y.value = e, console.log("bladeObjUrl", T.value), e && e.parent && T.value) {
298
- const o = await bt(T.value);
299
- o.name = "blade_clone", e.parent.add(o), o.position.copy(e.position), o.rotation.copy(e.rotation), o.scale.copy(e.scale), e.visible = !1, ne.value = o;
300
- } else
301
- R.value && console.warn(`在 Blade '${R.value}' 中未找到可替换的网格或其没有父级。`);
302
- };
303
- X(() => f.fileBlobs, (t) => {
304
- if (t && t.length > 0) {
305
- const e = t[0];
306
- if (!e.name.toLowerCase().endsWith(".urdf"))
307
- return;
308
- u(e).then((o) => {
309
- w.value = o, o && Re(o);
310
- }).catch((o) => {
311
- console.error("加载URDF文件时发生错误:", o), _.error("加载urdf模型失败"), w.value = null;
312
- });
313
- } else
314
- w.value = null;
315
- }, {
316
- immediate: !0,
317
- deep: !0
318
- }), X(w, (t) => {
319
- K(t ? [t] : []), ke();
320
- });
321
- const Se = () => {
322
- q(), me(() => {
323
- c.value && (ee = new ResizeObserver(ae), ee.observe(c.value));
324
- });
325
- const t = D();
326
- J.value = t.scene;
327
- }, Fe = () => {
328
- v.value = "", P.value = "", ee && ee.disconnect(), m.value && H(), oe(), Ue();
329
- };
330
- let ee = null;
331
- return Me(async () => {
332
- await me();
333
- try {
334
- Se();
335
- } catch (t) {
336
- console.error("Three.js 初始化失败:", t), _.error("渲染引擎初始化失败!");
337
- }
338
- }), Ee(() => {
339
- Fe();
340
- }), (t, e) => {
341
- const o = G("el-scrollbar"), Ne = G("PipeAnalysisPanel");
342
- return g(), x("div", gt, [
343
- I(n("div", {
344
- ref_key: "threejsContainer",
345
- ref: c,
346
- class: "threejs-container"
347
- }, null, 512), [
348
- [W, Le.value]
349
- ]),
350
- n("div", ht, [
351
- s(y, {
352
- name: "viewReset",
353
- size: "24",
354
- onClick: z(Z),
355
- title: "重置"
356
- }, null, 8, ["onClick"]),
357
- s(y, {
358
- name: "fangda",
359
- size: "24",
360
- title: "放大",
361
- onClick: z(b)
362
- }, null, 8, ["onClick"]),
363
- s(y, {
364
- name: "suoxiao",
365
- size: "24",
366
- title: "缩小",
367
- onClick: z(A)
368
- }, null, 8, ["onClick"]),
369
- s(y, {
370
- name: "lookAround",
371
- size: "24",
372
- onClick: z(p),
373
- title: z(m) ? "停止动画" : "动画视图"
374
- }, null, 8, ["onClick", "title"]),
375
- s(y, {
376
- name: "zuobiaoxi",
377
- size: "24",
378
- active: z(a),
379
- onClick: xe,
380
- title: "显隐坐标轴"
381
- }, null, 8, ["active"])
382
- ]),
383
- n("div", yt, [
384
- ve(t.$slots, "button-left", { switchRightPanel: Q }, void 0, !0),
385
- s(y, {
386
- name: "jiegoushu",
387
- size: "24",
388
- onClick: e[0] || (e[0] = ($) => Q("场景树")),
389
- active: C.value && v.value === "场景树",
390
- title: "场景树"
391
- }, null, 8, ["active"]),
392
- s(y, {
393
- name: "clipping",
394
- size: "24",
395
- onClick: e[1] || (e[1] = ($) => Q("剖面视图")),
396
- active: C.value && v.value === "剖面视图",
397
- title: "剖面视图"
398
- }, null, 8, ["active"]),
399
- s(y, {
400
- name: "donghuafangzhen",
401
- size: "24",
402
- onClick: e[2] || (e[2] = ($) => Q("工件树")),
403
- active: C.value && v.value === "工件树"
404
- }, null, 8, ["active"])
405
- ]),
406
- n("div", _t, [
407
- ve(t.$slots, "button-right", { switchRightPanel: ce }, void 0, !0),
408
- s(y, {
409
- name: "jichuangxuanze",
410
- size: "24",
411
- onClick: e[3] || (e[3] = ($) => ce("机床控制")),
412
- active: d.value && P.value === "机床控制",
413
- title: "机床控制"
414
- }, null, 8, ["active"]),
415
- s(y, {
416
- name: "donghuafangzhen",
417
- size: "24",
418
- title: "动画仿真",
419
- onClick: e[4] || (e[4] = ($) => ce("动画仿真")),
420
- active: d.value && P.value === "动画仿真"
421
- }, null, 8, ["active"])
422
- ]),
423
- n("div", kt, [
424
- s(y, {
425
- name: "bofang",
426
- size: "24",
427
- backgroundColor: "#ffffff",
428
- title: "播放",
429
- onClick: Ve
430
- }),
431
- s(y, {
432
- name: "zanting",
433
- size: "24",
434
- backgroundColor: "#ffffff",
435
- title: "暂停",
436
- onClick: $e
437
- }),
438
- s(y, {
439
- name: "zhongzhi",
440
- size: "24",
441
- backgroundColor: "#ffffff",
442
- title: "停止",
443
- onClick: Te
444
- })
445
- ]),
446
- I(n("div", Ct, [
447
- n("div", Pt, [
448
- n("span", null, L(v.value), 1),
449
- n("span", {
450
- class: "close",
451
- onClick: e[5] || (e[5] = ($) => C.value = !1)
452
- }, " X ")
453
- ]),
454
- n("div", wt, [
455
- s(o, { height: "100%" }, {
456
- default: le(() => {
457
- var $;
458
- return [
459
- v.value === "场景树" ? (g(), de(tt, {
460
- key: 0,
461
- model: w.value
462
- }, null, 8, ["model"])) : U("", !0),
463
- v.value === "剖面视图" ? (g(), de(We, {
464
- key: 1,
465
- value: z(E),
466
- onChange: je
467
- }, null, 8, ["value"])) : U("", !0),
468
- v.value === "工件树" ? (g(), de(qe, {
469
- key: 2,
470
- model: ($ = z(Ce)) == null ? void 0 : $.obj,
471
- onVisibleChange: z(Pe),
472
- onUpdatePosition: z(we),
473
- onUpdateRotation: z(ze)
474
- }, null, 8, ["model", "onVisibleChange", "onUpdatePosition", "onUpdateRotation"])) : U("", !0)
475
- ];
476
- }),
477
- _: 1
478
- })
479
- ])
480
- ], 512), [
481
- [W, C.value]
482
- ]),
483
- I(n("div", zt, [
484
- n("div", Ut, [
485
- n("span", null, L(P.value), 1),
486
- n("span", {
487
- class: "close",
488
- onClick: e[6] || (e[6] = ($) => d.value = !1)
489
- }, " X ")
490
- ]),
491
- n("div", xt, [
492
- s(o, { height: "100%" }, {
493
- default: le(() => [
494
- I(s(lt, { model: w.value }, null, 8, ["model"]), [
495
- [W, P.value === "机床控制"]
496
- ]),
497
- I(s(be, {
498
- model: w.value,
499
- scene: J.value,
500
- xyzbcList: j.value,
501
- ref_key: "urdfAnimationPanelRef",
502
- ref: M
503
- }, null, 8, ["model", "scene", "xyzbcList"]), [
504
- [W, P.value === "动画仿真"]
505
- ]),
506
- ve(t.$slots, "right-panel", { rightPanelType: P.value }, void 0, !0)
507
- ]),
508
- _: 3
509
- })
510
- ])
511
- ], 512), [
512
- [W, d.value]
513
- ]),
514
- h.value ? (g(), x("div", jt, [
515
- e[7] || (e[7] = n("div", { class: "loading-spinner" }, null, -1)),
516
- n("p", null, L(O.value), 1)
517
- ])) : U("", !0),
518
- Ae.value ? (g(), x("div", At, [
519
- ue.value ? (g(), x("div", Lt, [
520
- e[8] || (e[8] = n("div", { class: "item-label" }, "厂家:", -1)),
521
- n("div", Vt, L(ue.value), 1)
522
- ])) : U("", !0),
523
- ie.value ? (g(), x("div", $t, [
524
- e[9] || (e[9] = n("div", { class: "item-label" }, "型号:", -1)),
525
- n("div", Tt, L(ie.value), 1)
526
- ])) : U("", !0),
527
- re.value ? (g(), x("div", Ot, [
528
- e[10] || (e[10] = n("div", { class: "item-label" }, "编号:", -1)),
529
- n("div", Rt, L(re.value), 1)
530
- ])) : U("", !0)
531
- ])) : U("", !0),
532
- s(Ne, { ref: "pipeAnalysisPanelRef" }, null, 512)
533
- ]);
534
- };
535
- }
536
- }), Yt = /* @__PURE__ */ he(St, [["__scopeId", "data-v-54d53d1f"]]);
537
- export {
538
- Yt as default
539
- };