ss-component-new 1.2.236 → 1.2.237

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 (140) hide show
  1. package/dist/{MTLLoader-Bd3WfwVV.cjs → MTLLoader-C5ohCvgq.cjs} +1 -1
  2. package/dist/{MTLLoader-CCOYhxhM.js → MTLLoader-DN75tpBv.js} +1 -1
  3. package/dist/{OrbitControls-DS4-T_3G.js → OrbitControls-DP13KnsK.js} +1 -1
  4. package/dist/{OrbitControls-CusWujP3.cjs → OrbitControls-DYPSOWLj.cjs} +1 -1
  5. package/dist/{URDFLoader-BYphR_jv.cjs → URDFLoader-BTd7mTm1.cjs} +1 -1
  6. package/dist/{URDFLoader-0TOu26OY.js → URDFLoader-DoKVcie9.js} +2 -2
  7. package/dist/{animationData-9hNw29yS.cjs → animationData-C1JTGIBB.cjs} +1 -1
  8. package/dist/{animationData-D9unBNwf.js → animationData-jLHE-bjO.js} +1 -1
  9. package/dist/{array-Czc_0fg7.js → array-BKLyghIn.js} +1 -1
  10. package/dist/{array-CRORKtbg.cjs → array-Bf7mQyS4.cjs} +1 -1
  11. package/dist/{iconfont-CWRA1pRV.cjs → iconfont-B98kkYId.cjs} +1 -1
  12. package/dist/{iconfont-AGHhzEkv.js → iconfont-DkUJLtiB.js} +2 -2
  13. package/dist/icons/svg//344/270/212/351/235/242/347/272/247/350/277/207/347/250/213/347/256/241/346/216/247.svg +1 -0
  14. package/dist/icons/svg//344/272/272/345/221/230/345/210/227/350/241/250.svg +1 -0
  15. package/dist/icons/svg//344/272/272/345/221/230/347/256/241/347/220/206.svg +1 -0
  16. package/dist/icons/svg//345/237/271/350/256/255/345/255/246/344/271/240.svg +1 -0
  17. package/dist/icons/svg//345/267/245/350/211/272/347/263/273/347/273/237.svg +1 -0
  18. package/dist/icons/svg//345/267/245/350/211/272/350/247/204/347/250/213/347/274/226/350/276/221.svg +1 -0
  19. package/dist/icons/svg//345/267/245/350/211/272/350/247/204/347/250/213/350/260/203/347/224/250.svg +1 -0
  20. package/dist/icons/svg//346/212/245/350/241/250/346/250/241/346/235/277.svg +1 -0
  21. package/dist/icons/svg//346/216/247/345/210/266/347/263/273/347/273/237.svg +1 -0
  22. package/dist/icons/svg//346/223/215/344/275/234/350/247/204/347/250/213.svg +1 -0
  23. package/dist/icons/svg//346/226/207/344/273/266/345/210/227/350/241/250.svg +1 -0
  24. package/dist/icons/svg//346/235/203/351/231/220/347/256/241/347/220/206.svg +1 -0
  25. package/dist/icons/svg//346/240/207/345/207/206/350/247/204/350/214/203.svg +1 -0
  26. package/dist/icons/svg//346/265/213/351/207/217/347/263/273/347/273/237.svg +1 -0
  27. package/dist/icons/svg//347/273/204/347/273/207/345/233/242/351/230/237.svg +1 -0
  28. package/dist/icons/svg//350/200/203/350/257/225.svg +1 -1
  29. package/dist/icons/svg//350/256/276/345/244/207/344/275/277/347/224/250/347/273/237/350/256/241.svg +1 -0
  30. package/dist/icons/svg//350/257/225/351/252/214/344/272/272/345/221/230/345/267/245/344/275/234/347/273/237/350/256/241.svg +1 -0
  31. package/dist/icons/svg//350/257/225/351/252/214/344/273/273/345/212/241.svg +1 -0
  32. package/dist/icons/svg//350/257/225/351/252/214/345/207/206/345/244/207.svg +1 -0
  33. package/dist/icons/svg//350/257/225/351/252/214/346/200/273/347/273/223.svg +1 -0
  34. package/dist/icons/svg//350/257/225/351/252/214/346/226/207/346/241/243.svg +1 -0
  35. package/dist/icons/svg//350/257/225/351/252/214/347/273/223/346/236/234/350/257/204/344/273/267.svg +1 -0
  36. package/dist/icons/svg//350/257/225/351/252/214/350/277/207/347/250/213.svg +1 -0
  37. package/dist/icons/svg//351/200/211/346/213/251/350/256/276/345/244/207.svg +1 -0
  38. package/dist/icons/svg//351/205/215/347/275/256/346/226/207/344/273/266.svg +1 -0
  39. package/dist/{index-B17G9ku6.cjs → index-9VJRCDUE.cjs} +1 -1
  40. package/dist/{index-eph0EFke.js → index-B-E1J1b4.js} +1 -1
  41. package/dist/{index-YIJ58lZg.cjs → index-B8Zx_xOr.cjs} +1 -1
  42. package/dist/{index-BDciahYx.cjs → index-BDbjJR60.cjs} +1 -1
  43. package/dist/{index-DKB2GDLr.js → index-BJcskdxs.js} +3 -3
  44. package/dist/{index-BuHs18He.js → index-BNd4UDuU.js} +1 -1
  45. package/dist/{index-B9w9Zeac.cjs → index-BPwyRF0D.cjs} +1 -1
  46. package/dist/{index-DMM3Jn20.js → index-BT4wgIf-.js} +2498 -2423
  47. package/dist/{index-CPKJwlib.js → index-BTtf6e-_.js} +16 -16
  48. package/dist/{index-CNY2BacT.js → index-BhPx3jmH.js} +8 -8
  49. package/dist/{index-B8wtOH0l.js → index-BplC8-Qo.js} +4 -4
  50. package/dist/{index-CXC_yYm8.js → index-Bt5sKtWb.js} +5 -5
  51. package/dist/index-BuptIZ6F.cjs +15 -0
  52. package/dist/{index-DFaJ832i.cjs → index-Bvr-TPgs.cjs} +1 -1
  53. package/dist/{index-BgH83FRr.cjs → index-C9nSFcWG.cjs} +1 -1
  54. package/dist/{index-DAwFf4Jg.js → index-CAqUjCxE.js} +1 -1
  55. package/dist/{index-D3irWf6a.js → index-CCkl5z8E.js} +1 -1
  56. package/dist/{index-W6LQp4Dq.cjs → index-CCl06VCJ.cjs} +1 -1
  57. package/dist/{index-f1zYSJx6.cjs → index-CIFYOt93.cjs} +1 -1
  58. package/dist/{index-CRUxnMgS.cjs → index-CLJGLzRM.cjs} +1 -1
  59. package/dist/{index-C56GX-Aq.cjs → index-CXDN0F_M.cjs} +1 -1
  60. package/dist/{index-DGNcIMYW.js → index-Cg5xmSHi.js} +1 -1
  61. package/dist/{index-CbDeRRrw.js → index-CgYJhRMs.js} +1 -1
  62. package/dist/{index-Be5tm0kW.js → index-CqNxafkQ.js} +7 -7
  63. package/dist/{index-Dkm4-AUk.js → index-CxlnzZ-9.js} +1 -1
  64. package/dist/{index-BChOVXqt.cjs → index-D0XVyubM.cjs} +1 -1
  65. package/dist/{index-D-V4cVLb.cjs → index-D75ADF_5.cjs} +1 -1
  66. package/dist/{index-CPBf9lGM.cjs → index-DC9766Do.cjs} +1 -1
  67. package/dist/{index-DyXgWP7a.js → index-DPBGeJl5.js} +1 -1
  68. package/dist/{index-CkT8dhxU.cjs → index-DYiIULbt.cjs} +1 -1
  69. package/dist/{index-7PcqiEkV.js → index-DZbd_-bI.js} +3 -3
  70. package/dist/{index-DewFAf3b.cjs → index-Dd7oW6Bd.cjs} +1 -1
  71. package/dist/{index-BmWTwAst.cjs → index-DdKlcoPI.cjs} +1 -1
  72. package/dist/{index-DrnMpmOx.js → index-Dj2lju1K.js} +1 -1
  73. package/dist/{index-OPgV6acp.cjs → index-DwI9z1AN.cjs} +1 -1
  74. package/dist/{index-DXdFIyFe.cjs → index-DynFtycq.cjs} +1 -1
  75. package/dist/{index-DBcKmxiQ.js → index-EyLrSzZz.js} +1 -1
  76. package/dist/{index-BbFdnOVh.cjs → index-aL0BQ1-2.cjs} +1 -1
  77. package/dist/{index-2KVZD318.js → index-bqXs_Bd0.js} +4 -4
  78. package/dist/{index-WF3z0URj.js → index-iYF3ubF2.js} +2 -2
  79. package/dist/{index-BdT_s2im.cjs → index-jB8g-Vh1.cjs} +1 -1
  80. package/dist/{index-3V5nk1DZ.js → index-o_q3c9_H.js} +1 -1
  81. package/dist/{index-BRme7W4H.cjs → index-sNTOx33W.cjs} +1 -1
  82. package/dist/{index-BeN4Fchh.js → index-tFtrEE-a.js} +2 -2
  83. package/dist/{index.vue_vue_type_style_index_0_scoped_0b6f1a18_lang-9VWd44w-.cjs → index.vue_vue_type_style_index_0_scoped_0b6f1a18_lang-rQq5kkZF.cjs} +1 -1
  84. package/dist/{index.vue_vue_type_style_index_0_scoped_0b6f1a18_lang-74sW3Iph.js → index.vue_vue_type_style_index_0_scoped_0b6f1a18_lang-zDyQTEgH.js} +6 -6
  85. package/dist/{index.vue_vue_type_style_index_0_scoped_0f027c8c_lang-8DE7CzzY.cjs → index.vue_vue_type_style_index_0_scoped_0f027c8c_lang-BRn8KHun.cjs} +219 -219
  86. package/dist/{index.vue_vue_type_style_index_0_scoped_0f027c8c_lang-DOr6MjBQ.js → index.vue_vue_type_style_index_0_scoped_0f027c8c_lang-vD09aciY.js} +15347 -15341
  87. package/dist/{index.vue_vue_type_style_index_0_scoped_3d3811e8_lang-BmbKOU7X.cjs → index.vue_vue_type_style_index_0_scoped_3d3811e8_lang-C0Raj3Dn.cjs} +1 -1
  88. package/dist/{index.vue_vue_type_style_index_0_scoped_3d3811e8_lang-BBLKKnGp.js → index.vue_vue_type_style_index_0_scoped_3d3811e8_lang-CCvF51yv.js} +4 -4
  89. package/dist/{index.vue_vue_type_style_index_1_lang-D6hVjFLd.js → index.vue_vue_type_style_index_1_lang-CPNvtnN8.js} +3 -3
  90. package/dist/{index.vue_vue_type_style_index_1_lang-BInreSKA.cjs → index.vue_vue_type_style_index_1_lang-IN9qEUgA.cjs} +1 -1
  91. package/dist/{main-B5vkQjLP.js → main-CSsQ8vyK.js} +3 -3
  92. package/dist/{main-aFXOON7F.cjs → main-DLIDn7aw.cjs} +1 -1
  93. package/dist/ss-component.cjs +1 -1
  94. package/dist/ss-component.js +9 -9
  95. package/dist/ss-component2.cjs +1 -1
  96. package/dist/ss-component2.js +10 -10
  97. package/dist/{threeModel-DRKOlbJr.cjs → threeModel-CWcEKC5y.cjs} +1 -1
  98. package/dist/{threeModel-C8_IaJpe.js → threeModel-DYG1Gt_F.js} +4 -4
  99. package/dist/{threePreview-DABGilVv.cjs → threePreview-CL0mHGyZ.cjs} +1 -1
  100. package/dist/{threePreview-BrkMZtc1.js → threePreview-DzecTfP3.js} +3 -3
  101. package/dist/{threeSceneView-B8e1RXvy.cjs → threeSceneView-C041EeAi.cjs} +1 -1
  102. package/dist/{threeSceneView-Bp6gXXHH.js → threeSceneView-CDsUz97l.js} +8 -8
  103. package/dist/{threeSceneViewForCPMPIP-Z10qhqQn.cjs → threeSceneViewForCPMPIP-BQ7LqbEc.cjs} +1 -1
  104. package/dist/{threeSceneViewForCPMPIP-CPiyMoZE.js → threeSceneViewForCPMPIP-D_tsnQ23.js} +7 -7
  105. package/dist/{threeTrackPathView-BrUitF0g.js → threeTrackPathView-AG1PIyYQ.js} +3 -3
  106. package/dist/{threeTrackPathView-RLO4Icfk.cjs → threeTrackPathView-DruGVa1-.cjs} +1 -1
  107. package/dist/{threeViewerHost-BrngmIch.js → threeViewerHost-1MS6xVBD.js} +2 -2
  108. package/dist/{threeViewerHost-DNO3ccCJ.cjs → threeViewerHost-CCeYZ9RS.cjs} +1 -1
  109. package/dist/{urdfTree-CNxG-a5B.cjs → urdfTree-4ehgCDAN.cjs} +1 -1
  110. package/dist/{urdfTree-C-zBD5cY.js → urdfTree-ziSyujK1.js} +1 -1
  111. package/dist/{workpieceTreePanel-CmOvwAEe.js → workpieceTreePanel-CKrooAAa.js} +4 -4
  112. package/dist/{workpieceTreePanel-BFIJ1Mqh.cjs → workpieceTreePanel-D-05Ihws.cjs} +1 -1
  113. package/package.json +1 -1
  114. package/public/icons/svg//344/270/212/351/235/242/347/272/247/350/277/207/347/250/213/347/256/241/346/216/247.svg +1 -0
  115. package/public/icons/svg//344/272/272/345/221/230/345/210/227/350/241/250.svg +1 -0
  116. package/public/icons/svg//344/272/272/345/221/230/347/256/241/347/220/206.svg +1 -0
  117. package/public/icons/svg//345/237/271/350/256/255/345/255/246/344/271/240.svg +1 -0
  118. package/public/icons/svg//345/267/245/350/211/272/347/263/273/347/273/237.svg +1 -0
  119. package/public/icons/svg//345/267/245/350/211/272/350/247/204/347/250/213/347/274/226/350/276/221.svg +1 -0
  120. package/public/icons/svg//345/267/245/350/211/272/350/247/204/347/250/213/350/260/203/347/224/250.svg +1 -0
  121. package/public/icons/svg//346/212/245/350/241/250/346/250/241/346/235/277.svg +1 -0
  122. package/public/icons/svg//346/216/247/345/210/266/347/263/273/347/273/237.svg +1 -0
  123. package/public/icons/svg//346/223/215/344/275/234/350/247/204/347/250/213.svg +1 -0
  124. package/public/icons/svg//346/226/207/344/273/266/345/210/227/350/241/250.svg +1 -0
  125. package/public/icons/svg//346/235/203/351/231/220/347/256/241/347/220/206.svg +1 -0
  126. package/public/icons/svg//346/240/207/345/207/206/350/247/204/350/214/203.svg +1 -0
  127. package/public/icons/svg//346/265/213/351/207/217/347/263/273/347/273/237.svg +1 -0
  128. package/public/icons/svg//347/273/204/347/273/207/345/233/242/351/230/237.svg +1 -0
  129. package/public/icons/svg//350/200/203/350/257/225.svg +1 -1
  130. package/public/icons/svg//350/256/276/345/244/207/344/275/277/347/224/250/347/273/237/350/256/241.svg +1 -0
  131. package/public/icons/svg//350/257/225/351/252/214/344/272/272/345/221/230/345/267/245/344/275/234/347/273/237/350/256/241.svg +1 -0
  132. package/public/icons/svg//350/257/225/351/252/214/344/273/273/345/212/241.svg +1 -0
  133. package/public/icons/svg//350/257/225/351/252/214/345/207/206/345/244/207.svg +1 -0
  134. package/public/icons/svg//350/257/225/351/252/214/346/200/273/347/273/223.svg +1 -0
  135. package/public/icons/svg//350/257/225/351/252/214/346/226/207/346/241/243.svg +1 -0
  136. package/public/icons/svg//350/257/225/351/252/214/347/273/223/346/236/234/350/257/204/344/273/267.svg +1 -0
  137. package/public/icons/svg//350/257/225/351/252/214/350/277/207/347/250/213.svg +1 -0
  138. package/public/icons/svg//351/200/211/346/213/251/350/256/276/345/244/207.svg +1 -0
  139. package/public/icons/svg//351/205/215/347/275/256/346/226/207/344/273/266.svg +1 -0
  140. package/dist/index-C0Hc4US2.cjs +0 -15
@@ -1,8 +1,8 @@
1
1
  import { defineComponent as ce, computed as U, ref as k, resolveComponent as j, createElementBlock as ee, openBlock as E, createElementVNode as d, createVNode as p, withCtx as I, toDisplayString as X, shallowRef as D, watch as je, onMounted as Ee, onBeforeUnmount as Xe, withDirectives as N, createCommentVNode as S, unref as A, renderSlot as ie, createBlock as le, vShow as Z, nextTick as Ye } from "vue";
2
- import { u as De, a as Ne, b as Ze, C as Be, f as Ie, d as re } from "./iconfont-AGHhzEkv.js";
3
- import { ak as O, av as Oe, c6 as Ge, b3 as qe, ah as te, b5 as ue, bh as fe, bn as Ke, b7 as We, bm as Je, bj as Re, bk as He, aF as Qe, c7 as Se } from "./index.vue_vue_type_style_index_0_scoped_0f027c8c_lang-DOr6MjBQ.js";
2
+ import { u as De, a as Ne, b as Ze, C as Be, f as Ie, d as re } from "./iconfont-DkUJLtiB.js";
3
+ import { ak as O, av as Oe, c6 as Ge, b3 as qe, ah as te, b5 as ue, bh as fe, bn as Ke, b7 as We, bm as Je, bj as Re, bk as He, aF as Qe, c7 as Se } from "./index.vue_vue_type_style_index_0_scoped_0f027c8c_lang-vD09aciY.js";
4
4
  import { E as B } from "./index-7MBVUN82.js";
5
- import { U as et, J as tt } from "./urdfTree-C-zBD5cY.js";
5
+ import { U as et, J as tt } from "./urdfTree-ziSyujK1.js";
6
6
  import { _ as ve } from "./_plugin-vue_export-helper-CHgC5LLL.js";
7
7
  import { T as b } from "./svgIcon-D-_fXUBL.js";
8
8
  import { i as nt } from "./isString-D70CzuJZ.js";
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("vue"),x=require("./iconfont-CWRA1pRV.cjs"),p=require("./index.vue_vue_type_style_index_0_scoped_0f027c8c_lang-8DE7CzzY.cjs"),I=require("./index-DOItJqcJ.cjs"),K=require("./urdfTree-CNxG-a5B.cjs"),R=require("./_plugin-vue_export-helper-BHFhmbuH.cjs"),w=require("./svgIcon-CUM54R6L.cjs"),ge=require("./isString-Do5yyRUw.cjs");function ye(t=.5,o=4){const r=new p.Mesh(new p.ConeGeometry(t,o,32),new p.MeshStandardMaterial({color:"#919191ff",metalness:.3,roughness:.6})),s=r.geometry.parameters.height;return r.geometry.translate(0,-s/2,0),r.rotation.set(-90,0,0,"XYZ"),r}function Ce(t,o){t.position.copy(o)}function we(t,o,r=new p.Color(16711680)){const s=new p.Vector3;o.getWorldPosition(s);const a=t.geometry.attributes.position,n=t.geometry.attributes.color,l=new p.Color(55551);let c=1/0,f=-1;for(let u=0;u<a.count;u++){const v=new p.Vector3().fromBufferAttribute(a,u).distanceTo(s);v<c&&(c=v,f=u)}for(let u=0;u<n.count;u++)l.toArray(n.array,u*3);if(f!==-1){const u=r.toArray(),m=f*3+2;for(let v=0;v<m;v=v+3)n.array[v]=u[0],n.array[v+1]=u[1],n.array[v+2]=u[2]}n.needsUpdate=!0}function S(t,o,r,s=new p.Color(16711680)){Ce(t,o),we(r,t,s)}const ke={class:"panel-content"},_e={class:"animation-controls"},Ve={class:"control-row"},be={class:"control-row"},Ne={class:"frame-info"},Te={class:"control-row"},Ee=e.defineComponent({__name:"trackAnimationPanel",props:{cloud:{},knife:{},vectors:{}},emits:["getThreeData"],setup(t,{expose:o,emit:r}){const s=t,a=e.computed(()=>s.vectors),n=e.ref(!1),l=e.ref(0),c=e.ref(100);let f=!1;const u=g=>`第 ${g+1} 帧`,m=g=>{if(g<0||g>=a.value.length){console.error(`帧索引 ${g} 超出范围`);return}const y=a.value[g];l.value=g,S(s.knife,y,s.cloud)},v=async()=>{if(a.value.length===0){I.ElMessage.error("无法播放动画:无数据");return}if(!n.value){n.value=!0,f=!1,a.value.length-1===l.value&&(l.value=0);try{for(let g=l.value+1;g<a.value.length&&!f;g++)await new Promise(y=>setTimeout(y,c.value)),m(g);f||I.ElMessage.success("动画播放完成")}catch(g){console.error("动画播放出错:",g)}finally{n.value=!1}}},C=()=>{f=!0,n.value=!1,I.ElMessage.info("动画已停止")},N=g=>{n.value&&C(),m(g)},_=()=>{n.value&&C(),!(l.value+1>=a.value.length)&&m(l.value+1)},V=()=>{n.value&&C(),l.value!==0&&m(l.value-1)},h=()=>{l.value=0};return o({playAnimation:v,stopAnimation:C,forwardFrame:_,backwardFrame:V,resetAnimationFrame:h,reset:async()=>{await C(),h()}}),(g,y)=>{const L=e.resolveComponent("el-input-number"),B=e.resolveComponent("el-form-item"),D=e.resolveComponent("el-form"),$=e.resolveComponent("el-slider");return e.openBlock(),e.createElementBlock("div",ke,[e.createElementVNode("div",_e,[e.createElementVNode("div",Ve,[e.createVNode(D,{"label-width":"auto",style:{width:"100%"}},{default:e.withCtx(()=>[e.createVNode(B,{label:"帧间隔 (ms):",prop:"frameDuration"},{default:e.withCtx(()=>[e.createVNode(L,{modelValue:c.value,"onUpdate:modelValue":y[0]||(y[0]=z=>c.value=z),min:0,max:5e3,step:10,style:{width:"100%"}},null,8,["modelValue"])]),_:1})]),_:1})]),e.createElementVNode("div",be,[y[2]||(y[2]=e.createElementVNode("label",null,"当前帧:",-1)),e.createElementVNode("span",Ne,e.toDisplayString(l.value+1)+" / "+e.toDisplayString(a.value.length),1)]),e.createElementVNode("div",Te,[y[3]||(y[3]=e.createElementVNode("label",null,"动画进度:",-1)),e.createVNode($,{modelValue:l.value,"onUpdate:modelValue":y[1]||(y[1]=z=>l.value=z),min:0,max:a.value.length>0?a.value.length-1:0,step:1,"format-tooltip":u,onInput:N,disabled:a.value.length===0,style:{"flex-grow":"1",margin:"0 10px"}},null,8,["modelValue","max","disabled"])])])])}}}),xe=R._export_sfc(Ee,[["__scopeId","data-v-f6fc7a8c"]]);function ze(t){const o=[];return t.forEach(r=>{const[s,a,n]=r.trim().split(/\s+/);o.push(+s,+a,+n)}),o}function U(t,o,r){switch(t){case"X":o.x=+r||0;break;case"Y":o.y=+r||0;break;case"Z":o.z=+r||0;break}}function Ae(t){const o=[],r=["X","Y","Z"];return t.forEach(s=>{const a={x:0,y:0,z:0},n=s.trim();if(!n)return;let l=null,c="";for(let f=0;f<(n==null?void 0:n.length);f++){const u=n[f],m=r.find(v=>v===u);if(m){l&&U(l,a,c),c="",l=m;continue}c=c+u}U(l,a,c),o.push(a.x,a.y,a.z)}),o}const Pe=t=>t==null?void 0:t.filter(r=>r.includes("=")),Me=t=>t.replace(/,/g,""),Fe=t=>t==null?void 0:t.map(r=>Me(r)),Ie=t=>{const o=Pe(t);return Fe(o)};function Ue(t){const o=Ie(t),r=[];return o.forEach(s=>{var v,C,N,_,V,h;let[a,n,l,c]=s.trim().split(/\s+/);n=(v=n==null?void 0:n.trim)==null?void 0:v.call(n),l=(C=l==null?void 0:l.trim)==null?void 0:C.call(l),c=(N=c==null?void 0:c.trim)==null?void 0:N.call(c);const[,f]=(_=n==null?void 0:n.split)==null?void 0:_.call(n,"="),[,u]=(V=l==null?void 0:l.split)==null?void 0:V.call(l,"="),[,m]=(h=c==null?void 0:c.split)==null?void 0:h.call(c,"=");r.push(+f,+u,+m)}),r}const Le=t=>t>="0"&&t<="9",Be=t=>t==="+"||t==="-",De=t=>t===".";function $e(t){return Le(t)||Be(t)||De(t)}function je(t){const o=[],r=new Set(["X","Y","Z"]);return t.forEach(s=>{const a={x:0,y:0,z:0},n=s.trim();if(!n)return;let l=null,c="";for(let f=0;f<(n==null?void 0:n.length);f++){const u=n[f];if(u==="T")break;const m=r.has(u)?u:null,v=$e(u);if(m||!v){l&&U(l,a,c),l=m,c="";continue}c=c+u}l&&U(l,a,c),o.push(a.x,a.y,a.z)}),o}function qe(t){return t==null?void 0:t.includes("=")}async function Xe(t){var a,n;const o=(a=t==null?void 0:t.trim())==null?void 0:a.split(/\r?\n/);if(qe(t))return Ue(o);const r=o==null?void 0:o[0],s=(n=r==null?void 0:r.trim())==null?void 0:n.split(/\s+/);if((s==null?void 0:s.length)>=3)return ze(o);if((s==null?void 0:s.length)===1)return Ae(o)}async function Ye(t){const o=t.trim().split(/\r?\n/),r=[];return o.forEach(s=>{const a=s.trim().split(/\s+/);if(a.length!=3)return;const[n,l,c]=a;r.push(+n,+l,+c)}),r}async function Ze(t){const o=t.trim().split(/\r?\n/),r=[];return o.forEach(s=>{const a=s.trim().split(/\s+/);if(a.length!=3)return;const[n,l,c]=a;r.push(+n,+l,+c)}),r}async function Oe(t){let o=t.trim().split(/\r?\n/);return o=o.filter(s=>{const a=s.startsWith("X")||s.startsWith("Y")||s.startsWith("Z"),n=s.startsWith("G")&&(s.includes("X")||s.includes("Y")||s.includes("Z")),l=s.startsWith("N")&&(s.includes("X")||s.includes("Y")||s.includes("Z"));return a||n||l}),je(o)}async function Ge(t,o){const{isCyd:r,isUv:s,isCpt:a,isNc:n}=o;return s?Xe(t):r?Ze(t):a?Ye(t):n?Oe(t):[]}function Ke(t){const o=[];for(let r=0;r<t.length;r+=3)o.push(new p.Vector3(t[r],t[r+1],t[r+2]));return o}function Re(t){const o=new p.BufferGeometry;o.setAttribute("position",new p.Float32BufferAttribute(t,3));const r=new p.LineBasicMaterial({color:55551,linewidth:3});return new p.Line(o,r)}function Se(t,o){if(!o||o.length<3)return;const{scene:r,camera:s,renderer:a,controls:n}=t();if(!r||!s||!a||!n)return;const l=Re(o);return l.name="轨迹路径",r.add(l),l}function We(t,o,r,s=4,a=50){let n=1/0,l=-1/0,c=1/0,f=-1/0,u=1/0,m=-1/0;for(let h=0;h<t.length;h+=3){const A=t[h],g=t[h+1],y=t[h+2];n=Math.min(n,A),l=Math.max(l,A),c=Math.min(c,g),f=Math.max(f,g),u=Math.min(u,y),m=Math.max(m,y)}const C=Math.sqrt((l-n)**2+(f-c)**2+(m-u)**2)*.05,N=p.MathUtils.degToRad(o.fov),_=2*Math.tan(N/2)*a,V=C/_*r.domElement.height*(s/4);return Math.min(.4,V)}function He(t){if(t.length%3!==0)return console.error("points array length is not a multiple of 3:",t),null;const o=new p.BufferGeometry;o.setAttribute("position",new p.Float32BufferAttribute(t,3));const r=new Float32Array(t.length);for(let n=0;n<t.length;n+=3)r[n]=0,r[n+1]=.847,r[n+2]=1;o.setAttribute("color",new p.BufferAttribute(r,3));const s=new p.PointsMaterial({vertexColors:!0,size:.4,sizeAttenuation:!0}),a=new p.Points(o,s);return s.needsUpdate=!0,a}function Je(t,o){if(!o)return;const{scene:r,camera:s,renderer:a,controls:n}=t();if(!r||!s||!a||!n)return;const l=He(o);if(!l)return;l.name="轨迹路径",r.add(l);const c=We(o,s,a,.1,50);return l.material.size=c,l}const Qe={class:"obj-viewer-container"},et={class:"buttonGroup-topLeft"},tt={class:"buttonGroup-left"},nt={class:"buttonGroup-right"},ot={class:"buttonGroup-bottom"},rt={class:"left-panel"},lt={class:"panel-header"},st={class:"panel-body"},it={class:"right-panel"},at={class:"panel-header"},ct={class:"panel-body"},ut={key:0,class:"loading-overlay"},dt=e.defineComponent({__name:"threeTrackPathView",props:{fileBlobs:{},threeData:{default:()=>""},trackFileType:{}},setup(t){const o=t,r=e.ref(null),s=e.ref(!1),a=e.ref(""),n=e.ref(),l=e.ref(!1),c=e.ref(""),f=e.ref(!1),u=e.ref(""),m=e.shallowRef(null),v=e.shallowRef(null),{currentModels:C,resetView:N,initThreeJS:_,handleResize:V,getThreeJSObjects:h,cleanup:A,setModels:g,setAndFitModels:y,axesHelperVisible:L,toggleAxesVisibility:B,zoomIn:D,zoomOut:$}=x.useThreeJS(r),{isAnimating:z,toggleAnimation:W,startAnimation:vt,stopAnimation:H}=x.useAnimation(h,C),{isClipping:J,activeClippingAxis:Y,toggleClipping:Q,updateClippingPlanes:ee}=x.useClipping(h,C),te=()=>{B()},ne=i=>{Y.value=i,ee()},j=i=>{l.value=!0,c.value=i,i==="剖面视图"&&!J.value&&Q()},q=i=>{f.value=!0,u.value=i},X=e.ref([]),P=e.ref([]),oe=e.computed(()=>{var d;return(d=o.trackFileType)==null?void 0:d.isUv}),re=e.computed(()=>{var d;return(d=o.trackFileType)==null?void 0:d.isCyd}),le=e.computed(()=>{var d;return(d=o.trackFileType)==null?void 0:d.isCpt}),T=e.computed(()=>{var d;return(d=o.trackFileType)==null?void 0:d.isNc}),Z=e.computed(()=>{const i=o.fileBlobs||[];return i==null?void 0:i[0]});let k=e.shallowRef(),E=e.shallowRef();const se=()=>{const{scene:i}=h();k.value&&i&&(x.disposeObj(k.value,i),k.value=null)},ie=()=>{const{scene:i}=h();E.value&&i&&(x.disposeObj(E.value,i),E.value=null)},O=()=>{se(),ie()},ae=async i=>{const d=URL.createObjectURL(i),M=await p.readFileText(d);if(URL.revokeObjectURL(d),ge.isString(M)){X.value=await Ge(M,o.trackFileType)||[];const b=X.value;oe.value&&(k.value=Se(h,b)),(re.value||le.value||T.value)&&(k.value=Je(h,b))}},ce=async()=>{var i,d;E.value=ye(),P.value=Ke(X.value),P.value&&P.value.length&&(S(E.value,P.value[0],k.value,new p.Color(16711680)),(d=(i=v.value)==null?void 0:i.add)==null||d.call(i,E.value))},G=async i=>{O(),await ae(i),k.value&&x.frameCameraToObject3D(h,k.value),T.value&&ce()};e.watch(()=>Z.value,async i=>{i&&await G(i)},{immediate:!0,deep:!0});const ue=async()=>{var i;await((i=n==null?void 0:n.value)==null?void 0:i.reset()),await G(Z.value)},de=()=>{var i;T.value&&((i=n==null?void 0:n.value)==null||i.playAnimation())},fe=()=>{var i;T.value&&((i=n==null?void 0:n.value)==null||i.stopAnimation())},ve=()=>{var i;T.value&&((i=n==null?void 0:n.value)==null||i.forwardFrame())},me=()=>{var i;T.value&&((i=n==null?void 0:n.value)==null||i.backwardFrame())},pe=()=>{_(),e.nextTick(()=>{r.value&&(F=new ResizeObserver(V),F.observe(r.value))});const i=h();v.value=i.scene,v.value&&(v.value.name="CPMPIP")},he=()=>{F&&F.disconnect(),z.value&&H(),O(),A()};let F=null;return e.onMounted(async()=>{try{pe()}catch(i){console.error("Three.js 初始化失败:",i),I.ElMessage.error("渲染引擎初始化失败!")}}),e.onBeforeUnmount(()=>{he()}),(i,d)=>{const M=e.resolveComponent("el-scrollbar");return e.openBlock(),e.createElementBlock("div",Qe,[e.createElementVNode("div",{ref_key:"threejsContainer",ref:r,class:"threejs-container"},null,512),e.createElementVNode("div",et,[e.createVNode(w.ThreeSvgIcon,{name:"viewReset",size:"24",onClick:ue,title:"重置"}),e.createVNode(w.ThreeSvgIcon,{name:"fangda",size:"24",title:"放大",onClick:e.unref(D)},null,8,["onClick"]),e.createVNode(w.ThreeSvgIcon,{name:"suoxiao",size:"24",title:"缩小",onClick:e.unref($)},null,8,["onClick"]),e.createVNode(w.ThreeSvgIcon,{name:"lookAround",size:"24",onClick:e.unref(W),title:e.unref(z)?"停止动画":"动画视图"},null,8,["onClick","title"]),e.createVNode(w.ThreeSvgIcon,{name:"zuobiaoxi",size:"24",active:e.unref(L),onClick:te,title:"显隐坐标轴"},null,8,["active"])]),e.createElementVNode("div",tt,[e.renderSlot(i.$slots,"button-left",{switchRightPanel:j},void 0,!0),e.createVNode(w.ThreeSvgIcon,{name:"jiegoushu",size:"24",onClick:d[0]||(d[0]=b=>j("场景树")),active:l.value&&c.value==="场景树",title:"场景树"},null,8,["active"]),e.createVNode(w.ThreeSvgIcon,{name:"clipping",size:"24",onClick:d[1]||(d[1]=b=>j("剖面视图")),active:l.value&&c.value==="剖面视图",title:"剖面视图"},null,8,["active"])]),e.createElementVNode("div",nt,[e.renderSlot(i.$slots,"button-right",{switchRightPanel:q},void 0,!0),e.createVNode(w.ThreeSvgIcon,{name:"guanjiekongzhi",size:"24",onClick:d[2]||(d[2]=b=>q("关节控制")),active:f.value&&u.value==="关节控制",title:"关节控制"},null,8,["active"]),e.createVNode(w.ThreeSvgIcon,{name:"donghuafangzhen",size:"24",title:"动画仿真",onClick:d[3]||(d[3]=b=>q("动画仿真")),active:f.value&&u.value==="动画仿真"},null,8,["active"])]),e.createElementVNode("div",ot,[e.createVNode(w.ThreeSvgIcon,{name:"kuaitui",size:"24",backgroundColor:"#ffffff",title:"快退",onClick:me}),e.createVNode(w.ThreeSvgIcon,{name:"bofang",size:"24",backgroundColor:"#ffffff",title:"播放",onClick:de}),e.createVNode(w.ThreeSvgIcon,{name:"kuaijin",size:"24",backgroundColor:"#ffffff",title:"快进",onClick:ve}),e.createVNode(w.ThreeSvgIcon,{name:"zanting",size:"24",backgroundColor:"#ffffff",title:"暂停",onClick:fe})]),e.withDirectives(e.createElementVNode("div",rt,[e.createElementVNode("div",lt,[e.createElementVNode("span",null,e.toDisplayString(c.value),1),e.createElementVNode("span",{class:"close",onClick:d[4]||(d[4]=b=>l.value=!1)}," X ")]),e.createElementVNode("div",st,[e.createVNode(M,{height:"100%"},{default:e.withCtx(()=>[c.value==="场景树"?(e.openBlock(),e.createBlock(K.UrdfTree,{key:0,model:m.value},null,8,["model"])):e.createCommentVNode("",!0),c.value==="剖面视图"?(e.openBlock(),e.createBlock(x.ClippingPanel,{key:1,value:e.unref(Y),onChange:ne},null,8,["value"])):e.createCommentVNode("",!0)]),_:1})])],512),[[e.vShow,l.value]]),e.withDirectives(e.createElementVNode("div",it,[e.createElementVNode("div",at,[e.createElementVNode("span",null,e.toDisplayString(u.value),1),e.createElementVNode("span",{class:"close",onClick:d[5]||(d[5]=b=>f.value=!1)}," X ")]),e.createElementVNode("div",ct,[e.createVNode(M,{height:"100%"},{default:e.withCtx(()=>[e.withDirectives(e.createVNode(K.JointPanel,{model:m.value},null,8,["model"]),[[e.vShow,u.value==="关节控制"]]),e.withDirectives(e.createVNode(xe,{ref_key:"animationPanelRef",ref:n,cloud:e.unref(k),knife:e.unref(E),vectors:P.value},null,8,["cloud","knife","vectors"]),[[e.vShow,u.value==="动画仿真"&&T.value]])]),_:1})])],512),[[e.vShow,f.value]]),s.value?(e.openBlock(),e.createElementBlock("div",ut,[d[6]||(d[6]=e.createElementVNode("div",{class:"loading-spinner"},null,-1)),e.createElementVNode("p",null,e.toDisplayString(a.value),1)])):e.createCommentVNode("",!0)])}}}),ft=R._export_sfc(dt,[["__scopeId","data-v-7178b621"]]);exports.default=ft;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("vue"),x=require("./iconfont-B98kkYId.cjs"),p=require("./index.vue_vue_type_style_index_0_scoped_0f027c8c_lang-BRn8KHun.cjs"),I=require("./index-DOItJqcJ.cjs"),K=require("./urdfTree-4ehgCDAN.cjs"),R=require("./_plugin-vue_export-helper-BHFhmbuH.cjs"),w=require("./svgIcon-CUM54R6L.cjs"),ge=require("./isString-Do5yyRUw.cjs");function ye(t=.5,o=4){const r=new p.Mesh(new p.ConeGeometry(t,o,32),new p.MeshStandardMaterial({color:"#919191ff",metalness:.3,roughness:.6})),s=r.geometry.parameters.height;return r.geometry.translate(0,-s/2,0),r.rotation.set(-90,0,0,"XYZ"),r}function Ce(t,o){t.position.copy(o)}function we(t,o,r=new p.Color(16711680)){const s=new p.Vector3;o.getWorldPosition(s);const a=t.geometry.attributes.position,n=t.geometry.attributes.color,l=new p.Color(55551);let c=1/0,f=-1;for(let u=0;u<a.count;u++){const v=new p.Vector3().fromBufferAttribute(a,u).distanceTo(s);v<c&&(c=v,f=u)}for(let u=0;u<n.count;u++)l.toArray(n.array,u*3);if(f!==-1){const u=r.toArray(),m=f*3+2;for(let v=0;v<m;v=v+3)n.array[v]=u[0],n.array[v+1]=u[1],n.array[v+2]=u[2]}n.needsUpdate=!0}function S(t,o,r,s=new p.Color(16711680)){Ce(t,o),we(r,t,s)}const ke={class:"panel-content"},_e={class:"animation-controls"},Ve={class:"control-row"},be={class:"control-row"},Ne={class:"frame-info"},Te={class:"control-row"},Ee=e.defineComponent({__name:"trackAnimationPanel",props:{cloud:{},knife:{},vectors:{}},emits:["getThreeData"],setup(t,{expose:o,emit:r}){const s=t,a=e.computed(()=>s.vectors),n=e.ref(!1),l=e.ref(0),c=e.ref(100);let f=!1;const u=g=>`第 ${g+1} 帧`,m=g=>{if(g<0||g>=a.value.length){console.error(`帧索引 ${g} 超出范围`);return}const y=a.value[g];l.value=g,S(s.knife,y,s.cloud)},v=async()=>{if(a.value.length===0){I.ElMessage.error("无法播放动画:无数据");return}if(!n.value){n.value=!0,f=!1,a.value.length-1===l.value&&(l.value=0);try{for(let g=l.value+1;g<a.value.length&&!f;g++)await new Promise(y=>setTimeout(y,c.value)),m(g);f||I.ElMessage.success("动画播放完成")}catch(g){console.error("动画播放出错:",g)}finally{n.value=!1}}},C=()=>{f=!0,n.value=!1,I.ElMessage.info("动画已停止")},N=g=>{n.value&&C(),m(g)},_=()=>{n.value&&C(),!(l.value+1>=a.value.length)&&m(l.value+1)},V=()=>{n.value&&C(),l.value!==0&&m(l.value-1)},h=()=>{l.value=0};return o({playAnimation:v,stopAnimation:C,forwardFrame:_,backwardFrame:V,resetAnimationFrame:h,reset:async()=>{await C(),h()}}),(g,y)=>{const L=e.resolveComponent("el-input-number"),B=e.resolveComponent("el-form-item"),D=e.resolveComponent("el-form"),$=e.resolveComponent("el-slider");return e.openBlock(),e.createElementBlock("div",ke,[e.createElementVNode("div",_e,[e.createElementVNode("div",Ve,[e.createVNode(D,{"label-width":"auto",style:{width:"100%"}},{default:e.withCtx(()=>[e.createVNode(B,{label:"帧间隔 (ms):",prop:"frameDuration"},{default:e.withCtx(()=>[e.createVNode(L,{modelValue:c.value,"onUpdate:modelValue":y[0]||(y[0]=z=>c.value=z),min:0,max:5e3,step:10,style:{width:"100%"}},null,8,["modelValue"])]),_:1})]),_:1})]),e.createElementVNode("div",be,[y[2]||(y[2]=e.createElementVNode("label",null,"当前帧:",-1)),e.createElementVNode("span",Ne,e.toDisplayString(l.value+1)+" / "+e.toDisplayString(a.value.length),1)]),e.createElementVNode("div",Te,[y[3]||(y[3]=e.createElementVNode("label",null,"动画进度:",-1)),e.createVNode($,{modelValue:l.value,"onUpdate:modelValue":y[1]||(y[1]=z=>l.value=z),min:0,max:a.value.length>0?a.value.length-1:0,step:1,"format-tooltip":u,onInput:N,disabled:a.value.length===0,style:{"flex-grow":"1",margin:"0 10px"}},null,8,["modelValue","max","disabled"])])])])}}}),xe=R._export_sfc(Ee,[["__scopeId","data-v-f6fc7a8c"]]);function ze(t){const o=[];return t.forEach(r=>{const[s,a,n]=r.trim().split(/\s+/);o.push(+s,+a,+n)}),o}function U(t,o,r){switch(t){case"X":o.x=+r||0;break;case"Y":o.y=+r||0;break;case"Z":o.z=+r||0;break}}function Ae(t){const o=[],r=["X","Y","Z"];return t.forEach(s=>{const a={x:0,y:0,z:0},n=s.trim();if(!n)return;let l=null,c="";for(let f=0;f<(n==null?void 0:n.length);f++){const u=n[f],m=r.find(v=>v===u);if(m){l&&U(l,a,c),c="",l=m;continue}c=c+u}U(l,a,c),o.push(a.x,a.y,a.z)}),o}const Pe=t=>t==null?void 0:t.filter(r=>r.includes("=")),Me=t=>t.replace(/,/g,""),Fe=t=>t==null?void 0:t.map(r=>Me(r)),Ie=t=>{const o=Pe(t);return Fe(o)};function Ue(t){const o=Ie(t),r=[];return o.forEach(s=>{var v,C,N,_,V,h;let[a,n,l,c]=s.trim().split(/\s+/);n=(v=n==null?void 0:n.trim)==null?void 0:v.call(n),l=(C=l==null?void 0:l.trim)==null?void 0:C.call(l),c=(N=c==null?void 0:c.trim)==null?void 0:N.call(c);const[,f]=(_=n==null?void 0:n.split)==null?void 0:_.call(n,"="),[,u]=(V=l==null?void 0:l.split)==null?void 0:V.call(l,"="),[,m]=(h=c==null?void 0:c.split)==null?void 0:h.call(c,"=");r.push(+f,+u,+m)}),r}const Le=t=>t>="0"&&t<="9",Be=t=>t==="+"||t==="-",De=t=>t===".";function $e(t){return Le(t)||Be(t)||De(t)}function je(t){const o=[],r=new Set(["X","Y","Z"]);return t.forEach(s=>{const a={x:0,y:0,z:0},n=s.trim();if(!n)return;let l=null,c="";for(let f=0;f<(n==null?void 0:n.length);f++){const u=n[f];if(u==="T")break;const m=r.has(u)?u:null,v=$e(u);if(m||!v){l&&U(l,a,c),l=m,c="";continue}c=c+u}l&&U(l,a,c),o.push(a.x,a.y,a.z)}),o}function qe(t){return t==null?void 0:t.includes("=")}async function Xe(t){var a,n;const o=(a=t==null?void 0:t.trim())==null?void 0:a.split(/\r?\n/);if(qe(t))return Ue(o);const r=o==null?void 0:o[0],s=(n=r==null?void 0:r.trim())==null?void 0:n.split(/\s+/);if((s==null?void 0:s.length)>=3)return ze(o);if((s==null?void 0:s.length)===1)return Ae(o)}async function Ye(t){const o=t.trim().split(/\r?\n/),r=[];return o.forEach(s=>{const a=s.trim().split(/\s+/);if(a.length!=3)return;const[n,l,c]=a;r.push(+n,+l,+c)}),r}async function Ze(t){const o=t.trim().split(/\r?\n/),r=[];return o.forEach(s=>{const a=s.trim().split(/\s+/);if(a.length!=3)return;const[n,l,c]=a;r.push(+n,+l,+c)}),r}async function Oe(t){let o=t.trim().split(/\r?\n/);return o=o.filter(s=>{const a=s.startsWith("X")||s.startsWith("Y")||s.startsWith("Z"),n=s.startsWith("G")&&(s.includes("X")||s.includes("Y")||s.includes("Z")),l=s.startsWith("N")&&(s.includes("X")||s.includes("Y")||s.includes("Z"));return a||n||l}),je(o)}async function Ge(t,o){const{isCyd:r,isUv:s,isCpt:a,isNc:n}=o;return s?Xe(t):r?Ze(t):a?Ye(t):n?Oe(t):[]}function Ke(t){const o=[];for(let r=0;r<t.length;r+=3)o.push(new p.Vector3(t[r],t[r+1],t[r+2]));return o}function Re(t){const o=new p.BufferGeometry;o.setAttribute("position",new p.Float32BufferAttribute(t,3));const r=new p.LineBasicMaterial({color:55551,linewidth:3});return new p.Line(o,r)}function Se(t,o){if(!o||o.length<3)return;const{scene:r,camera:s,renderer:a,controls:n}=t();if(!r||!s||!a||!n)return;const l=Re(o);return l.name="轨迹路径",r.add(l),l}function We(t,o,r,s=4,a=50){let n=1/0,l=-1/0,c=1/0,f=-1/0,u=1/0,m=-1/0;for(let h=0;h<t.length;h+=3){const A=t[h],g=t[h+1],y=t[h+2];n=Math.min(n,A),l=Math.max(l,A),c=Math.min(c,g),f=Math.max(f,g),u=Math.min(u,y),m=Math.max(m,y)}const C=Math.sqrt((l-n)**2+(f-c)**2+(m-u)**2)*.05,N=p.MathUtils.degToRad(o.fov),_=2*Math.tan(N/2)*a,V=C/_*r.domElement.height*(s/4);return Math.min(.4,V)}function He(t){if(t.length%3!==0)return console.error("points array length is not a multiple of 3:",t),null;const o=new p.BufferGeometry;o.setAttribute("position",new p.Float32BufferAttribute(t,3));const r=new Float32Array(t.length);for(let n=0;n<t.length;n+=3)r[n]=0,r[n+1]=.847,r[n+2]=1;o.setAttribute("color",new p.BufferAttribute(r,3));const s=new p.PointsMaterial({vertexColors:!0,size:.4,sizeAttenuation:!0}),a=new p.Points(o,s);return s.needsUpdate=!0,a}function Je(t,o){if(!o)return;const{scene:r,camera:s,renderer:a,controls:n}=t();if(!r||!s||!a||!n)return;const l=He(o);if(!l)return;l.name="轨迹路径",r.add(l);const c=We(o,s,a,.1,50);return l.material.size=c,l}const Qe={class:"obj-viewer-container"},et={class:"buttonGroup-topLeft"},tt={class:"buttonGroup-left"},nt={class:"buttonGroup-right"},ot={class:"buttonGroup-bottom"},rt={class:"left-panel"},lt={class:"panel-header"},st={class:"panel-body"},it={class:"right-panel"},at={class:"panel-header"},ct={class:"panel-body"},ut={key:0,class:"loading-overlay"},dt=e.defineComponent({__name:"threeTrackPathView",props:{fileBlobs:{},threeData:{default:()=>""},trackFileType:{}},setup(t){const o=t,r=e.ref(null),s=e.ref(!1),a=e.ref(""),n=e.ref(),l=e.ref(!1),c=e.ref(""),f=e.ref(!1),u=e.ref(""),m=e.shallowRef(null),v=e.shallowRef(null),{currentModels:C,resetView:N,initThreeJS:_,handleResize:V,getThreeJSObjects:h,cleanup:A,setModels:g,setAndFitModels:y,axesHelperVisible:L,toggleAxesVisibility:B,zoomIn:D,zoomOut:$}=x.useThreeJS(r),{isAnimating:z,toggleAnimation:W,startAnimation:vt,stopAnimation:H}=x.useAnimation(h,C),{isClipping:J,activeClippingAxis:Y,toggleClipping:Q,updateClippingPlanes:ee}=x.useClipping(h,C),te=()=>{B()},ne=i=>{Y.value=i,ee()},j=i=>{l.value=!0,c.value=i,i==="剖面视图"&&!J.value&&Q()},q=i=>{f.value=!0,u.value=i},X=e.ref([]),P=e.ref([]),oe=e.computed(()=>{var d;return(d=o.trackFileType)==null?void 0:d.isUv}),re=e.computed(()=>{var d;return(d=o.trackFileType)==null?void 0:d.isCyd}),le=e.computed(()=>{var d;return(d=o.trackFileType)==null?void 0:d.isCpt}),T=e.computed(()=>{var d;return(d=o.trackFileType)==null?void 0:d.isNc}),Z=e.computed(()=>{const i=o.fileBlobs||[];return i==null?void 0:i[0]});let k=e.shallowRef(),E=e.shallowRef();const se=()=>{const{scene:i}=h();k.value&&i&&(x.disposeObj(k.value,i),k.value=null)},ie=()=>{const{scene:i}=h();E.value&&i&&(x.disposeObj(E.value,i),E.value=null)},O=()=>{se(),ie()},ae=async i=>{const d=URL.createObjectURL(i),M=await p.readFileText(d);if(URL.revokeObjectURL(d),ge.isString(M)){X.value=await Ge(M,o.trackFileType)||[];const b=X.value;oe.value&&(k.value=Se(h,b)),(re.value||le.value||T.value)&&(k.value=Je(h,b))}},ce=async()=>{var i,d;E.value=ye(),P.value=Ke(X.value),P.value&&P.value.length&&(S(E.value,P.value[0],k.value,new p.Color(16711680)),(d=(i=v.value)==null?void 0:i.add)==null||d.call(i,E.value))},G=async i=>{O(),await ae(i),k.value&&x.frameCameraToObject3D(h,k.value),T.value&&ce()};e.watch(()=>Z.value,async i=>{i&&await G(i)},{immediate:!0,deep:!0});const ue=async()=>{var i;await((i=n==null?void 0:n.value)==null?void 0:i.reset()),await G(Z.value)},de=()=>{var i;T.value&&((i=n==null?void 0:n.value)==null||i.playAnimation())},fe=()=>{var i;T.value&&((i=n==null?void 0:n.value)==null||i.stopAnimation())},ve=()=>{var i;T.value&&((i=n==null?void 0:n.value)==null||i.forwardFrame())},me=()=>{var i;T.value&&((i=n==null?void 0:n.value)==null||i.backwardFrame())},pe=()=>{_(),e.nextTick(()=>{r.value&&(F=new ResizeObserver(V),F.observe(r.value))});const i=h();v.value=i.scene,v.value&&(v.value.name="CPMPIP")},he=()=>{F&&F.disconnect(),z.value&&H(),O(),A()};let F=null;return e.onMounted(async()=>{try{pe()}catch(i){console.error("Three.js 初始化失败:",i),I.ElMessage.error("渲染引擎初始化失败!")}}),e.onBeforeUnmount(()=>{he()}),(i,d)=>{const M=e.resolveComponent("el-scrollbar");return e.openBlock(),e.createElementBlock("div",Qe,[e.createElementVNode("div",{ref_key:"threejsContainer",ref:r,class:"threejs-container"},null,512),e.createElementVNode("div",et,[e.createVNode(w.ThreeSvgIcon,{name:"viewReset",size:"24",onClick:ue,title:"重置"}),e.createVNode(w.ThreeSvgIcon,{name:"fangda",size:"24",title:"放大",onClick:e.unref(D)},null,8,["onClick"]),e.createVNode(w.ThreeSvgIcon,{name:"suoxiao",size:"24",title:"缩小",onClick:e.unref($)},null,8,["onClick"]),e.createVNode(w.ThreeSvgIcon,{name:"lookAround",size:"24",onClick:e.unref(W),title:e.unref(z)?"停止动画":"动画视图"},null,8,["onClick","title"]),e.createVNode(w.ThreeSvgIcon,{name:"zuobiaoxi",size:"24",active:e.unref(L),onClick:te,title:"显隐坐标轴"},null,8,["active"])]),e.createElementVNode("div",tt,[e.renderSlot(i.$slots,"button-left",{switchRightPanel:j},void 0,!0),e.createVNode(w.ThreeSvgIcon,{name:"jiegoushu",size:"24",onClick:d[0]||(d[0]=b=>j("场景树")),active:l.value&&c.value==="场景树",title:"场景树"},null,8,["active"]),e.createVNode(w.ThreeSvgIcon,{name:"clipping",size:"24",onClick:d[1]||(d[1]=b=>j("剖面视图")),active:l.value&&c.value==="剖面视图",title:"剖面视图"},null,8,["active"])]),e.createElementVNode("div",nt,[e.renderSlot(i.$slots,"button-right",{switchRightPanel:q},void 0,!0),e.createVNode(w.ThreeSvgIcon,{name:"guanjiekongzhi",size:"24",onClick:d[2]||(d[2]=b=>q("关节控制")),active:f.value&&u.value==="关节控制",title:"关节控制"},null,8,["active"]),e.createVNode(w.ThreeSvgIcon,{name:"donghuafangzhen",size:"24",title:"动画仿真",onClick:d[3]||(d[3]=b=>q("动画仿真")),active:f.value&&u.value==="动画仿真"},null,8,["active"])]),e.createElementVNode("div",ot,[e.createVNode(w.ThreeSvgIcon,{name:"kuaitui",size:"24",backgroundColor:"#ffffff",title:"快退",onClick:me}),e.createVNode(w.ThreeSvgIcon,{name:"bofang",size:"24",backgroundColor:"#ffffff",title:"播放",onClick:de}),e.createVNode(w.ThreeSvgIcon,{name:"kuaijin",size:"24",backgroundColor:"#ffffff",title:"快进",onClick:ve}),e.createVNode(w.ThreeSvgIcon,{name:"zanting",size:"24",backgroundColor:"#ffffff",title:"暂停",onClick:fe})]),e.withDirectives(e.createElementVNode("div",rt,[e.createElementVNode("div",lt,[e.createElementVNode("span",null,e.toDisplayString(c.value),1),e.createElementVNode("span",{class:"close",onClick:d[4]||(d[4]=b=>l.value=!1)}," X ")]),e.createElementVNode("div",st,[e.createVNode(M,{height:"100%"},{default:e.withCtx(()=>[c.value==="场景树"?(e.openBlock(),e.createBlock(K.UrdfTree,{key:0,model:m.value},null,8,["model"])):e.createCommentVNode("",!0),c.value==="剖面视图"?(e.openBlock(),e.createBlock(x.ClippingPanel,{key:1,value:e.unref(Y),onChange:ne},null,8,["value"])):e.createCommentVNode("",!0)]),_:1})])],512),[[e.vShow,l.value]]),e.withDirectives(e.createElementVNode("div",it,[e.createElementVNode("div",at,[e.createElementVNode("span",null,e.toDisplayString(u.value),1),e.createElementVNode("span",{class:"close",onClick:d[5]||(d[5]=b=>f.value=!1)}," X ")]),e.createElementVNode("div",ct,[e.createVNode(M,{height:"100%"},{default:e.withCtx(()=>[e.withDirectives(e.createVNode(K.JointPanel,{model:m.value},null,8,["model"]),[[e.vShow,u.value==="关节控制"]]),e.withDirectives(e.createVNode(xe,{ref_key:"animationPanelRef",ref:n,cloud:e.unref(k),knife:e.unref(E),vectors:P.value},null,8,["cloud","knife","vectors"]),[[e.vShow,u.value==="动画仿真"&&T.value]])]),_:1})])],512),[[e.vShow,f.value]]),s.value?(e.openBlock(),e.createElementBlock("div",ut,[d[6]||(d[6]=e.createElementVNode("div",{class:"loading-spinner"},null,-1)),e.createElementVNode("p",null,e.toDisplayString(a.value),1)])):e.createCommentVNode("",!0)])}}}),ft=R._export_sfc(dt,[["__scopeId","data-v-7178b621"]]);exports.default=ft;
@@ -1,7 +1,7 @@
1
1
  import { defineComponent as U, defineAsyncComponent as S, computed as I, ref as R, watch as H, createElementBlock as N, openBlock as T, createElementVNode as K, createBlock as B, createCommentVNode as V, renderSlot as u, unref as m, withCtx as d } from "vue";
2
2
  import { bD as W, p as w, s as A } from "./index-7MBVUN82.js";
3
3
  import { u as $ } from "./index-3oQGURYh.js";
4
- import { c as j, b0 as M, b1 as L } from "./index.vue_vue_type_style_index_0_scoped_0f027c8c_lang-DOr6MjBQ.js";
4
+ import { c as j, b0 as M, b1 as L } from "./index.vue_vue_type_style_index_0_scoped_0f027c8c_lang-vD09aciY.js";
5
5
  import { _ as G } from "./_plugin-vue_export-helper-CHgC5LLL.js";
6
6
  const se = {
7
7
  SINGLE: "单机",
@@ -113,7 +113,7 @@ const q = { class: "three-platform mv-inline" }, J = { class: "top-menu" }, Q =
113
113
  height: { default: "100%" }
114
114
  },
115
115
  setup(E) {
116
- const D = S(() => import("./threeSceneView-Bp6gXXHH.js")), y = S(() => import("./threePreview-BrkMZtc1.js")), i = S(() => import("./threeTrackPathView-BrUitF0g.js")), p = S(() => import("./threeSceneViewForCPMPIP-CPiyMoZE.js")), n = E, P = $(w), { platName: f } = A(P), { isUrdf: _, isTrackPathFile: g } = Y(), c = I(() => {
116
+ const D = S(() => import("./threeSceneView-CDsUz97l.js")), y = S(() => import("./threePreview-DzecTfP3.js")), i = S(() => import("./threeTrackPathView-AG1PIyYQ.js")), p = S(() => import("./threeSceneViewForCPMPIP-D_tsnQ23.js")), n = E, P = $(w), { platName: f } = A(P), { isUrdf: _, isTrackPathFile: g } = Y(), c = I(() => {
117
117
  var t;
118
118
  return (t = n == null ? void 0 : n.files) == null ? void 0 : t.map((s) => {
119
119
  const { url: e } = s;
@@ -1 +1 @@
1
- "use strict";const e=require("vue"),h=require("./index-DOItJqcJ.cjs"),b=require("./index-CXC0u8pm.cjs"),S=require("./index.vue_vue_type_style_index_0_scoped_0f027c8c_lang-8DE7CzzY.cjs"),F=require("./_plugin-vue_export-helper-BHFhmbuH.cjs"),R={SINGLE:"单机",DOUBLE:"双机"},N={ROBOT:1,PIPECOMPARSION:2},i={ROBOT_SCENE:"robot",TRACK_PATH:"trackPath",CPMPIP_SCENE:"cpmpip",PREVIEW:"preview"},I=h.defineStore("threeState",{state:()=>({data:{files:[],data:{}}}),actions:{setData(v){this.data=v},getData(){return this.data}}});function O(){const v=b.useMenuState(h.pinia),{platform:g}=h.storeToRefs(v),P=I(h.pinia),c=["uv","cyd","nc"],d=["urdf"],r=["obj","stl"],T=[...c,...d,...r],f=t=>{if(!C())throw new Error("不是三维系统");P.setData(t)},y=()=>P.getData(),C=()=>g.value==="three",l=t=>S.getFileExtension(t),m=t=>{if(!t)return!1;const o=l(t);return T==null?void 0:T.includes(o)},E=t=>{if(!t)return!1;const o=l(t);return r==null?void 0:r.includes(o)},p=t=>{if(!t)return!1;const o=l(t);return c==null?void 0:c.includes(o)},u=t=>{if(!t)return{isCpt:!1,isCyd:!1,isUv:!1,isNc:!1};const o=l(t),a=c==null?void 0:c.find(k=>k===o);return{isCpt:a==="cpt",isCyd:a==="cyd",isUv:a==="uv",isNc:a==="nc"}},_=t=>{if(!t)return!1;const o=l(t);return d==null?void 0:d.includes(o)},B=t=>C()&&m(t),n=t=>({url:t,extension:l(t)});return{getData:y,setData:f,isThreeSystem:C,isUrdf:_,isGeneralFile:E,isTrackPathFile:p,isThreeFile:m,isUseBackdrop:B,initTrackFileType:u,getFileExtension:l,getFileInfo:n,getFilesInfo:t=>{const o=[];for(let a=0;a<t.length;a++){const w=t[a],k=n(w);o.push(k)}return o}}}const V={class:"three-platform mv-inline"},A={class:"top-menu"},M={key:4,class:"loading"},H=e.defineComponent({__name:"threeViewerHost",props:{files:{default:()=>[]},threeData:{},componentType:{},width:{default:"100%"},height:{default:"100%"}},setup(v){const g=e.defineAsyncComponent(()=>Promise.resolve().then(()=>require("./threeSceneView-B8e1RXvy.cjs"))),P=e.defineAsyncComponent(()=>Promise.resolve().then(()=>require("./threePreview-DABGilVv.cjs"))),c=e.defineAsyncComponent(()=>Promise.resolve().then(()=>require("./threeTrackPathView-RLO4Icfk.cjs"))),d=e.defineAsyncComponent(()=>Promise.resolve().then(()=>require("./threeSceneViewForCPMPIP-Z10qhqQn.cjs"))),r=v,T=b.useMenuState(h.pinia),{platName:f}=h.storeToRefs(T),{isUrdf:y,isTrackPathFile:C}=O(),l=e.computed(()=>{var n;return(n=r==null?void 0:r.files)==null?void 0:n.map(s=>{const{url:t}=s;return t})}),m=e.computed(()=>{var t;const n=(t=r==null?void 0:r.files)==null?void 0:t[0];return(n==null?void 0:n.extension)||""}),E=e.computed(()=>{var n,s;return(s=(n=r==null?void 0:r.threeData)==null?void 0:n.data)==null?void 0:s.trackFileType}),p=e.computed(()=>{if(r.componentType)switch(r.componentType){case"robot":return i.ROBOT_SCENE;case"track":return i.TRACK_PATH;case"cpmpip":return i.CPMPIP_SCENE;case"preview":return i.PREVIEW}return(f==null?void 0:f.value)===S.platNameConstants.CPMPIP&&y(m.value)?i.CPMPIP_SCENE:(f==null?void 0:f.value)===S.platNameConstants.ROBOT&&y(m.value)?i.ROBOT_SCENE:C(m.value)&&E.value?i.TRACK_PATH:i.PREVIEW}),u=e.ref([]),_=e.ref(!1);async function B(n){if(!n||!n.length){u.value=[];return}_.value=!0;try{const s=await Promise.all(n.map(t=>S.downloadFile(t)));u.value=s}catch(s){console.error("文件下载时发生错误:",s),u.value=[]}finally{_.value=!1}}return e.watch(()=>l.value,async n=>{await B(n||[])},{immediate:!0,deep:!0}),(n,s)=>(e.openBlock(),e.createElementBlock("div",V,[e.createElementVNode("div",A,[e.renderSlot(n.$slots,"top-menu",{},void 0,!0)]),p.value===e.unref(i).ROBOT_SCENE?(e.openBlock(),e.createBlock(e.unref(g),{key:0,fileBlobs:u.value,threeData:r.threeData},{"button-left":e.withCtx(()=>[e.renderSlot(n.$slots,"management-menu",{},void 0,!0)]),"button-right":e.withCtx(()=>[e.renderSlot(n.$slots,"management-page",{},void 0,!0)]),_:3},8,["fileBlobs","threeData"])):p.value===e.unref(i).TRACK_PATH?(e.openBlock(),e.createBlock(e.unref(c),{key:1,fileBlobs:u.value,threeData:r.threeData,trackFileType:E.value},{"button-left":e.withCtx(()=>[e.renderSlot(n.$slots,"management-menu",{},void 0,!0)]),"button-right":e.withCtx(()=>[e.renderSlot(n.$slots,"management-page",{},void 0,!0)]),_:3},8,["fileBlobs","threeData","trackFileType"])):p.value===e.unref(i).CPMPIP_SCENE?(e.openBlock(),e.createBlock(e.unref(d),{key:2,fileBlobs:u.value,threeData:r.threeData},{"button-left":e.withCtx(()=>[e.renderSlot(n.$slots,"management-menu",{},void 0,!0)]),"button-right":e.withCtx(()=>[e.renderSlot(n.$slots,"management-page",{},void 0,!0)]),_:3},8,["fileBlobs","threeData"])):p.value===e.unref(i).PREVIEW?(e.openBlock(),e.createBlock(e.unref(P),{key:3,fileBlobs:u.value},{"button-left":e.withCtx(()=>[e.renderSlot(n.$slots,"management-menu",{},void 0,!0)]),"button-right":e.withCtx(()=>[e.renderSlot(n.$slots,"management-page",{},void 0,!0)]),_:3},8,["fileBlobs"])):e.createCommentVNode("",!0),_.value?(e.openBlock(),e.createElementBlock("div",M," 文件下载中,请稍候... ")):e.createCommentVNode("",!0)]))}}),D=F._export_sfc(H,[["__scopeId","data-v-9798f55b"]]),$=Object.freeze(Object.defineProperty({__proto__:null,default:D},Symbol.toStringTag,{value:"Module"}));exports.ThreeViewerHost=D;exports.robotMode=R;exports.sceneType=N;exports.threeViewerHost=$;exports.useThreeState=I;exports.useThreeSystem=O;
1
+ "use strict";const e=require("vue"),h=require("./index-DOItJqcJ.cjs"),b=require("./index-CXC0u8pm.cjs"),S=require("./index.vue_vue_type_style_index_0_scoped_0f027c8c_lang-BRn8KHun.cjs"),F=require("./_plugin-vue_export-helper-BHFhmbuH.cjs"),R={SINGLE:"单机",DOUBLE:"双机"},N={ROBOT:1,PIPECOMPARSION:2},i={ROBOT_SCENE:"robot",TRACK_PATH:"trackPath",CPMPIP_SCENE:"cpmpip",PREVIEW:"preview"},I=h.defineStore("threeState",{state:()=>({data:{files:[],data:{}}}),actions:{setData(v){this.data=v},getData(){return this.data}}});function O(){const v=b.useMenuState(h.pinia),{platform:g}=h.storeToRefs(v),P=I(h.pinia),c=["uv","cyd","nc"],d=["urdf"],r=["obj","stl"],T=[...c,...d,...r],f=t=>{if(!C())throw new Error("不是三维系统");P.setData(t)},y=()=>P.getData(),C=()=>g.value==="three",l=t=>S.getFileExtension(t),m=t=>{if(!t)return!1;const o=l(t);return T==null?void 0:T.includes(o)},E=t=>{if(!t)return!1;const o=l(t);return r==null?void 0:r.includes(o)},p=t=>{if(!t)return!1;const o=l(t);return c==null?void 0:c.includes(o)},u=t=>{if(!t)return{isCpt:!1,isCyd:!1,isUv:!1,isNc:!1};const o=l(t),a=c==null?void 0:c.find(k=>k===o);return{isCpt:a==="cpt",isCyd:a==="cyd",isUv:a==="uv",isNc:a==="nc"}},_=t=>{if(!t)return!1;const o=l(t);return d==null?void 0:d.includes(o)},B=t=>C()&&m(t),n=t=>({url:t,extension:l(t)});return{getData:y,setData:f,isThreeSystem:C,isUrdf:_,isGeneralFile:E,isTrackPathFile:p,isThreeFile:m,isUseBackdrop:B,initTrackFileType:u,getFileExtension:l,getFileInfo:n,getFilesInfo:t=>{const o=[];for(let a=0;a<t.length;a++){const w=t[a],k=n(w);o.push(k)}return o}}}const V={class:"three-platform mv-inline"},A={class:"top-menu"},M={key:4,class:"loading"},H=e.defineComponent({__name:"threeViewerHost",props:{files:{default:()=>[]},threeData:{},componentType:{},width:{default:"100%"},height:{default:"100%"}},setup(v){const g=e.defineAsyncComponent(()=>Promise.resolve().then(()=>require("./threeSceneView-C041EeAi.cjs"))),P=e.defineAsyncComponent(()=>Promise.resolve().then(()=>require("./threePreview-CL0mHGyZ.cjs"))),c=e.defineAsyncComponent(()=>Promise.resolve().then(()=>require("./threeTrackPathView-DruGVa1-.cjs"))),d=e.defineAsyncComponent(()=>Promise.resolve().then(()=>require("./threeSceneViewForCPMPIP-BQ7LqbEc.cjs"))),r=v,T=b.useMenuState(h.pinia),{platName:f}=h.storeToRefs(T),{isUrdf:y,isTrackPathFile:C}=O(),l=e.computed(()=>{var n;return(n=r==null?void 0:r.files)==null?void 0:n.map(s=>{const{url:t}=s;return t})}),m=e.computed(()=>{var t;const n=(t=r==null?void 0:r.files)==null?void 0:t[0];return(n==null?void 0:n.extension)||""}),E=e.computed(()=>{var n,s;return(s=(n=r==null?void 0:r.threeData)==null?void 0:n.data)==null?void 0:s.trackFileType}),p=e.computed(()=>{if(r.componentType)switch(r.componentType){case"robot":return i.ROBOT_SCENE;case"track":return i.TRACK_PATH;case"cpmpip":return i.CPMPIP_SCENE;case"preview":return i.PREVIEW}return(f==null?void 0:f.value)===S.platNameConstants.CPMPIP&&y(m.value)?i.CPMPIP_SCENE:(f==null?void 0:f.value)===S.platNameConstants.ROBOT&&y(m.value)?i.ROBOT_SCENE:C(m.value)&&E.value?i.TRACK_PATH:i.PREVIEW}),u=e.ref([]),_=e.ref(!1);async function B(n){if(!n||!n.length){u.value=[];return}_.value=!0;try{const s=await Promise.all(n.map(t=>S.downloadFile(t)));u.value=s}catch(s){console.error("文件下载时发生错误:",s),u.value=[]}finally{_.value=!1}}return e.watch(()=>l.value,async n=>{await B(n||[])},{immediate:!0,deep:!0}),(n,s)=>(e.openBlock(),e.createElementBlock("div",V,[e.createElementVNode("div",A,[e.renderSlot(n.$slots,"top-menu",{},void 0,!0)]),p.value===e.unref(i).ROBOT_SCENE?(e.openBlock(),e.createBlock(e.unref(g),{key:0,fileBlobs:u.value,threeData:r.threeData},{"button-left":e.withCtx(()=>[e.renderSlot(n.$slots,"management-menu",{},void 0,!0)]),"button-right":e.withCtx(()=>[e.renderSlot(n.$slots,"management-page",{},void 0,!0)]),_:3},8,["fileBlobs","threeData"])):p.value===e.unref(i).TRACK_PATH?(e.openBlock(),e.createBlock(e.unref(c),{key:1,fileBlobs:u.value,threeData:r.threeData,trackFileType:E.value},{"button-left":e.withCtx(()=>[e.renderSlot(n.$slots,"management-menu",{},void 0,!0)]),"button-right":e.withCtx(()=>[e.renderSlot(n.$slots,"management-page",{},void 0,!0)]),_:3},8,["fileBlobs","threeData","trackFileType"])):p.value===e.unref(i).CPMPIP_SCENE?(e.openBlock(),e.createBlock(e.unref(d),{key:2,fileBlobs:u.value,threeData:r.threeData},{"button-left":e.withCtx(()=>[e.renderSlot(n.$slots,"management-menu",{},void 0,!0)]),"button-right":e.withCtx(()=>[e.renderSlot(n.$slots,"management-page",{},void 0,!0)]),_:3},8,["fileBlobs","threeData"])):p.value===e.unref(i).PREVIEW?(e.openBlock(),e.createBlock(e.unref(P),{key:3,fileBlobs:u.value},{"button-left":e.withCtx(()=>[e.renderSlot(n.$slots,"management-menu",{},void 0,!0)]),"button-right":e.withCtx(()=>[e.renderSlot(n.$slots,"management-page",{},void 0,!0)]),_:3},8,["fileBlobs"])):e.createCommentVNode("",!0),_.value?(e.openBlock(),e.createElementBlock("div",M," 文件下载中,请稍候... ")):e.createCommentVNode("",!0)]))}}),D=F._export_sfc(H,[["__scopeId","data-v-9798f55b"]]),$=Object.freeze(Object.defineProperty({__proto__:null,default:D},Symbol.toStringTag,{value:"Module"}));exports.ThreeViewerHost=D;exports.robotMode=R;exports.sceneType=N;exports.threeViewerHost=$;exports.useThreeState=I;exports.useThreeSystem=O;
@@ -1 +1 @@
1
- "use strict";const n=require("vue"),k=require("./index.vue_vue_type_style_index_0_scoped_0f027c8c_lang-8DE7CzzY.cjs"),x=require("./_plugin-vue_export-helper-BHFhmbuH.cjs"),J=(o,a)=>{if(!a)return null;const i=o.joints[a];return i||null},V=(o,a)=>{if(!a)return null;const i=J(o,a);if(!i)return null;let u=null;return i.traverse(c=>{c instanceof k.Mesh&&!u&&(u=c)}),u},F=(o,a)=>{if(!a)return null;const i=o.links[a];return i||null},L=(o,a)=>{if(!a)return null;const i=F(o,a);if(!i)return null;let u=null;return i.traverse(c=>{c instanceof k.Mesh&&!u&&(u=c)}),u},E=o=>{const a=o.joints;return Object.values(a)},M=o=>E(o).filter(u=>u.jointType!=="fixed"),N=o=>{const a=o.links;return Object.keys(a)},w={class:"panel-content"},B={key:0,class:"joints-list"},b={class:"joint-info-row"},I={class:"joint-left"},S={class:"joint-name"},C={class:"joint-range"},D={class:"joint-type"},P={key:0,class:"joint-control-row"},T={class:"slider-container"},U=["min","max","value","onInput"],A={class:"value-display"},R={class:"joint-value"},q={class:"unit"},O={key:1,class:"empty-state"},K=n.defineComponent({__name:"urdfJointPanel",props:{model:{}},setup(o,{expose:a}){const i=o,u=n.ref([]),c=n.ref(null),f=(r,e=!1)=>r==="revolute"?e?Math.PI:-Math.PI:r==="prismatic"?e?1:-1:0,h=r=>{if(!r||!r.joints)return console.warn("URDF模型无效或不包含关节信息"),[];const e=[];return E(r).forEach(l=>{var d,p;if(l.jointType==="fixed")return;let t={lower:((d=l.limit)==null?void 0:d.lower)??f(l.jointType,!1),upper:((p=l.limit)==null?void 0:p.upper)??f(l.jointType,!0)};l.jointType==="continuous"&&(t={lower:-10*Math.PI,upper:10*Math.PI}),e.push({name:l.name,type:l.jointType||"unknown",limit:t,currentValue:l.angle||0,urdfJoint:l})}),e},m=(r,e)=>{var d;const s=u.value.find(p=>p.name===r);if(!s)return;const l=parseFloat(e),t=Math.max(s.limit.lower,Math.min(s.limit.upper,l));s.currentValue=t,(d=i.model)!=null&&d.setJointValue?i.model.setJointValue(r,t):s.urdfJoint.setJointValue(t)},_=()=>{u.value.forEach(r=>{(r.type==="revolute"||r.type==="continuous"||r.type==="prismatic")&&m(r.name,0)})},g=()=>{i.model&&u.value.forEach(r=>{r.urdfJoint.angle!==void 0&&r.currentValue!==r.urdfJoint.angle&&(r.currentValue=r.urdfJoint.angle)})},v=()=>{const r=()=>{g(),c.value=requestAnimationFrame(r)};r()},y=()=>{c.value&&(cancelAnimationFrame(c.value),c.value=null)};return n.watch(()=>i.model,r=>{r?u.value=h(r):u.value=[]},{immediate:!0}),n.onMounted(()=>{v()}),n.onUnmounted(()=>{y()}),a({resetAllJoints:_}),(r,e)=>(n.openBlock(),n.createElementBlock("div",w,[u.value.length>0?(n.openBlock(),n.createElementBlock("div",B,[(n.openBlock(!0),n.createElementBlock(n.Fragment,null,n.renderList(u.value,s=>(n.openBlock(),n.createElementBlock("div",{key:s.name,class:"joint-item"},[n.createElementVNode("div",b,[n.createElementVNode("div",I,[n.createElementVNode("span",S,n.toDisplayString(s.name),1),n.createElementVNode("span",C," ["+n.toDisplayString(s.limit.lower.toFixed(2))+", "+n.toDisplayString(s.limit.upper.toFixed(2))+"] ",1)]),n.createElementVNode("span",D,n.toDisplayString(s.type),1)]),s.type==="revolute"||s.type==="prismatic"||s.type==="continuous"?(n.openBlock(),n.createElementBlock("div",P,[n.createElementVNode("div",T,[n.createElementVNode("input",{type:"range",min:s.limit.lower,max:s.limit.upper,step:"0.001",value:s.currentValue,onInput:l=>m(s.name,l.target.value),class:"joint-slider"},null,40,U)]),n.createElementVNode("div",A,[n.createElementVNode("span",R,n.toDisplayString(s.currentValue?Number(s.currentValue).toFixed(3):"0.000"),1),n.createElementVNode("span",q,n.toDisplayString(s.type==="prismatic"?"m":"rad"),1)])])):n.createCommentVNode("",!0)]))),128))])):(n.openBlock(),n.createElementBlock("div",O,e[0]||(e[0]=[n.createElementVNode("p",null,"未检测到可控制的关节",-1)])))]))}}),$=x._export_sfc(K,[["__scopeId","data-v-750b831d"]]),H={class:"panel-content"},z="id",G={__name:"urdfTree",props:{model:Object,maxExpandCount:{type:Number,default:10},expandStrategy:{type:String,default:"breadth",validator:o=>["breadth","firstLevel"].includes(o)}},emits:["nodeClick"],setup(o,{emit:a}){const i=o,u=a,c=n.ref([]),f={children:"children",label:"label"},h=e=>{u("nodeClick",e)},m=(e,s=0)=>{const l=[];return Array.isArray(e)&&(e==null?void 0:e.length)>0&&e.forEach(t=>{if(!(t!=null&&t.isMesh)&&((t==null?void 0:t.type)==="URDFJoint"||(t==null?void 0:t.type)==="URDFLink")){const d={name:t==null?void 0:t.name,label:t==null?void 0:t.name,show:!0,level:s+1,isPenultimate:!1,type:t==null?void 0:t.type,id:t==null?void 0:t.id,limit:(t==null?void 0:t.limit)??"",children:m(t==null?void 0:t.children,s+1),path:t==null?void 0:t.name};l.push(d)}}),l},_=e=>e?[{name:e==null?void 0:e.name,label:e==null?void 0:e.name,show:!0,level:1,isPenultimate:!1,type:e==null?void 0:e.type,id:e==null?void 0:e.id,limit:(e==null?void 0:e.limit)??"",children:m(e==null?void 0:e.children,1)||[],path:e==null?void 0:e.name}]:[],g=(e,s)=>{const l=[],t=[...e];for(;t.length>0&&l.length<s;){const d=t.shift();d.children&&d.children.length>0&&(l.push(d.id),t.push(...d.children))}return l},v=(e,s)=>{const l=[];return e.forEach(t=>{if(t.children&&t.children.length>0){l.push(t.id);const d=t.children.filter(p=>p.children&&p.children.length>0).slice(0,s).map(p=>p.id);l.push(...d)}}),l.slice(0,s+1)},y=n.computed(()=>!c.value||c.value.length===0?[]:i.expandStrategy==="firstLevel"?v(c.value,i.maxExpandCount):g(c.value,i.maxExpandCount)),r=n.computed(()=>[{name:"场景",label:"场景",show:!0,level:1,isPenultimate:!1,type:"场景",id:"场景",children:i!=null&&i.model?_(i.model):[],path:"场景"}]);return n.watch(r,e=>{c.value=JSON.parse(JSON.stringify(e))},{immediate:!0}),(e,s)=>{const l=n.resolveComponent("el-tree");return n.openBlock(),n.createElementBlock("div",H,[n.createVNode(l,{data:c.value,props:f,"default-expanded-keys":y.value,"node-key":z,onNodeClick:h},null,8,["data","default-expanded-keys"])])}}},Q=x._export_sfc(G,[["__scopeId","data-v-cfde50c3"]]);exports.JointPanel=$;exports.UrdfTree=Q;exports.getAllLinkName=N;exports.getMeshFromJoint=V;exports.getMeshFromLink=L;exports.getNonFixedJoints=M;exports.getTargetJoint=J;
1
+ "use strict";const n=require("vue"),k=require("./index.vue_vue_type_style_index_0_scoped_0f027c8c_lang-BRn8KHun.cjs"),x=require("./_plugin-vue_export-helper-BHFhmbuH.cjs"),J=(o,a)=>{if(!a)return null;const i=o.joints[a];return i||null},V=(o,a)=>{if(!a)return null;const i=J(o,a);if(!i)return null;let u=null;return i.traverse(c=>{c instanceof k.Mesh&&!u&&(u=c)}),u},F=(o,a)=>{if(!a)return null;const i=o.links[a];return i||null},L=(o,a)=>{if(!a)return null;const i=F(o,a);if(!i)return null;let u=null;return i.traverse(c=>{c instanceof k.Mesh&&!u&&(u=c)}),u},E=o=>{const a=o.joints;return Object.values(a)},M=o=>E(o).filter(u=>u.jointType!=="fixed"),N=o=>{const a=o.links;return Object.keys(a)},w={class:"panel-content"},B={key:0,class:"joints-list"},b={class:"joint-info-row"},I={class:"joint-left"},S={class:"joint-name"},C={class:"joint-range"},D={class:"joint-type"},P={key:0,class:"joint-control-row"},T={class:"slider-container"},U=["min","max","value","onInput"],A={class:"value-display"},R={class:"joint-value"},q={class:"unit"},O={key:1,class:"empty-state"},K=n.defineComponent({__name:"urdfJointPanel",props:{model:{}},setup(o,{expose:a}){const i=o,u=n.ref([]),c=n.ref(null),f=(r,e=!1)=>r==="revolute"?e?Math.PI:-Math.PI:r==="prismatic"?e?1:-1:0,h=r=>{if(!r||!r.joints)return console.warn("URDF模型无效或不包含关节信息"),[];const e=[];return E(r).forEach(l=>{var d,p;if(l.jointType==="fixed")return;let t={lower:((d=l.limit)==null?void 0:d.lower)??f(l.jointType,!1),upper:((p=l.limit)==null?void 0:p.upper)??f(l.jointType,!0)};l.jointType==="continuous"&&(t={lower:-10*Math.PI,upper:10*Math.PI}),e.push({name:l.name,type:l.jointType||"unknown",limit:t,currentValue:l.angle||0,urdfJoint:l})}),e},m=(r,e)=>{var d;const s=u.value.find(p=>p.name===r);if(!s)return;const l=parseFloat(e),t=Math.max(s.limit.lower,Math.min(s.limit.upper,l));s.currentValue=t,(d=i.model)!=null&&d.setJointValue?i.model.setJointValue(r,t):s.urdfJoint.setJointValue(t)},_=()=>{u.value.forEach(r=>{(r.type==="revolute"||r.type==="continuous"||r.type==="prismatic")&&m(r.name,0)})},g=()=>{i.model&&u.value.forEach(r=>{r.urdfJoint.angle!==void 0&&r.currentValue!==r.urdfJoint.angle&&(r.currentValue=r.urdfJoint.angle)})},v=()=>{const r=()=>{g(),c.value=requestAnimationFrame(r)};r()},y=()=>{c.value&&(cancelAnimationFrame(c.value),c.value=null)};return n.watch(()=>i.model,r=>{r?u.value=h(r):u.value=[]},{immediate:!0}),n.onMounted(()=>{v()}),n.onUnmounted(()=>{y()}),a({resetAllJoints:_}),(r,e)=>(n.openBlock(),n.createElementBlock("div",w,[u.value.length>0?(n.openBlock(),n.createElementBlock("div",B,[(n.openBlock(!0),n.createElementBlock(n.Fragment,null,n.renderList(u.value,s=>(n.openBlock(),n.createElementBlock("div",{key:s.name,class:"joint-item"},[n.createElementVNode("div",b,[n.createElementVNode("div",I,[n.createElementVNode("span",S,n.toDisplayString(s.name),1),n.createElementVNode("span",C," ["+n.toDisplayString(s.limit.lower.toFixed(2))+", "+n.toDisplayString(s.limit.upper.toFixed(2))+"] ",1)]),n.createElementVNode("span",D,n.toDisplayString(s.type),1)]),s.type==="revolute"||s.type==="prismatic"||s.type==="continuous"?(n.openBlock(),n.createElementBlock("div",P,[n.createElementVNode("div",T,[n.createElementVNode("input",{type:"range",min:s.limit.lower,max:s.limit.upper,step:"0.001",value:s.currentValue,onInput:l=>m(s.name,l.target.value),class:"joint-slider"},null,40,U)]),n.createElementVNode("div",A,[n.createElementVNode("span",R,n.toDisplayString(s.currentValue?Number(s.currentValue).toFixed(3):"0.000"),1),n.createElementVNode("span",q,n.toDisplayString(s.type==="prismatic"?"m":"rad"),1)])])):n.createCommentVNode("",!0)]))),128))])):(n.openBlock(),n.createElementBlock("div",O,e[0]||(e[0]=[n.createElementVNode("p",null,"未检测到可控制的关节",-1)])))]))}}),$=x._export_sfc(K,[["__scopeId","data-v-750b831d"]]),H={class:"panel-content"},z="id",G={__name:"urdfTree",props:{model:Object,maxExpandCount:{type:Number,default:10},expandStrategy:{type:String,default:"breadth",validator:o=>["breadth","firstLevel"].includes(o)}},emits:["nodeClick"],setup(o,{emit:a}){const i=o,u=a,c=n.ref([]),f={children:"children",label:"label"},h=e=>{u("nodeClick",e)},m=(e,s=0)=>{const l=[];return Array.isArray(e)&&(e==null?void 0:e.length)>0&&e.forEach(t=>{if(!(t!=null&&t.isMesh)&&((t==null?void 0:t.type)==="URDFJoint"||(t==null?void 0:t.type)==="URDFLink")){const d={name:t==null?void 0:t.name,label:t==null?void 0:t.name,show:!0,level:s+1,isPenultimate:!1,type:t==null?void 0:t.type,id:t==null?void 0:t.id,limit:(t==null?void 0:t.limit)??"",children:m(t==null?void 0:t.children,s+1),path:t==null?void 0:t.name};l.push(d)}}),l},_=e=>e?[{name:e==null?void 0:e.name,label:e==null?void 0:e.name,show:!0,level:1,isPenultimate:!1,type:e==null?void 0:e.type,id:e==null?void 0:e.id,limit:(e==null?void 0:e.limit)??"",children:m(e==null?void 0:e.children,1)||[],path:e==null?void 0:e.name}]:[],g=(e,s)=>{const l=[],t=[...e];for(;t.length>0&&l.length<s;){const d=t.shift();d.children&&d.children.length>0&&(l.push(d.id),t.push(...d.children))}return l},v=(e,s)=>{const l=[];return e.forEach(t=>{if(t.children&&t.children.length>0){l.push(t.id);const d=t.children.filter(p=>p.children&&p.children.length>0).slice(0,s).map(p=>p.id);l.push(...d)}}),l.slice(0,s+1)},y=n.computed(()=>!c.value||c.value.length===0?[]:i.expandStrategy==="firstLevel"?v(c.value,i.maxExpandCount):g(c.value,i.maxExpandCount)),r=n.computed(()=>[{name:"场景",label:"场景",show:!0,level:1,isPenultimate:!1,type:"场景",id:"场景",children:i!=null&&i.model?_(i.model):[],path:"场景"}]);return n.watch(r,e=>{c.value=JSON.parse(JSON.stringify(e))},{immediate:!0}),(e,s)=>{const l=n.resolveComponent("el-tree");return n.openBlock(),n.createElementBlock("div",H,[n.createVNode(l,{data:c.value,props:f,"default-expanded-keys":y.value,"node-key":z,onNodeClick:h},null,8,["data","default-expanded-keys"])])}}},Q=x._export_sfc(G,[["__scopeId","data-v-cfde50c3"]]);exports.JointPanel=$;exports.UrdfTree=Q;exports.getAllLinkName=N;exports.getMeshFromJoint=V;exports.getMeshFromLink=L;exports.getNonFixedJoints=M;exports.getTargetJoint=J;
@@ -1,5 +1,5 @@
1
1
  import { defineComponent as I, ref as F, watch as M, onMounted as C, onUnmounted as E, createElementBlock as m, openBlock as f, Fragment as P, renderList as T, createElementVNode as c, createCommentVNode as U, toDisplayString as h, computed as L, resolveComponent as S, createVNode as A } from "vue";
2
- import { av as V } from "./index.vue_vue_type_style_index_0_scoped_0f027c8c_lang-DOr6MjBQ.js";
2
+ import { av as V } from "./index.vue_vue_type_style_index_0_scoped_0f027c8c_lang-vD09aciY.js";
3
3
  import { _ as b } from "./_plugin-vue_export-helper-CHgC5LLL.js";
4
4
  const D = (i, a) => {
5
5
  if (!a)
@@ -1,11 +1,11 @@
1
1
  var ce = Object.defineProperty;
2
2
  var de = (b, l, t) => l in b ? ce(b, l, { enumerable: !0, configurable: !0, writable: !0, value: t }) : b[l] = t;
3
3
  var J = (b, l, t) => de(b, typeof l != "symbol" ? l + "" : l, t);
4
- import { U as me } from "./URDFLoader-0TOu26OY.js";
5
- import { S as ve, M as pe, O as fe } from "./MTLLoader-CCOYhxhM.js";
6
- import { c8 as be, c9 as re, b2 as O, aA as we, av as he, ca as E, ai as _e, cb as ge, bv as je, ah as ye } from "./index.vue_vue_type_style_index_0_scoped_0f027c8c_lang-DOr6MjBQ.js";
4
+ import { U as me } from "./URDFLoader-DoKVcie9.js";
5
+ import { S as ve, M as pe, O as fe } from "./MTLLoader-DN75tpBv.js";
6
+ import { c8 as be, c9 as re, b2 as O, aA as we, av as he, ca as E, ai as _e, cb as ge, bv as je, ah as ye } from "./index.vue_vue_type_style_index_0_scoped_0f027c8c_lang-vD09aciY.js";
7
7
  import { ref as V, defineComponent as Le, computed as M, watch as ue, resolveComponent as x, createElementBlock as k, openBlock as T, createVNode as U, createElementVNode as c, withCtx as F, createTextVNode as D, toDisplayString as C } from "vue";
8
- import { c as Re, e as Ue, g as $e } from "./iconfont-AGHhzEkv.js";
8
+ import { c as Re, e as Ue, g as $e } from "./iconfont-DkUJLtiB.js";
9
9
  import { _ as Ce } from "./_plugin-vue_export-helper-CHgC5LLL.js";
10
10
  const Se = "http://222.92.178.198:60000/chfs/shared/Insofrobot/urdf";
11
11
  function Me(b) {
@@ -1 +1 @@
1
- "use strict";var ee=Object.defineProperty;var te=(b,i,o)=>i in b?ee(b,i,{enumerable:!0,configurable:!0,writable:!0,value:o}):b[i]=o;var C=(b,i,o)=>te(b,typeof i!="symbol"?i+"":i,o);const oe=require("./URDFLoader-BYphR_jv.cjs"),S=require("./MTLLoader-Bd3WfwVV.cjs"),N=require("./index.vue_vue_type_style_index_0_scoped_0f027c8c_lang-8DE7CzzY.cjs"),e=require("vue"),D=require("./iconfont-CWRA1pRV.cjs"),se=require("./_plugin-vue_export-helper-BHFhmbuH.cjs"),le="http://222.92.178.198:60000/chfs/shared/Insofrobot/urdf";function re(b){const{mtlUrl:i,manager:o,resourcePath:l,onLoad:m,onProgress:r,onError:_}=b,p=new S.MTLLoader(o);return l&&p.setResourcePath(l),p.load(i,m,r,_),p}function ie(b){const{objUrl:i,manager:o,materials:l,onLoad:m,onProgress:r,onError:_}=b,p=new S.OBJLoader(o);return l&&p.setMaterials(l),p.load(i,m,r,_),p}function ne(b){const{manager:i,baseFolderUrl:o,onFileProgress:l}=b,m=new oe.URDFLoader(i);return m.packages=r=>`${o.endsWith("/")?o:o+"/"}${r}/`,m.loadMeshCb=(r,_,p)=>{const g=(()=>{const h=r.split("?")[0].split("#")[0],c=h.lastIndexOf(".");return c>=0?h.slice(c+1).toLowerCase():void 0})();switch(g){case"obj":{const h=(()=>{try{return new URL(".",r).toString()}catch{const a=r.lastIndexOf("/");return a>=0?r.slice(0,a+1):r}})(),c=(()=>{var d;return(((d=r.split("/").pop())==null?void 0:d.split("?")[0].split("#")[0])??"").replace(/\.[^/.?#]+$/,"")})(),f=`${h}${c}.mtl`,V=a=>{ie({objUrl:r,manager:_,materials:a,onLoad:d=>p(d),onProgress:d=>l==null?void 0:l(r,d==null?void 0:d.loaded,d==null?void 0:d.total),onError:d=>{console.error(`[URDF 资源加载失败,已跳过] 无法加载 OBJ 模型: ${r}`,d),p(new N.Group)}})};re({mtlUrl:f,manager:_,resourcePath:h,onLoad:a=>{try{a.preload()}catch{}V(a)},onProgress:a=>l==null?void 0:l(f,a==null?void 0:a.loaded,a==null?void 0:a.total),onError:a=>{console.warn(`[URDF 资源警告] 未找到或加载材质失败: ${f}。将尝试无材质加载。`),V(void 0)}});break}case"stl":{new S.STLLoader(_).load(r,c=>{const f=new N.MeshPhongMaterial({color:12303291,shininess:30}),V=new N.Mesh(c,f);V.castShadow=!0,V.receiveShadow=!0,p(V)},c=>l==null?void 0:l(r,c==null?void 0:c.loaded,c==null?void 0:c.total),c=>{console.error(`[URDF 资源加载失败,已跳过] 无法加载 STL 模型: ${r}`,c),p(new N.Group)});break}default:console.error(`[URDF 资源加载失败,已跳过] 不支持的网格格式: .${g} (路径: ${r})`),p(new N.Group)}},m}function ae(b,i,o,l){return{loadSceneFromFile:r=>new Promise((_,p)=>{o.value=!0,l.value="正在初始化 URDF 加载器...";let g=0,h=0,c=null;const f=new N.LoadingManager;f.onStart=(a,d,E)=>{g=E||0,h=d||0,l.value=g>0?`开始下载资源: 0 / ${g}`:"开始下载资源...",o.value=!0},f.onProgress=(a,d,E)=>{h=d,g=E;const R=`正在加载 ${d} / ${E} 个文件: ${N.getFilenameFromUrl(a)}`;l.value=R,d===E&&(l.value="资源加载完成,正在处理模型...",setTimeout(()=>{if(c){c.updateMatrixWorld(!0);const v=new N.Box3().setFromObject(c);v.isEmpty()&&console.warn("模型加载完成,但所有可视化网格均加载失败,模型将不可见。"),c.userData.boundingBox=v,c.traverse(u=>{u.isMesh&&(u.castShadow=!0,u.receiveShadow=!0)}),_(c)}else p(new Error("URDF 文件本身加载失败。"));l.value="模型加载完成",setTimeout(()=>{l.value==="模型加载完成"&&(o.value=!1,l.value="")},500)},100))},f.onError=a=>{console.warn(`LoadingManager 报告一个资源加载失败: ${a}。加载流程将继续。`)};const V=(a,d,E)=>{const R=N.getFilenameFromUrl(a);let v;E&&E>0?v=`${R}(${N.formatBytes(d)} / ${N.formatBytes(E)})`:d&&d>0?v=`${R}(已下载 ${N.formatBytes(d)})`:v=`${R}`,l.value=`正在下载第 ${h+1} / ${g} 个文件: ${v}`};try{const a=URL.createObjectURL(r);ne({manager:f,baseFolderUrl:le,onFileProgress:V}).load(a,E=>{c=E},void 0,E=>{console.error(`加载 URDF 文件 (${r.name}) 时发生致命错误:`,E),l.value="URDF 文件解析失败",o.value=!1,p(new Error(`加载 URDF 文件失败: ${r.name}`))})}catch(a){console.error("初始化 URDF 加载时发生致命错误:",a),l.value="模型加载失败",o.value=!1,p(a)}})}}function ce(b,i,o,l=["URDFVisual"]){let m=null;const r=e.ref(null),_=new N.Raycaster,p=new N.Vector2,g=new Map;function h(){o.value.forEach(v=>{v.traverse(u=>{l!=null&&l.includes(u.type)&&g.set(u.id,{obj:u,axis:u.axis||new N.Vector3(1,0,0),limits:u.limits})})})}function c(v){r.value&&r.value.obj.traverse(u=>{var t;u.material&&((t=u.material.emissive)==null||t.set(0))}),r.value=v,v.obj.traverse(u=>{var t;u.material&&((t=u.material.emissive)==null||t.set(65280))})}function f(v){const u=b.value.getBoundingClientRect();p.x=(v.clientX-u.left)/u.width*2-1,p.y=-((v.clientY-u.top)/u.height)*2+1,_.setFromCamera(p,m);const t=_.intersectObjects(o.value,!0);if(t.length===0)return;let s=t[0].object,w=null;for(;s;){if(g.has(s.id)){w=g.get(s.id);break}s=s.parent}w&&c(w)}function V(){b.value&&b.value.removeEventListener("click",f,!1)}function a(){const{scene:v,camera:u}=i();m=u,h(),b.value&&b.value.addEventListener("click",f,!1)}function d(v){r.value&&(r.value.obj.visible=v)}function E(v){var s;const{axis:u,value:t}=v;D.updateObjectPosition((s=r.value)==null?void 0:s.obj,u,t)}function R(v){var s;const{axis:u,value:t}=v;D.updateObjectRotation((s=r.value)==null?void 0:s.obj,u,t)}return{initRaycaster:a,dispose:V,selectedObject3D:r,setSelectedObjVisible:d,updatePosition:E,updateRotation:R}}class de{constructor(i){C(this,"robot");C(this,"movableJoints");this.robot=i,this.movableJoints=this.getMovableJoints()}getMovableJoints(){return Object.values(this.robot.joints).filter(i=>i.jointType!=="fixed")}getMovableJointNames(){return this.movableJoints.map(i=>i.name)}setJointAngle(i,o){const l=this.robot.joints[i];if(!l||l.jointType==="fixed")return console.warn(`关节 ${i} 不存在或不可动`),!1;if(l.limit){const m=Math.max(l.limit.lower,Math.min(l.limit.upper,o));m!==o&&console.warn(`关节 ${i} 角度被限制在 [${l.limit.lower}, ${l.limit.upper}]`),l.setJointValue(m)}else l.setJointValue(o);return!0}setJointAngles(i){Object.entries(i).forEach(([o,l])=>{typeof l=="number"&&!isNaN(l)&&this.setJointAngle(o,l)})}getCurrentJointStates(){const i={};return this.movableJoints.forEach(o=>{i[o.name]=o.angle||0}),i}resetToZero(){this.movableJoints.forEach(i=>{i.setJointValue(0)})}getJointLimits(i){const o=this.robot.joints[i];return!o||!o.limit?null:{lower:o.limit.lower,upper:o.limit.upper}}async animateToState(i,o=1e3,l){const m=this.getCurrentJointStates(),r=Date.now();return new Promise(_=>{const p=()=>{const g=Date.now()-r,h=Math.min(g/o,1),c=this.easeInOutCubic(h),f={};Object.keys(i).forEach(V=>{const a=m[V]||0,d=i[V];f[V]=a+(d-a)*c}),this.setJointAngles(f),l&&l(h),h<1?requestAnimationFrame(p):_()};p()})}easeInOutCubic(i){return i<.5?4*i*i*i:1-Math.pow(-2*i+2,3)/2}async playSequence(i,o=1e3,l){for(let m=0;m<i.length;m++)await this.animateToState(i[m],o,r=>{l&&l(m,r)})}}const ue={class:"panel-content"},me={class:"obj"},pe={key:0,class:"obj-base"},ve=["title"],fe=["title"],be={key:1},we={class:"obj-position"},_e={class:"coord-item"},he={class:"coord-item"},Ve={class:"coord-item"},Ee={class:"obj-rotation"},ge={class:"coord-item"},ye={class:"coord-item"},Ne={class:"coord-item"},Le={class:"world"},Re={class:"coord-line"},je={class:"coord-text"},Ce={class:"world-position-item"},De={class:"world-position-item"},Se={class:"world-position-item"},Ue={class:"coord-line"},Fe={class:"coord-text"},$e={class:"world-rotation-item"},Me={class:"world-rotation-item"},xe={class:"world-rotation-item"},Je=e.defineComponent({__name:"workpieceTreePanel",props:{model:{},maxExpandCount:{default:10},expandStrategy:{default:"breadth"}},emits:["nodeClick","visibleChange","updatePosition","updateRotation"],setup(b,{emit:i}){const o=b,l=i,m=e.ref([]),r=e.ref({}),_=(t,s=0)=>{const w=[];return Array.isArray(t)&&(t==null?void 0:t.length)>0&&t.forEach(n=>{if(!(n!=null&&n.isMesh)){const y={name:n==null?void 0:n.name,label:(n==null?void 0:n.name)||(n==null?void 0:n.type),show:!0,level:s+1,isPenultimate:!1,type:n==null?void 0:n.type,id:n==null?void 0:n.id,limit:(n==null?void 0:n.limit)??"",children:_(n==null?void 0:n.children,s+1),path:n==null?void 0:n.name};w.push(y)}}),w},p=t=>t?[{name:t==null?void 0:t.name,label:(t==null?void 0:t.name)||(t==null?void 0:t.type),show:!0,level:1,isPenultimate:!1,type:t==null?void 0:t.type,id:t==null?void 0:t.id,limit:(t==null?void 0:t.limit)??"",children:_(t==null?void 0:t.children,1),path:t==null?void 0:t.name}]:[],g=(t,s)=>{const w=[],n=[...t];for(;n.length>0&&w.length<s;){const y=n.shift();y.children&&y.children.length>0&&(w.push(y.id),n.push(...y.children))}return w},h=(t,s)=>{const w=[];return t.forEach(n=>{if(n.children&&n.children.length>0){w.push(n.id);const y=n.children.filter(j=>j.children&&j.children.length>0).slice(0,s).map(j=>j.id);w.push(...y)}}),w.slice(0,s+1)};e.computed(()=>!m.value||m.value.length===0?[]:o.expandStrategy==="firstLevel"?h(m.value,o.maxExpandCount):g(m.value,o.maxExpandCount));const c=t=>t?parseFloat(t.toFixed(3)):0,f=t=>t?parseFloat(t.toFixed(1)):0,V=(t,s)=>{l("updatePosition",{obj:o.model,axis:s,value:(t==null?void 0:t.toString())||"0"})},a=(t,s)=>{l("updateRotation",{obj:o.model,axis:s,value:(t==null?void 0:t.toString())||"0"})},d=t=>{l("visibleChange",t)},E=e.computed(()=>o!=null&&o.model?p(o.model):[]),R=e.computed(()=>{var t,s;return((t=o==null?void 0:o.model)==null?void 0:t.name)||((s=o==null?void 0:o.model)==null?void 0:s.type)}),v=e.computed(()=>{var t;return(t=o==null?void 0:o.model)==null?void 0:t.type}),u=e.computed(()=>{var t;return(t=o==null?void 0:o.model)==null?void 0:t.visible});return e.watch(()=>o.model,()=>{o.model&&(r.value=D.getObject3DData(o.model))},{deep:!0,immediate:!0}),e.watch(E,t=>{m.value=JSON.parse(JSON.stringify(t))},{immediate:!0}),(t,s)=>{var j,U,F,$,M,x,J,O,k,T,P,z,B,A,q,I,W,G,X,Y,Z,K,H,Q;const w=e.resolveComponent("el-divider"),n=e.resolveComponent("el-switch"),y=e.resolveComponent("el-input-number");return e.openBlock(),e.createElementBlock("div",ue,[e.createVNode(w,null,{default:e.withCtx(()=>s[6]||(s[6]=[e.createTextVNode("对象")])),_:1,__:[6]}),e.createElementVNode("div",me,[o.model?(e.openBlock(),e.createElementBlock("div",pe,[e.createElementVNode("div",{class:"obj-name",title:R.value},e.toDisplayString(R.value),9,ve),e.createElementVNode("div",{class:"obj-type",title:v.value},"["+e.toDisplayString(v.value)+"]",9,fe)])):(e.openBlock(),e.createElementBlock("div",be,"空")),e.createVNode(n,{"model-value":u.value,onChange:d},null,8,["model-value"])]),e.createVNode(w,null,{default:e.withCtx(()=>s[7]||(s[7]=[e.createTextVNode("相对位置")])),_:1,__:[7]}),e.createElementVNode("div",we,[e.createElementVNode("div",_e,[s[8]||(s[8]=e.createElementVNode("span",{class:"axis-label"},"X",-1)),e.createVNode(y,{"model-value":c((U=(j=r.value)==null?void 0:j.position)==null?void 0:U.x),onChange:s[0]||(s[0]=L=>V(L,"x")),size:"small",class:"coord-input-compact",precision:3,step:.1,controls:!0,"controls-position":"right"},null,8,["model-value"])]),e.createElementVNode("div",he,[s[9]||(s[9]=e.createElementVNode("span",{class:"axis-label"},"Y",-1)),e.createVNode(y,{"model-value":c(($=(F=r.value)==null?void 0:F.position)==null?void 0:$.y),onChange:s[1]||(s[1]=L=>V(L,"y")),size:"small",class:"coord-input-compact",precision:3,step:.1,controls:!0,"controls-position":"right"},null,8,["model-value"])]),e.createElementVNode("div",Ve,[s[10]||(s[10]=e.createElementVNode("span",{class:"axis-label"},"Z",-1)),e.createVNode(y,{"model-value":c((x=(M=r.value)==null?void 0:M.position)==null?void 0:x.z),onChange:s[2]||(s[2]=L=>V(L,"z")),size:"small",class:"coord-input-compact",precision:3,step:.1,controls:!0,"controls-position":"right"},null,8,["model-value"])])]),e.createVNode(w,null,{default:e.withCtx(()=>s[11]||(s[11]=[e.createTextVNode("相对旋转")])),_:1,__:[11]}),e.createElementVNode("div",Ee,[e.createElementVNode("div",ge,[s[12]||(s[12]=e.createElementVNode("span",{class:"axis-label"},"X°",-1)),e.createVNode(y,{"model-value":f((O=(J=r.value)==null?void 0:J.rotation)==null?void 0:O.x),onChange:s[3]||(s[3]=L=>a(L,"x")),size:"small",class:"coord-input-compact",precision:3,step:.1,controls:!0,"controls-position":"right"},null,8,["model-value"])]),e.createElementVNode("div",ye,[s[13]||(s[13]=e.createElementVNode("span",{class:"axis-label"},"Y°",-1)),e.createVNode(y,{"model-value":f((T=(k=r.value)==null?void 0:k.rotation)==null?void 0:T.y),onChange:s[4]||(s[4]=L=>a(L,"y")),size:"small",class:"coord-input-compact",precision:3,step:.1,controls:!0,"controls-position":"right"},null,8,["model-value"])]),e.createElementVNode("div",Ne,[s[14]||(s[14]=e.createElementVNode("span",{class:"axis-label"},"Z°",-1)),e.createVNode(y,{"model-value":f((z=(P=r.value)==null?void 0:P.rotation)==null?void 0:z.z),onChange:s[5]||(s[5]=L=>a(L,"z")),size:"small",class:"coord-input-compact",precision:3,step:.1,controls:!0,"controls-position":"right"},null,8,["model-value"])])]),e.createVNode(w,null,{default:e.withCtx(()=>s[15]||(s[15]=[e.createTextVNode("世界信息")])),_:1,__:[15]}),e.createElementVNode("div",Le,[e.createElementVNode("div",Re,[s[16]||(s[16]=e.createElementVNode("span",{class:"coord-label"},"世界位置:",-1)),e.createElementVNode("span",je,[e.createElementVNode("div",Ce,e.toDisplayString(c((A=(B=r.value)==null?void 0:B.worldPosition)==null?void 0:A.x))+", ",1),e.createElementVNode("div",De,e.toDisplayString(c((I=(q=r.value)==null?void 0:q.worldPosition)==null?void 0:I.y))+", ",1),e.createElementVNode("div",Se,e.toDisplayString(c((G=(W=r.value)==null?void 0:W.worldPosition)==null?void 0:G.z)),1)])]),e.createElementVNode("div",Ue,[s[17]||(s[17]=e.createElementVNode("span",{class:"coord-label"},"世界旋转:",-1)),e.createElementVNode("span",Fe,[e.createElementVNode("div",$e,e.toDisplayString(f((Y=(X=r.value)==null?void 0:X.worldRotation)==null?void 0:Y.x))+"°, ",1),e.createElementVNode("div",Me,e.toDisplayString(f((K=(Z=r.value)==null?void 0:Z.worldRotation)==null?void 0:K.y))+"°, ",1),e.createElementVNode("div",xe,e.toDisplayString(f((Q=(H=r.value)==null?void 0:H.worldRotation)==null?void 0:Q.z))+"° ",1)])])])])}}}),Oe=se._export_sfc(Je,[["__scopeId","data-v-00d48931"]]);exports.URDFRobotController=de;exports.WorkpieceTreePanel=Oe;exports.useRaycaster=ce;exports.useUrdfLoader=ae;
1
+ "use strict";var ee=Object.defineProperty;var te=(b,i,o)=>i in b?ee(b,i,{enumerable:!0,configurable:!0,writable:!0,value:o}):b[i]=o;var C=(b,i,o)=>te(b,typeof i!="symbol"?i+"":i,o);const oe=require("./URDFLoader-BTd7mTm1.cjs"),S=require("./MTLLoader-C5ohCvgq.cjs"),N=require("./index.vue_vue_type_style_index_0_scoped_0f027c8c_lang-BRn8KHun.cjs"),e=require("vue"),D=require("./iconfont-B98kkYId.cjs"),se=require("./_plugin-vue_export-helper-BHFhmbuH.cjs"),le="http://222.92.178.198:60000/chfs/shared/Insofrobot/urdf";function re(b){const{mtlUrl:i,manager:o,resourcePath:l,onLoad:m,onProgress:r,onError:_}=b,p=new S.MTLLoader(o);return l&&p.setResourcePath(l),p.load(i,m,r,_),p}function ie(b){const{objUrl:i,manager:o,materials:l,onLoad:m,onProgress:r,onError:_}=b,p=new S.OBJLoader(o);return l&&p.setMaterials(l),p.load(i,m,r,_),p}function ne(b){const{manager:i,baseFolderUrl:o,onFileProgress:l}=b,m=new oe.URDFLoader(i);return m.packages=r=>`${o.endsWith("/")?o:o+"/"}${r}/`,m.loadMeshCb=(r,_,p)=>{const g=(()=>{const h=r.split("?")[0].split("#")[0],c=h.lastIndexOf(".");return c>=0?h.slice(c+1).toLowerCase():void 0})();switch(g){case"obj":{const h=(()=>{try{return new URL(".",r).toString()}catch{const a=r.lastIndexOf("/");return a>=0?r.slice(0,a+1):r}})(),c=(()=>{var d;return(((d=r.split("/").pop())==null?void 0:d.split("?")[0].split("#")[0])??"").replace(/\.[^/.?#]+$/,"")})(),f=`${h}${c}.mtl`,V=a=>{ie({objUrl:r,manager:_,materials:a,onLoad:d=>p(d),onProgress:d=>l==null?void 0:l(r,d==null?void 0:d.loaded,d==null?void 0:d.total),onError:d=>{console.error(`[URDF 资源加载失败,已跳过] 无法加载 OBJ 模型: ${r}`,d),p(new N.Group)}})};re({mtlUrl:f,manager:_,resourcePath:h,onLoad:a=>{try{a.preload()}catch{}V(a)},onProgress:a=>l==null?void 0:l(f,a==null?void 0:a.loaded,a==null?void 0:a.total),onError:a=>{console.warn(`[URDF 资源警告] 未找到或加载材质失败: ${f}。将尝试无材质加载。`),V(void 0)}});break}case"stl":{new S.STLLoader(_).load(r,c=>{const f=new N.MeshPhongMaterial({color:12303291,shininess:30}),V=new N.Mesh(c,f);V.castShadow=!0,V.receiveShadow=!0,p(V)},c=>l==null?void 0:l(r,c==null?void 0:c.loaded,c==null?void 0:c.total),c=>{console.error(`[URDF 资源加载失败,已跳过] 无法加载 STL 模型: ${r}`,c),p(new N.Group)});break}default:console.error(`[URDF 资源加载失败,已跳过] 不支持的网格格式: .${g} (路径: ${r})`),p(new N.Group)}},m}function ae(b,i,o,l){return{loadSceneFromFile:r=>new Promise((_,p)=>{o.value=!0,l.value="正在初始化 URDF 加载器...";let g=0,h=0,c=null;const f=new N.LoadingManager;f.onStart=(a,d,E)=>{g=E||0,h=d||0,l.value=g>0?`开始下载资源: 0 / ${g}`:"开始下载资源...",o.value=!0},f.onProgress=(a,d,E)=>{h=d,g=E;const R=`正在加载 ${d} / ${E} 个文件: ${N.getFilenameFromUrl(a)}`;l.value=R,d===E&&(l.value="资源加载完成,正在处理模型...",setTimeout(()=>{if(c){c.updateMatrixWorld(!0);const v=new N.Box3().setFromObject(c);v.isEmpty()&&console.warn("模型加载完成,但所有可视化网格均加载失败,模型将不可见。"),c.userData.boundingBox=v,c.traverse(u=>{u.isMesh&&(u.castShadow=!0,u.receiveShadow=!0)}),_(c)}else p(new Error("URDF 文件本身加载失败。"));l.value="模型加载完成",setTimeout(()=>{l.value==="模型加载完成"&&(o.value=!1,l.value="")},500)},100))},f.onError=a=>{console.warn(`LoadingManager 报告一个资源加载失败: ${a}。加载流程将继续。`)};const V=(a,d,E)=>{const R=N.getFilenameFromUrl(a);let v;E&&E>0?v=`${R}(${N.formatBytes(d)} / ${N.formatBytes(E)})`:d&&d>0?v=`${R}(已下载 ${N.formatBytes(d)})`:v=`${R}`,l.value=`正在下载第 ${h+1} / ${g} 个文件: ${v}`};try{const a=URL.createObjectURL(r);ne({manager:f,baseFolderUrl:le,onFileProgress:V}).load(a,E=>{c=E},void 0,E=>{console.error(`加载 URDF 文件 (${r.name}) 时发生致命错误:`,E),l.value="URDF 文件解析失败",o.value=!1,p(new Error(`加载 URDF 文件失败: ${r.name}`))})}catch(a){console.error("初始化 URDF 加载时发生致命错误:",a),l.value="模型加载失败",o.value=!1,p(a)}})}}function ce(b,i,o,l=["URDFVisual"]){let m=null;const r=e.ref(null),_=new N.Raycaster,p=new N.Vector2,g=new Map;function h(){o.value.forEach(v=>{v.traverse(u=>{l!=null&&l.includes(u.type)&&g.set(u.id,{obj:u,axis:u.axis||new N.Vector3(1,0,0),limits:u.limits})})})}function c(v){r.value&&r.value.obj.traverse(u=>{var t;u.material&&((t=u.material.emissive)==null||t.set(0))}),r.value=v,v.obj.traverse(u=>{var t;u.material&&((t=u.material.emissive)==null||t.set(65280))})}function f(v){const u=b.value.getBoundingClientRect();p.x=(v.clientX-u.left)/u.width*2-1,p.y=-((v.clientY-u.top)/u.height)*2+1,_.setFromCamera(p,m);const t=_.intersectObjects(o.value,!0);if(t.length===0)return;let s=t[0].object,w=null;for(;s;){if(g.has(s.id)){w=g.get(s.id);break}s=s.parent}w&&c(w)}function V(){b.value&&b.value.removeEventListener("click",f,!1)}function a(){const{scene:v,camera:u}=i();m=u,h(),b.value&&b.value.addEventListener("click",f,!1)}function d(v){r.value&&(r.value.obj.visible=v)}function E(v){var s;const{axis:u,value:t}=v;D.updateObjectPosition((s=r.value)==null?void 0:s.obj,u,t)}function R(v){var s;const{axis:u,value:t}=v;D.updateObjectRotation((s=r.value)==null?void 0:s.obj,u,t)}return{initRaycaster:a,dispose:V,selectedObject3D:r,setSelectedObjVisible:d,updatePosition:E,updateRotation:R}}class de{constructor(i){C(this,"robot");C(this,"movableJoints");this.robot=i,this.movableJoints=this.getMovableJoints()}getMovableJoints(){return Object.values(this.robot.joints).filter(i=>i.jointType!=="fixed")}getMovableJointNames(){return this.movableJoints.map(i=>i.name)}setJointAngle(i,o){const l=this.robot.joints[i];if(!l||l.jointType==="fixed")return console.warn(`关节 ${i} 不存在或不可动`),!1;if(l.limit){const m=Math.max(l.limit.lower,Math.min(l.limit.upper,o));m!==o&&console.warn(`关节 ${i} 角度被限制在 [${l.limit.lower}, ${l.limit.upper}]`),l.setJointValue(m)}else l.setJointValue(o);return!0}setJointAngles(i){Object.entries(i).forEach(([o,l])=>{typeof l=="number"&&!isNaN(l)&&this.setJointAngle(o,l)})}getCurrentJointStates(){const i={};return this.movableJoints.forEach(o=>{i[o.name]=o.angle||0}),i}resetToZero(){this.movableJoints.forEach(i=>{i.setJointValue(0)})}getJointLimits(i){const o=this.robot.joints[i];return!o||!o.limit?null:{lower:o.limit.lower,upper:o.limit.upper}}async animateToState(i,o=1e3,l){const m=this.getCurrentJointStates(),r=Date.now();return new Promise(_=>{const p=()=>{const g=Date.now()-r,h=Math.min(g/o,1),c=this.easeInOutCubic(h),f={};Object.keys(i).forEach(V=>{const a=m[V]||0,d=i[V];f[V]=a+(d-a)*c}),this.setJointAngles(f),l&&l(h),h<1?requestAnimationFrame(p):_()};p()})}easeInOutCubic(i){return i<.5?4*i*i*i:1-Math.pow(-2*i+2,3)/2}async playSequence(i,o=1e3,l){for(let m=0;m<i.length;m++)await this.animateToState(i[m],o,r=>{l&&l(m,r)})}}const ue={class:"panel-content"},me={class:"obj"},pe={key:0,class:"obj-base"},ve=["title"],fe=["title"],be={key:1},we={class:"obj-position"},_e={class:"coord-item"},he={class:"coord-item"},Ve={class:"coord-item"},Ee={class:"obj-rotation"},ge={class:"coord-item"},ye={class:"coord-item"},Ne={class:"coord-item"},Le={class:"world"},Re={class:"coord-line"},je={class:"coord-text"},Ce={class:"world-position-item"},De={class:"world-position-item"},Se={class:"world-position-item"},Ue={class:"coord-line"},Fe={class:"coord-text"},$e={class:"world-rotation-item"},Me={class:"world-rotation-item"},xe={class:"world-rotation-item"},Je=e.defineComponent({__name:"workpieceTreePanel",props:{model:{},maxExpandCount:{default:10},expandStrategy:{default:"breadth"}},emits:["nodeClick","visibleChange","updatePosition","updateRotation"],setup(b,{emit:i}){const o=b,l=i,m=e.ref([]),r=e.ref({}),_=(t,s=0)=>{const w=[];return Array.isArray(t)&&(t==null?void 0:t.length)>0&&t.forEach(n=>{if(!(n!=null&&n.isMesh)){const y={name:n==null?void 0:n.name,label:(n==null?void 0:n.name)||(n==null?void 0:n.type),show:!0,level:s+1,isPenultimate:!1,type:n==null?void 0:n.type,id:n==null?void 0:n.id,limit:(n==null?void 0:n.limit)??"",children:_(n==null?void 0:n.children,s+1),path:n==null?void 0:n.name};w.push(y)}}),w},p=t=>t?[{name:t==null?void 0:t.name,label:(t==null?void 0:t.name)||(t==null?void 0:t.type),show:!0,level:1,isPenultimate:!1,type:t==null?void 0:t.type,id:t==null?void 0:t.id,limit:(t==null?void 0:t.limit)??"",children:_(t==null?void 0:t.children,1),path:t==null?void 0:t.name}]:[],g=(t,s)=>{const w=[],n=[...t];for(;n.length>0&&w.length<s;){const y=n.shift();y.children&&y.children.length>0&&(w.push(y.id),n.push(...y.children))}return w},h=(t,s)=>{const w=[];return t.forEach(n=>{if(n.children&&n.children.length>0){w.push(n.id);const y=n.children.filter(j=>j.children&&j.children.length>0).slice(0,s).map(j=>j.id);w.push(...y)}}),w.slice(0,s+1)};e.computed(()=>!m.value||m.value.length===0?[]:o.expandStrategy==="firstLevel"?h(m.value,o.maxExpandCount):g(m.value,o.maxExpandCount));const c=t=>t?parseFloat(t.toFixed(3)):0,f=t=>t?parseFloat(t.toFixed(1)):0,V=(t,s)=>{l("updatePosition",{obj:o.model,axis:s,value:(t==null?void 0:t.toString())||"0"})},a=(t,s)=>{l("updateRotation",{obj:o.model,axis:s,value:(t==null?void 0:t.toString())||"0"})},d=t=>{l("visibleChange",t)},E=e.computed(()=>o!=null&&o.model?p(o.model):[]),R=e.computed(()=>{var t,s;return((t=o==null?void 0:o.model)==null?void 0:t.name)||((s=o==null?void 0:o.model)==null?void 0:s.type)}),v=e.computed(()=>{var t;return(t=o==null?void 0:o.model)==null?void 0:t.type}),u=e.computed(()=>{var t;return(t=o==null?void 0:o.model)==null?void 0:t.visible});return e.watch(()=>o.model,()=>{o.model&&(r.value=D.getObject3DData(o.model))},{deep:!0,immediate:!0}),e.watch(E,t=>{m.value=JSON.parse(JSON.stringify(t))},{immediate:!0}),(t,s)=>{var j,U,F,$,M,x,J,O,k,T,P,z,B,A,q,I,W,G,X,Y,Z,K,H,Q;const w=e.resolveComponent("el-divider"),n=e.resolveComponent("el-switch"),y=e.resolveComponent("el-input-number");return e.openBlock(),e.createElementBlock("div",ue,[e.createVNode(w,null,{default:e.withCtx(()=>s[6]||(s[6]=[e.createTextVNode("对象")])),_:1,__:[6]}),e.createElementVNode("div",me,[o.model?(e.openBlock(),e.createElementBlock("div",pe,[e.createElementVNode("div",{class:"obj-name",title:R.value},e.toDisplayString(R.value),9,ve),e.createElementVNode("div",{class:"obj-type",title:v.value},"["+e.toDisplayString(v.value)+"]",9,fe)])):(e.openBlock(),e.createElementBlock("div",be,"空")),e.createVNode(n,{"model-value":u.value,onChange:d},null,8,["model-value"])]),e.createVNode(w,null,{default:e.withCtx(()=>s[7]||(s[7]=[e.createTextVNode("相对位置")])),_:1,__:[7]}),e.createElementVNode("div",we,[e.createElementVNode("div",_e,[s[8]||(s[8]=e.createElementVNode("span",{class:"axis-label"},"X",-1)),e.createVNode(y,{"model-value":c((U=(j=r.value)==null?void 0:j.position)==null?void 0:U.x),onChange:s[0]||(s[0]=L=>V(L,"x")),size:"small",class:"coord-input-compact",precision:3,step:.1,controls:!0,"controls-position":"right"},null,8,["model-value"])]),e.createElementVNode("div",he,[s[9]||(s[9]=e.createElementVNode("span",{class:"axis-label"},"Y",-1)),e.createVNode(y,{"model-value":c(($=(F=r.value)==null?void 0:F.position)==null?void 0:$.y),onChange:s[1]||(s[1]=L=>V(L,"y")),size:"small",class:"coord-input-compact",precision:3,step:.1,controls:!0,"controls-position":"right"},null,8,["model-value"])]),e.createElementVNode("div",Ve,[s[10]||(s[10]=e.createElementVNode("span",{class:"axis-label"},"Z",-1)),e.createVNode(y,{"model-value":c((x=(M=r.value)==null?void 0:M.position)==null?void 0:x.z),onChange:s[2]||(s[2]=L=>V(L,"z")),size:"small",class:"coord-input-compact",precision:3,step:.1,controls:!0,"controls-position":"right"},null,8,["model-value"])])]),e.createVNode(w,null,{default:e.withCtx(()=>s[11]||(s[11]=[e.createTextVNode("相对旋转")])),_:1,__:[11]}),e.createElementVNode("div",Ee,[e.createElementVNode("div",ge,[s[12]||(s[12]=e.createElementVNode("span",{class:"axis-label"},"X°",-1)),e.createVNode(y,{"model-value":f((O=(J=r.value)==null?void 0:J.rotation)==null?void 0:O.x),onChange:s[3]||(s[3]=L=>a(L,"x")),size:"small",class:"coord-input-compact",precision:3,step:.1,controls:!0,"controls-position":"right"},null,8,["model-value"])]),e.createElementVNode("div",ye,[s[13]||(s[13]=e.createElementVNode("span",{class:"axis-label"},"Y°",-1)),e.createVNode(y,{"model-value":f((T=(k=r.value)==null?void 0:k.rotation)==null?void 0:T.y),onChange:s[4]||(s[4]=L=>a(L,"y")),size:"small",class:"coord-input-compact",precision:3,step:.1,controls:!0,"controls-position":"right"},null,8,["model-value"])]),e.createElementVNode("div",Ne,[s[14]||(s[14]=e.createElementVNode("span",{class:"axis-label"},"Z°",-1)),e.createVNode(y,{"model-value":f((z=(P=r.value)==null?void 0:P.rotation)==null?void 0:z.z),onChange:s[5]||(s[5]=L=>a(L,"z")),size:"small",class:"coord-input-compact",precision:3,step:.1,controls:!0,"controls-position":"right"},null,8,["model-value"])])]),e.createVNode(w,null,{default:e.withCtx(()=>s[15]||(s[15]=[e.createTextVNode("世界信息")])),_:1,__:[15]}),e.createElementVNode("div",Le,[e.createElementVNode("div",Re,[s[16]||(s[16]=e.createElementVNode("span",{class:"coord-label"},"世界位置:",-1)),e.createElementVNode("span",je,[e.createElementVNode("div",Ce,e.toDisplayString(c((A=(B=r.value)==null?void 0:B.worldPosition)==null?void 0:A.x))+", ",1),e.createElementVNode("div",De,e.toDisplayString(c((I=(q=r.value)==null?void 0:q.worldPosition)==null?void 0:I.y))+", ",1),e.createElementVNode("div",Se,e.toDisplayString(c((G=(W=r.value)==null?void 0:W.worldPosition)==null?void 0:G.z)),1)])]),e.createElementVNode("div",Ue,[s[17]||(s[17]=e.createElementVNode("span",{class:"coord-label"},"世界旋转:",-1)),e.createElementVNode("span",Fe,[e.createElementVNode("div",$e,e.toDisplayString(f((Y=(X=r.value)==null?void 0:X.worldRotation)==null?void 0:Y.x))+"°, ",1),e.createElementVNode("div",Me,e.toDisplayString(f((K=(Z=r.value)==null?void 0:Z.worldRotation)==null?void 0:K.y))+"°, ",1),e.createElementVNode("div",xe,e.toDisplayString(f((Q=(H=r.value)==null?void 0:H.worldRotation)==null?void 0:Q.z))+"° ",1)])])])])}}}),Oe=se._export_sfc(Je,[["__scopeId","data-v-00d48931"]]);exports.URDFRobotController=de;exports.WorkpieceTreePanel=Oe;exports.useRaycaster=ce;exports.useUrdfLoader=ae;
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "ss-component-new",
3
3
  "private": false,
4
- "version": "1.2.236",
4
+ "version": "1.2.237",
5
5
  "type": "module",
6
6
  "files": [
7
7
  "dist",
@@ -0,0 +1 @@
1
+ <?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg t="1767064519111" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="3377" xmlns:xlink="http://www.w3.org/1999/xlink" width="200" height="200"><path d="M452.826474 305.07997h118.337322c49.013681 0 88.757857-39.73931 88.757856-88.748126s-39.744176-88.752991-88.757856-88.752992h-118.337322c-49.008816 0-88.748126 39.744176-88.748126 88.752992s39.73931 88.748126 88.748126 88.748126z m0-118.333673h118.337322c16.32046 0.051085 29.539327 13.265087 29.586763 29.585547-0.047436 16.32046-13.266303 29.538111-29.586763 29.585547h-118.337322c-16.32046-0.047436-29.534462-13.265087-29.586763-29.585547 0.052301-16.32046 13.266303-29.534462 29.586763-29.585547zM571.163796 423.418508h-118.337322c-49.008816 0-88.748126 39.738094-88.748126 88.751776 0 49.008816 39.73931 88.743261 88.748126 88.743261h118.337322c49.013681 0 88.757857-39.734445 88.757856-88.743261 0-49.013681-39.744176-88.751775-88.757856-88.751776z m0 118.333673h-118.337322c-16.32046-0.047436-29.534462-13.266303-29.586763-29.581897 0.052301-16.32046 13.266303-29.538111 29.586763-29.585547h118.337322c16.32046 0.047436 29.539327 13.265087 29.586763 29.585547-0.047436 16.315595-13.266303 29.534462-29.586763 29.581897zM571.163796 719.252083h-118.337322c-49.008816 0-88.748126 39.744176-88.748126 88.752991 0 49.008816 39.73931 88.752991 88.748126 88.752992h118.337322c49.013681 0 88.757857-39.744176 88.757856-88.752992 0-49.008816-39.744176-88.752991-88.757856-88.752991z m0 118.338538h-118.337322c-16.32046-0.047436-29.534462-13.265087-29.586763-29.585547 0.052301-16.315595 13.269952-29.533245 29.586763-29.580681h118.337322c16.32046 0.047436 29.539327 13.265087 29.586763 29.580681-0.047436 16.32046-13.266303 29.538111-29.586763 29.585547zM245.744674 778.424393c-31.658141 0-61.33856-12.329744-83.725978-34.617425-22.288898-22.38377-34.607695-52.069054-34.607695-83.721114 0-31.658141 12.318797-61.33856 34.607695-83.721113 22.387419-22.388635 52.067838-34.61256 83.725978-34.61256h59.166229v-59.167444H245.744674C147.722177 482.584737 68.243557 562.058492 68.243557 660.076124c0 98.022497 79.473755 177.509632 177.501117 177.509632v59.167445l88.751776-88.752992-88.751776-88.752991v59.177175zM778.25046 186.741432h-59.161363v59.166228h59.161363c31.653275 0 61.33856 12.329744 83.721113 34.607695 22.38377 22.388635 34.61256 52.069054 34.61256 83.725978 0 31.653275-12.323662 61.333694-34.61256 83.721113-22.382554 22.287681-52.067838 34.607695-83.721113 34.607695v-59.161363l-88.748126 88.761506 88.748126 88.743261v-59.161364c98.017632 0 177.505983-79.483486 177.505983-177.505983 0-98.017632-79.483486-177.499901-177.505983-177.499901v-0.004865z" p-id="3378"></path></svg>
@@ -0,0 +1 @@
1
+ <?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg t="1767064960811" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="2916" xmlns:xlink="http://www.w3.org/1999/xlink" width="200" height="200"><path d="M792.746667 656.213333c42.24-31.573333 67.413333-79.786667 67.413333-132.693333 3.413333-59.306667-28.16-113.92-78.08-145.493333-49.92-29.866667-113.92-29.866667-163.84 0s-81.493333 85.76-78.08 145.493333c0 53.333333 24.746667 101.546667 67.413333 132.693333-84.053333 42.24-140.373333 126.293333-146.773333 221.866667 0 15.786667 7.68 26.453333 21.76 26.453333h433.92c14.08 0 21.76-12.373333 21.76-26.453333-5.973333-95.573333-60.586667-178.346667-145.493333-221.866667z" fill="#4C4C4C" p-id="2917"></path><path d="M392.533333 878.08v-4.266667c5.973333-89.173333 46.933333-171.946667 112.213334-229.546666-21.333333-34.986667-32.853333-75.52-33.28-118.186667-3.84-82.773333 39.68-163.413333 111.36-206.08 34.986667-20.906667 75.52-32 116.906666-32s81.92 11.093333 116.906667 32l1.28 0.853333c19.626667 12.373333 37.12 27.306667 52.053333 43.946667V170.666667c0-28.16-23.04-51.2-51.2-51.2H136.533333c-28.16 0-51.2 23.04-51.2 51.2v682.666666c0 28.16 23.04 51.2 51.2 51.2h259.413334c-2.133333-8.533333-3.413333-17.066667-3.413334-26.453333zM293.12 256h170.666667c18.773333 0 34.133333 15.36 34.133333 34.133333s-15.36 34.133333-34.133333 34.133334h-170.666667c-18.773333 0-34.133333-15.36-34.133333-34.133334s15.36-34.133333 34.133333-34.133333z m-102.4 0c18.773333 0 34.133333 15.36 34.133333 34.133333s-15.36 34.133333-34.133333 34.133334-34.133333-15.36-34.133333-34.133334 15.36-34.133333 34.133333-34.133333z m0 204.8h221.866667c18.773333 0 34.133333 15.36 34.133333 34.133333s-15.36 34.133333-34.133333 34.133334h-221.866667c-18.773333 0-34.133333-15.36-34.133333-34.133334s15.36-34.133333 34.133333-34.133333z m153.6 204.8h-153.6c-18.773333 0-34.133333-15.36-34.133333-34.133333s15.36-34.133333 34.133333-34.133334h153.6c18.773333 0 34.133333 15.36 34.133333 34.133334s-15.36 34.133333-34.133333 34.133333z" fill="#4C4C4C" p-id="2918"></path></svg>
@@ -0,0 +1 @@
1
+ <?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg t="1767062169470" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="4261" xmlns:xlink="http://www.w3.org/1999/xlink" width="200" height="200"><path d="M122.34752 983.04h779.4688c44.93312 0 81.42848-36.16768 81.22368-80.4864V347.3408c0-44.35968-36.4544-80.4864-81.38752-80.4864h-108.3392c-21.54496 0-41.86112 8.31488-57.22112 23.26528l-60.78464 59.392a35.6352 35.6352 0 0 1-24.9856 10.15808H373.67808a35.6352 35.6352 0 0 1-25.02656-10.15808l-60.78464-59.392a81.1008 81.1008 0 0 0-57.22112-23.26528H122.34752C77.45536 266.8544 40.96 302.98112 40.96 347.3408v555.2128C40.96 946.87232 77.4144 983.04 122.34752 983.04z m447.6928-280.20736q0 1.31072 1.39264 2.6624c94.12608 15.89248 125.00992 80.85504 125.00992 108.70784 0 45.056-122.18368 50.3808-175.55456 50.3808-53.37088 0-175.59552-5.3248-175.59552-50.3808 0-29.20448 30.9248-94.12608 125.00992-108.70784q1.4336 0 1.4336-1.35168c-25.31328-18.55488-53.41184-53.00224-53.41184-113.99168 0-54.35392 43.58144-95.4368 102.56384-95.4368s102.52288 41.08288 103.91552 94.08512c0 49.07008-19.6608 88.84224-54.76352 114.03264z" p-id="4262"></path><path d="M321.90464 197.50912m34.69312 0l328.58112 0q34.69312 0 34.69312 34.69312l0-0.04096q0 34.69312-34.69312 34.69312l-328.58112 0q-34.69312 0-34.69312-34.69312l0 0.04096q0-34.69312 34.69312-34.69312Z" p-id="4263"></path><path d="M40.96 81.92m34.69312 0l867.04128 0q34.69312 0 34.69312 34.69312l0-0.04096q0 34.69312-34.69312 34.69312l-867.04128 0q-34.69312 0-34.69312-34.69312l0 0.04096q0-34.69312 34.69312-34.69312Z" p-id="4264"></path></svg>
@@ -0,0 +1 @@
1
+ <?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg t="1767065199285" class="icon" viewBox="0 0 1075 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="3066" xmlns:xlink="http://www.w3.org/1999/xlink" width="209.9609375" height="200"><path d="M0 579.68128V154.58304c0-41.00096 16.49664-80.31744 45.85472-109.312C75.21792 16.29696 115.0464 0 156.5696 0h752.71168c41.5232 0 81.34656 16.28672 110.70976 45.27616 29.35808 28.98944 45.85472 68.30592 45.85472 109.30688v425.87136c0 40.99072-16.49664 80.31232-45.85472 109.30176-29.3632 28.98944-69.19168 45.27104-110.70976 45.27104l-752.71168-0.768c-41.5232 0-81.35168-16.28672-110.71488-45.27616C16.49664 659.9936 0 620.67712 0 579.68128z m220.37504 209.3568c56.45824-0.00512 102.4768 44.73344 103.33184 100.48V1024H0v-134.48192c0.64-55.68 46.5408-100.48 102.94272-100.48h117.43232z m373.41696 0v-1.15712c56.91904 0 103.1168 45.44 103.33696 101.632V1024H373.41696v-134.48192c0.64512-55.68 46.54592-100.48 102.94784-100.48h117.4272z m373.41696 0v-1.15712c56.91904 0 103.1168 45.44 103.33696 101.632V1024h-323.712v-134.48192c0.64512-55.68 46.54592-100.48 102.94784-100.48h117.4272zM877.184 350.0544c14.3872-1.67424 25.23136-13.71136 25.23136-28.01664 0-14.30528-10.84416-26.34752-25.23136-28.02176H677.3248c-14.3872 1.67424-25.23136 20.352-25.23136 28.02176 0 7.66976 10.84416 26.3424 25.23136 28.01664h199.85408z m0-154.23488c14.3872-1.66912 25.23136-13.71136 25.23136-28.01664 0-14.30016-10.84416-26.3424-25.23136-28.01664h-278.30784a28.68736 28.68736 0 0 0-27.50464 12.96896 27.89376 27.89376 0 0 0 0 30.10048 28.6976 28.6976 0 0 0 27.50464 12.96384h278.30784z m-423.86432 437.7088c31.19104-0.64 56.01792-26.0096 55.58272-56.81152l220.32384-143.98976a14.92992 14.92992 0 0 0-0.77824-20.48 15.40608 15.40608 0 0 0-20.75648-0.768L508.9024 532.2752l-0.0512-111.52384c-0.45056-40.7552-29.62944-75.6736-70.0672-83.8656l-30.53056-6.17984-63.4112 124.43648-63.4112-124.43648-30.52544 6.18496c-40.9088 7.7056-70.6816 42.752-71.23968 83.86048l0.0512 155.96544c-0.22528 30.43328 24.36608 55.3984 55.18848 56.03328l218.41408 0.77312zM280.25856 271.18592c27.01312 80.384 102.16448 80.384 128.77824 0a44.76416 44.76416 0 0 0 19.57376-29.75232c0-11.5968 0-27.4432-11.35104-27.4432a67.21024 67.21024 0 0 0-20.43392-50.21696 69.00736 69.00736 0 0 0-51.2-19.34336 68.59264 68.59264 0 0 0-51.47136 19.34336 66.7904 66.7904 0 0 0-20.15744 50.60608c-12.1344 0-12.91776 15.84128-11.35104 27.4432a44.32896 44.32896 0 0 0 17.6128 29.3632z" p-id="3067"></path></svg>
@@ -0,0 +1 @@
1
+ <?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg t="1767062088706" class="icon" viewBox="0 0 1052 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="3668" xmlns:xlink="http://www.w3.org/1999/xlink" width="205.46875" height="200"><path d="M292.411145 852.603151a356.364395 356.364395 0 0 0 473.799019-6.411353l1.442554-1.335699 57.328186 61.922989a440.780549 440.780549 0 0 1-583.540019 13.25013l-4.274236-3.6331 55.191068-64.113534z m387.085464-685.15997a441.79568 441.79568 0 0 1 283.16811 484.965459l-0.480852 2.991965-83.240739-14.051549a357.379526 357.379526 0 0 0-226.48106-393.817385l-2.350829-0.854847 29.171658-79.233643z m-375.277888 32.056767a441.902536 441.902536 0 0 1 63.579255-30.240217l2.190545-0.854847 29.65251 79.019931a356.578107 356.578107 0 0 0-225.733069 396.755922l0.801419 4.381091-82.973599 15.761244a441.421684 441.421684 0 0 1 212.429511-464.823124z" p-id="3669"></path><path d="M88.42325 626.068663a178.769905 178.769905 0 1 0 245.234269 64.861526 178.769905 178.769905 0 0 0-245.234269-64.861526z m42.208076 73.036002a94.407179 94.407179 0 1 1-35.583011 129.509339 94.407179 94.407179 0 0 1 35.583011-129.509339z m574.724408-521.296463a179.143901 179.143901 0 1 0-179.143901 180.533027 179.143901 179.143901 0 0 0 179.143901-180.533027z m-84.416153 0a94.781175 94.781175 0 1 1-94.781175-96.170302 94.781175 94.781175 0 0 1 94.834602 96.170302z m163.756652 757.928832a179.143901 179.143901 0 1 0-66.784932-245.394553 179.143901 179.143901 0 0 0 66.784932 245.394553z m42.208077-73.089429a94.781175 94.781175 0 1 1 130.631326-33.980173 94.781175 94.781175 0 0 1-130.631326 33.980173z" p-id="3670"></path></svg>
@@ -0,0 +1 @@
1
+ <?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg t="1767064508709" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="3232" xmlns:xlink="http://www.w3.org/1999/xlink" width="200" height="200"><path d="M674.92049 167.601633l3.343673 3.176489 147.748572 147.748572a83.591837 83.591837 0 0 1 3.176489 114.896979l-3.155591 3.343674-431.083102 431.062204a83.591837 83.591837 0 0 1-54.355592 24.346122l-4.743837 0.125388H167.183673a62.693878 62.693878 0 0 1-62.589387-58.994939L104.489796 829.607184v-168.646531a83.591837 83.591837 0 0 1 21.232326-55.672163l3.260082-3.448163L560.044408 170.778122a83.591837 83.591837 0 0 1 114.876082-3.155591z m243.231347 639.414857a20.897959 20.897959 0 0 1 20.897959 20.897959v41.795918a20.897959 20.897959 0 0 1-20.897959 20.89796h-334.367347a20.897959 20.897959 0 0 1-20.897959-20.89796v-41.795918a20.897959 20.897959 0 0 1 20.897959-20.897959h334.367347zM500.924082 348.097306L188.081633 660.918857v147.748572l147.769469 0.020898 312.842449-312.842449-147.769469-147.790368z m417.227755 291.73551a20.897959 20.897959 0 0 1 20.897959 20.89796v41.795918a20.897959 20.897959 0 0 1-20.897959 20.897959h-167.183674a20.897959 20.897959 0 0 1-20.897959-20.897959v-41.795918a20.897959 20.897959 0 0 1 20.897959-20.89796h167.183674zM619.143837 229.877551L560.065306 288.97698l147.748572 147.748571 59.099428-59.078531L619.164735 229.877551z" fill="#222429" p-id="3233"></path></svg>
@@ -0,0 +1 @@
1
+ <?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg t="1767064485277" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="3087" xmlns:xlink="http://www.w3.org/1999/xlink" width="200" height="200"><path d="M696.16 96a96 96 0 0 1 96 96v39.824H832a96 96 0 0 1 95.936 92.416l0.064 3.6V832a96 96 0 0 1-96 96H327.84a96 96 0 0 1-96-96l-0.016-39.84H192a96 96 0 0 1-96-96V192a96 96 0 0 1 96-96h504.16zM832 295.84H327.84a32 32 0 0 0-32 32V832a32 32 0 0 0 32 32H832a32 32 0 0 0 32-32V327.84a32 32 0 0 0-32-32z m-71.776 317.92a32 32 0 1 1 0 64h-253.44l47.68 31.552a32 32 0 0 1 10.4 42.096l-1.36 2.24a32 32 0 0 1-44.352 9.04l-136.368-90.256c-26.464-17.504-14.064-58.688 17.648-58.688h359.792zM696.16 160H192a32 32 0 0 0-32 32v504.16a32 32 0 0 0 32 32h39.824V327.84a96 96 0 0 1 92.416-95.936l3.6-0.064 400.32-0.016V192a32 32 0 0 0-32-32z m-54.72 235.072l136.384 90.24C804.272 502.816 791.888 544 760.16 544H400.384a32 32 0 1 1 0-64h253.44l-47.696-31.568a32 32 0 0 1-10.4-42.08l1.376-2.256a32 32 0 0 1 44.336-9.024z" p-id="3088"></path></svg>
@@ -0,0 +1 @@
1
+ <?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg t="1767062256366" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="4408" xmlns:xlink="http://www.w3.org/1999/xlink" width="200" height="200"><path d="M853.330337 1023.999693H170.664046a72.655826 72.655826 0 0 1-51.716679-21.424678A72.666048 72.666048 0 0 1 97.522689 950.853226V73.146723a72.671159 72.671159 0 0 1 21.424678-51.721789A72.666048 72.666048 0 0 1 170.664046 0.000256h682.666291a72.671159 72.671159 0 0 1 51.72179 21.424678 72.666048 72.666048 0 0 1 21.424678 51.721789v877.706503a72.666048 72.666048 0 0 1-21.424678 51.721789 72.666048 72.666048 0 0 1-51.72179 21.424678zM277.199688 754.974836A36.614121 36.614121 0 0 0 240.626454 791.54807a36.614121 36.614121 0 0 0 36.573234 36.573233h463.237111a36.614121 36.614121 0 0 0 36.568123-36.573233 36.60901 36.60901 0 0 0-36.568123-36.573234z m0-146.282714A36.60901 36.60901 0 0 0 240.626454 645.260245a36.614121 36.614121 0 0 0 36.573234 36.573234h463.237111a36.60901 36.60901 0 0 0 36.568123-36.573234 36.60901 36.60901 0 0 0-36.568123-36.568123z m329.138661-414.489835a24.409414 24.409414 0 0 0-24.378749 24.378749v170.666573a24.409414 24.409414 0 0 0 24.378749 24.383859h146.287824a24.409414 24.409414 0 0 0 24.378749-24.383859V218.581036a24.409414 24.409414 0 0 0-24.378749-24.378749z m-329.138661 146.282714A36.614121 36.614121 0 0 0 240.626454 377.058234a36.614121 36.614121 0 0 0 36.573234 36.573234H472.250121a36.614121 36.614121 0 0 0 36.568123-36.573234 36.60901 36.60901 0 0 0-36.568123-36.573233z m0-146.282714A36.60901 36.60901 0 0 0 240.626454 230.77041a36.614121 36.614121 0 0 0 36.573234 36.573234H472.250121a36.60901 36.60901 0 0 0 36.568123-36.573234 36.60901 36.60901 0 0 0-36.568123-36.568123z" fill="#666666" p-id="4409"></path></svg>
@@ -0,0 +1 @@
1
+ <?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg t="1767062102492" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="3818" xmlns:xlink="http://www.w3.org/1999/xlink" width="200" height="200"><path d="M167.744 883.456q-2.944 2.112-5.696 4.672-14.272 13.44-14.272 32.512 0 19.136 14.272 32.512 14.08 13.248 33.92 13.248H806.4q19.84 0 33.92-13.248 14.336-13.44 14.336-32.512 0-4.8-0.896-9.216-2.688-13.248-13.44-23.296-14.08-13.248-33.92-13.248H551.36v-59.84q4.544-1.792 8.32-4.16 10.048-6.144 14.912-15.808 4.544-9.152 4.544-21.376 0-19.072-13.952-32.448-13.888-13.312-33.664-13.312H135.68q-16 0-27.776-10.624-11.52-10.496-11.52-24.512V184.192q0-14.272 11.328-24.576 11.648-10.496 27.968-10.496h736.96q15.616 0 26.496 10.368 10.688 10.24 10.688 24.704V300.16q0 19.072 14.272 32.512 14.08 13.248 33.92 13.248 7.552 0 14.272-1.92 11.008-3.2 19.712-11.328 14.272-13.44 14.272-32.512V184.192q0-52.48-39.296-89.6Q928 57.6 872.704 57.6H135.68q-55.936 0-95.68 36.928Q0 131.648 0 184.128v508.672q0 52.48 40.064 89.728 39.744 36.928 95.68 36.928h319.168v55.424H196.032q-16 0-28.288 8.576z m-7.68-296.448q-8.96 11.52-8.96 26.688 0 15.104 8.96 26.624 2.368 3.072 5.312 5.888 14.08 13.248 33.984 13.248h316.928q19.84 0 33.92-13.248 14.272-13.44 14.272-32.512 0-15.04-8.768-26.496l-0.768-1.024q-2.112-2.56-4.672-5.056-14.08-13.184-33.984-13.184H199.36q-19.84 0-33.92 13.184-3.008 2.816-5.376 5.888z" fill="#3F414D" p-id="3819"></path><path d="M839.04 384c-32.192 0-59.136 24.192-66.944 56.64H610.56v37.76h161.536c7.808 32.448 34.752 56.64 66.88 56.64 32.128 0 59.136-24.192 66.88-56.64h54.528v-37.76h-54.528C898.112 408.192 871.104 384 839.04 384z m0 37.76c19.008 0 34.624 16.96 34.624 37.76 0 20.736-15.616 37.76-34.688 37.76-19.072 0-34.688-17.024-34.688-37.76 0-20.8 15.616-37.76 34.688-37.76z m-138.88 108.416c-32.128 0-59.072 24.256-66.88 56.64H610.56v37.76h22.72c7.808 32.448 34.752 56.64 66.88 56.64 32.192 0 59.136-24.192 66.944-56.64h193.28v-37.76h-193.28c-7.808-32.384-34.752-56.64-66.944-56.64z m0 37.76c19.136 0 34.688 17.024 34.688 37.76 0 20.8-15.552 37.76-34.688 37.76-19.072 0-34.688-16.96-34.688-37.76 0-20.736 15.616-37.76 34.688-37.76z m138.752 113.024c-32.128 0-59.072 24.192-66.88 56.64H610.56v37.76h161.472c7.808 32.448 34.752 56.64 66.88 56.64 32.192 0 59.136-24.192 66.944-56.64h54.464v-37.76h-54.464c-7.808-32.448-34.752-56.64-66.944-56.64z m0 37.76c19.136 0 34.688 17.024 34.688 37.76 0 20.8-15.552 37.76-34.688 37.76-19.072 0-34.688-16.96-34.688-37.76 0-20.736 15.616-37.76 34.688-37.76z" fill="#3F414D" p-id="3820"></path><path d="M917.696 424.64q-8.192-21.504-25.664-36.608-23.296-20.032-53.056-20.032-29.76 0-52.992 20.032-17.536 15.104-25.664 36.608H610.56q-3.2 0-6.08 1.216-2.944 1.28-5.184 3.456-2.304 2.24-3.52 5.184-1.216 2.944-1.216 6.144v37.76q0 3.2 1.28 6.144 1.152 2.944 3.456 5.12 2.24 2.304 5.12 3.52 3.008 1.216 6.144 1.216h149.76q8.128 21.504 25.6 36.608 23.296 20.032 53.12 20.032 29.696 0 52.992-20.032 17.472-15.104 25.6-36.608h42.752q3.2 0 6.144-1.216 2.944-1.28 5.184-3.456 2.24-2.24 3.456-5.184 1.28-2.944 1.28-6.144v-37.76q0-3.2-1.28-6.144-1.216-2.944-3.456-5.12-2.24-2.304-5.184-3.52-2.944-1.216-6.144-1.216h-42.688z m-78.72-24.64q40.704 0 51.328 44.352 0.64 2.624 2.112 4.928 1.472 2.24 3.584 3.904 2.112 1.664 4.672 2.56 2.56 0.896 5.184 0.896h38.528v5.76h-38.528q-2.688 0-5.184 0.896-2.56 0.896-4.672 2.56-2.112 1.664-3.584 3.904-1.472 2.304-2.112 4.928-10.624 44.352-51.328 44.352-40.64 0-51.328-44.352-0.64-2.624-2.048-4.928-1.472-2.24-3.584-3.904-2.112-1.664-4.672-2.56-2.56-0.896-5.248-0.896H626.56v-5.76h145.536q2.688 0 5.248-0.896t4.672-2.56q2.112-1.664 3.584-3.904 1.408-2.304 2.048-4.928 10.688-44.352 51.328-44.352z m-36.288 22.016q-14.4 15.68-14.4 37.504 0 21.76 14.4 37.504 14.976 16.256 36.288 16.256 21.376 0 36.288-16.256 14.4-15.68 14.4-37.504 0-21.76-14.4-37.504-14.912-16.256-36.288-16.256-21.312 0-36.288 16.256z m36.288 59.264q-18.688 0-18.688-21.76t18.688-21.76q7.936 0 12.544 3.904 6.144 5.312 6.144 17.856 0 21.76-18.688 21.76z m-60.16 89.6q-8.064-21.568-25.6-36.672-23.296-20.032-53.056-20.032-29.76 0-52.992 20.032-17.536 15.104-25.664 36.608H610.56q-3.2 0-6.144 1.28-2.944 1.152-5.184 3.392-2.24 2.304-3.456 5.248-1.28 2.88-1.28 6.08v37.76q0 3.2 1.28 6.144 1.216 2.944 3.456 5.184t5.12 3.456q3.008 1.28 6.208 1.28h10.88q8.192 21.44 25.728 36.544 23.232 20.032 52.992 20.032 29.76 0 53.056-20.032 17.536-15.104 25.6-36.608h181.504q3.2 0 6.144-1.216t5.184-3.456q2.24-2.24 3.456-5.184 1.28-2.944 1.28-6.144v-37.76q0-3.2-1.28-6.08-1.216-2.944-3.456-5.248-2.24-2.24-5.184-3.456-2.944-1.216-6.144-1.216H778.88z m-78.656-24.704q40.704 0 51.392 44.416 0.64 2.56 2.048 4.864 1.472 2.24 3.584 3.968 2.112 1.664 4.672 2.56 2.56 0.832 5.248 0.832h177.28v5.76h-177.28q-2.688 0-5.248 0.896t-4.672 2.56q-2.112 1.664-3.584 3.904-1.472 2.304-2.048 4.928-10.688 44.352-51.392 44.352-40.64 0-51.328-44.352-0.64-2.624-2.048-4.928-1.472-2.24-3.584-3.904-2.112-1.664-4.672-2.56-2.56-0.896-5.248-0.896H626.56v-5.76h6.72q2.688 0 5.248-0.896 2.56-0.832 4.672-2.56 2.112-1.664 3.584-3.904 1.408-2.24 2.048-4.864 10.688-44.416 51.328-44.416z m-36.224 22.016q-14.464 15.68-14.464 37.504 0 21.76 14.464 37.504 14.912 16.256 36.224 16.256 21.376 0 36.288-16.256 14.4-15.68 14.4-37.504 0-21.76-14.4-37.504-14.912-16.256-36.288-16.256-21.312 0-36.224 16.256z m23.552 53.376q-6.016-6.528-6.016-15.872 0-12.48 6.208-17.792 4.544-3.968 12.48-3.968 18.688 0 18.688 21.76t-18.688 21.76q-7.232 0-12.672-5.888z m230.144 100.032q-8.128-21.504-25.664-36.608-23.296-20.032-53.056-20.032-29.76 0-52.992 20.032-17.536 15.104-25.664 36.608h-149.76q-3.2 0-6.08 1.28-2.944 1.152-5.184 3.392t-3.456 5.184q-1.28 2.944-1.28 6.144v37.76q0 3.2 1.28 6.144 1.216 2.944 3.456 5.12 2.24 2.304 5.12 3.52 3.008 1.216 6.208 1.216h149.696q8.128 21.504 25.664 36.608 23.232 20.032 52.992 20.032 29.76 0 53.056-20.032 17.472-15.104 25.6-36.608h42.752q3.2 0 6.144-1.216 2.944-1.28 5.184-3.456 2.24-2.24 3.456-5.184 1.28-2.944 1.28-6.144v-37.76q0-3.2-1.28-6.144-1.216-2.944-3.456-5.12-2.24-2.304-5.184-3.52-2.944-1.216-6.144-1.216h-42.688z m-78.72-24.64q40.704 0 51.392 44.352 0.64 2.624 2.048 4.928 1.472 2.24 3.584 3.904 2.112 1.664 4.672 2.56 2.56 0.896 5.248 0.896h38.464v5.76h-38.464q-2.752 0-5.248 0.896-2.56 0.896-4.672 2.56-2.112 1.664-3.584 3.904-1.472 2.304-2.048 4.928-10.688 44.352-51.392 44.352-40.64 0-51.328-44.352-0.64-2.624-2.048-4.928-1.472-2.24-3.584-3.904-2.112-1.664-4.672-2.56-2.56-0.896-5.248-0.896H626.56v-5.76h145.472q2.688 0 5.248-0.896t4.672-2.56q2.112-1.664 3.584-3.904 1.408-2.304 2.048-4.928 10.688-44.352 51.328-44.352z m-36.224 22.016q-14.464 15.68-14.464 37.504 0 21.76 14.464 37.504 14.912 16.256 36.224 16.256 21.376 0 36.288-16.256 14.4-15.68 14.4-37.504 0-21.76-14.4-37.504-14.912-16.256-36.288-16.256-21.312 0-36.224 16.256z m36.224 59.264q-18.688 0-18.688-21.76 0-9.344 6.016-15.872 5.44-5.888 12.672-5.888 18.688 0 18.688 21.76t-18.688 21.76z" fill="#3F414D" p-id="3821"></path></svg>
@@ -0,0 +1 @@
1
+ <?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg t="1767066540246" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="3304" xmlns:xlink="http://www.w3.org/1999/xlink" width="200" height="200"><path d="M550.94971 910.440322h-366.023567a62.928342 62.928342 0 0 1-62.928341-62.928341V130.590743a62.928342 62.928342 0 0 1 62.928341-62.928342H627.618369v165.518859a33.773468 33.773468 0 0 0 33.8312 33.8312h165.287929V448.580933a33.8312 33.8312 0 0 0 67.662401 0V232.777133a8.833061 8.833061 0 0 0 0-2.482495v-0.923718a15.356825 15.356825 0 0 0-0.577324-2.828889v-0.865987c0-0.173197 0-1.385578-0.46186-2.078367s0-0.865986-0.404127-1.096916a11.546485 11.546485 0 0 0-0.692789-1.616508c0-0.404127 0-0.635057-0.461859-1.096916s-0.692789-1.558775-1.096916-2.482494 0-0.461859-0.46186-0.692789-0.692789-1.096916-1.154648-1.789705a8.833061 8.833061 0 0 1-0.635057-0.923719 5.773242 5.773242 0 0 1-1.154648-1.558775l-0.692789-0.69279a20.321813 20.321813 0 0 1-2.020635-2.251564l-197.675819-197.444889A33.888933 33.888933 0 0 0 661.218639 0h-476.292496A130.821672 130.821672 0 0 0 54.335401 130.590743V847.511981a130.821672 130.821672 0 0 0 130.590742 130.590742h366.254497a33.8312 33.8312 0 1 0 0-67.662401z m144.331059-711.321192V115.695777l83.654282 83.654282h-83.885211z m-486.915262 43.12612a33.773468 33.773468 0 0 1 33.831201-33.8312h195.07786a33.8312 33.8312 0 1 1 0 67.6624H241.734848a33.773468 33.773468 0 0 1-33.60027-33.8312z m228.909061 329.074815a33.8312 33.8312 0 1 1 0 67.662401H241.734848a33.8312 33.8312 0 0 1 0-67.662401z m269.264024-113.848339H241.965778a33.8312 33.8312 0 0 1 0-67.662401h464.572814a33.8312 33.8312 0 1 1 0 67.662401z m262.97119 236.125613a173.197271 173.197271 0 1 0-295.647742 123.14326 147.852737 147.852737 0 0 0-26.614647 78.920223 34.004398 34.004398 0 0 0 33.8312 33.600271h230.063709a33.888933 33.888933 0 0 0 33.8312-33.600271 148.430061 148.430061 0 0 0-26.614647-78.920223 173.716863 173.716863 0 0 0 50.97773-123.14326z m-117.081355 89.542989a34.29306 34.29306 0 0 0-14.433106 38.1034 35.620905 35.620905 0 0 0 9.468117 15.356825 119.10199 119.10199 0 0 1 18.763038 24.767209h-140.520719a112.924621 112.924621 0 0 1 18.070248-24.132153 34.639454 34.639454 0 0 0 10.334104-16.049614 34.004398 34.004398 0 0 0-14.433106-38.103399 105.592603 105.592603 0 1 1 112.751424 0z m75.340813 207.028472a33.8312 33.8312 0 0 1-33.831201 33.8312h-195.770648a33.8312 33.8312 0 0 1 0-67.662401h195.655184a33.773468 33.773468 0 0 1 33.8312 33.831201z" fill="#040000" p-id="3305"></path></svg>
@@ -0,0 +1 @@
1
+ <?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg t="1767065396472" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="3357" xmlns:xlink="http://www.w3.org/1999/xlink" width="200" height="200"><path d="M256.5 0.5H64c-35.3 0-64 28.6-64 64v895c0 35.3 28.7 64 64 64H256.5c35.3 0 64-28.7 64-64v-895c0-35.4-28.7-64-64-64zM128.5 864c0-8.8 3.6-16.8 9.4-22.6 5.8-5.8 13.8-9.4 22.6-9.4s16.8 3.6 22.6 9.4c5.8 5.8 9.4 13.8 9.4 22.6s-3.6 16.8-9.4 22.6c-5.8 5.8-13.8 9.4-22.6 9.4-17.7 0-32-14.3-32-32z m64-232c0 4.4-3.6 8-8 8h-48c-4.4 0-8-3.6-8-8V136c0-4.4 3.6-8 8-8h48c4.4 0 8 3.6 8 8v496zM608.5 0.5H416c-35.3 0-64 28.6-64 64v895c0 35.3 28.7 64 64 64H608.5c35.3 0 64-28.7 64-64v-895c0-35.4-28.7-64-64-64zM480.5 864c0-8.8 3.6-16.8 9.4-22.6 5.8-5.8 13.8-9.4 22.6-9.4s16.8 3.6 22.6 9.4c5.8 5.8 9.4 13.8 9.4 22.6s-3.6 16.8-9.4 22.6c-5.8 5.8-13.8 9.4-22.6 9.4-17.7 0-32-14.3-32-32z m64-232c0 4.4-3.6 8-8 8h-48c-4.4 0-8-3.6-8-8V136c0-4.4 3.6-8 8-8h48c4.4 0 8 3.6 8 8v496zM960.5 0.5H768c-35.3 0-64 28.6-64 64v895c0 35.3 28.7 64 64 64H960.5c35.3 0 64-28.7 64-64v-895c0-35.4-28.7-64-64-64zM832.5 864c0-8.8 3.6-16.8 9.4-22.6 5.8-5.8 13.8-9.4 22.6-9.4s16.8 3.6 22.6 9.4c5.8 5.8 9.4 13.8 9.4 22.6s-3.6 16.8-9.4 22.6c-5.8 5.8-13.8 9.4-22.6 9.4-17.7 0-32-14.3-32-32z m64-232c0 4.4-3.6 8-8 8h-48c-4.4 0-8-3.6-8-8V136c0-4.4 3.6-8 8-8h48c4.4 0 8 3.6 8 8v496z" p-id="3358"></path></svg>
@@ -0,0 +1 @@
1
+ <?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg t="1767062271939" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="4553" xmlns:xlink="http://www.w3.org/1999/xlink" width="200" height="200"><path d="M518.062 66c143.317 67.291 258.119 104.66 344.405 112.11C880.305 179.648 894 194.577 894 212.48v333.564C863.667 746.94 738 884.258 517 958c-223.854-74.019-349.521-211.337-377-411.955V213.16c0-18.16 14.077-33.21 32.195-34.423 89.313-5.98 204.602-43.558 345.867-112.736z m1.237 179.32c-81.32 0-147.122 66.459-147.122 148.294 0 71.17 49.767 130.71 116.226 145.021l1.012 210.302 0.012 0.706c0.452 16.178 13.747 29.115 30.015 29.037 16.505-0.08 29.82-13.524 29.74-30.03L549 710.891l53.132-0.137 0.705-0.01c16.178-0.416 29.144-13.683 29.102-29.953-0.043-16.506-13.457-29.852-29.961-29.81l-53.265 0.137-0.133-27.694 53.552-0.137 0.705-0.01c16.178-0.417 29.144-13.684 29.102-29.954-0.043-16.506-13.457-29.852-29.961-29.81l-53.685 0.138-0.117-24.596c67.468-13.53 118.245-73.553 118.245-145.44 0-81.836-65.803-148.295-147.122-148.295z m0 59.773c48.178 0 87.353 39.567 87.353 88.521 0 45.804-34.294 83.39-78.17 88.038a29.742 29.742 0 0 0-10.476-1.838c-3.37 0.017-6.608 0.59-9.625 1.633-43.042-5.439-76.436-42.634-76.436-87.833 0-48.954 39.176-88.521 87.354-88.521z" fill="#333333" p-id="4554"></path></svg>
@@ -0,0 +1 @@
1
+ <?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg t="1767067111495" class="icon" viewBox="0 0 1045 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="3040" xmlns:xlink="http://www.w3.org/1999/xlink" width="204.1015625" height="200"><path d="M795.178667 507.306667c-93.653333 0-172.906667 72.021333-172.906667 165.674666 0 93.653333 72.042667 172.885333 165.696 172.885334h7.210667c93.653333 0 165.674667-79.232 165.674666-172.885334 0-93.653333-72.042667-165.674667-165.674666-165.674666z m64.832 252.117333l-64.853334-36.010667-57.6 36.010667 14.378667-72.042667-57.6-43.221333 72.021333-7.189333 28.8-64.853334 28.821334 64.853334 72.042666 7.189333-50.432 50.432 14.421334 64.853333z" p-id="3041"></path><path d="M651.093333 795.456l-72.042666 151.253333 86.442666-14.4 50.432 79.253334 72.042667-144.085334c-57.642667-7.189333-108.053333-28.8-136.874667-72.021333z m295.36 0l72.021334 151.253333-93.653334-14.4-43.2 79.253334-72.042666-144.085334c50.432-7.189333 100.842667-28.8 136.874666-72.021333z m-316.970666-432.213333H276.501333c-14.4 0-21.610667 7.189333-21.610666 21.589333v21.610667c0 7.210667 7.210667 21.610667 21.610666 21.610666h352.981334c7.210667 0 21.610667-7.210667 21.610666-21.610666V384.853333c-7.210667-7.210667-14.4-21.610667-21.610666-21.610666z m-14.4 216.106666H276.48c-7.210667 0-21.610667 7.189333-21.610667 21.589334v21.610666c0 7.210667 7.210667 21.610667 21.610667 21.610667h295.36c7.189333-28.8 21.610667-50.410667 43.221333-64.832z" p-id="3042"></path><path d="M629.482667 5.354667c13.802667 0 26.496 14.506667 26.496 26.496v9.536h139.2l4.032 0.106666c36.138667 2.154667 65.664 33.002667 65.664 69.589334v343.04l-0.64-0.362667a274.346667 274.346667 0 0 0-58.389334-25.450667l-1.152-0.32V147.114667c0-26.88-18.666667-45.546667-45.546666-45.546667h-110.378667v52.757333c0 16.341333-10.133333 26.474667-26.496 26.474667H283.733333c-16.362667 0-26.496-10.133333-26.496-26.474667V108.778667h-124.8c-26.88 0-45.525333 18.666667-45.525333 45.546666v734.762667l0.106667 3.797333c1.685333 24.810667 19.84 41.749333 45.44 41.749334H445.44l60.202667 60.202666H96.405333c-37.973333 0-69.717333-31.765333-69.717333-69.717333V111.082667c0-31.722667 32.832-62.506667 69.717333-62.506667h168v-9.514667c0-18.346667 11.946667-33.706667 26.496-33.706666h338.581334z" p-id="3043"></path></svg>
@@ -0,0 +1 @@
1
+ <?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg t="1767062112346" class="icon" viewBox="0 0 1322 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="3965" xmlns:xlink="http://www.w3.org/1999/xlink" width="258.203125" height="200"><path d="M457.653 361.17a94.278 94.278 0 0 0-42.578-10.442 95.659 95.659 0 1 0 95.628 95.629 94.399 94.399 0 0 0-10.562-42.789l103.22-105.02-42.758-42.008z m-42.578 120.834a35.647 35.647 0 1 1 35.617-35.647 35.677 35.677 0 0 1-35.617 35.647zM242.54 573.882h360.071v60.012h-360.07zM452.582 663.9h120.024v60.011H452.582z" p-id="3966"></path><path d="M632.617 65.732A384.495 384.495 0 0 0 413.814 0.02 414.651 414.651 0 0 0 0.004 416.351a419.092 419.092 0 0 0 302.549 399.498v148.11H32.5v60.011h330.064V828.422a383.115 383.115 0 0 0 120.024-0.96v196.508h840.165V63.782H632.617zM64.516 453.858h58.001v-60.012H63.646a354.07 354.07 0 0 1 74.834-196.658l46.3 46.329 42.428-42.428-47.83-48.01A354.55 354.55 0 0 1 392.42 61.201v62.592h60.012V61.741c69.374 6.632 150.03 33.607 180.035 77.566v7.08l-49.69 54.702 39.938 42.428 9.752-12.272v462.09a336.366 336.366 0 0 1-218.803 79.396A351.969 351.969 0 0 1 64.516 453.858zM542.6 813.448a333.245 333.245 0 0 0 90.017-46.478v196.988H542.6z m150.03-689.655h570.11v840.165H692.63z" p-id="3967"></path><path d="M782.647 483.864h420.082V183.805H782.647z m60.012-240.047h300.058v180.035H842.66zM782.647 513.87v180.035h180.035V513.87z m106.7 121.014h-54.37v-54.311h54.37zM992.688 693.905h180.035V513.87H992.688z m66.343-113.332h54.34v54.31h-54.34zM752.64 723.911h420.083v60.012H752.641zM1022.694 813.929h150.03v60.012h-150.03z" p-id="3968"></path></svg>
@@ -0,0 +1 @@
1
+ <?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg t="1767061851202" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="3081" xmlns:xlink="http://www.w3.org/1999/xlink" width="200" height="200"><path d="M944 493.726c0 22.018-10.64 62.57-81.906 86.78C825.086 593.08 776.042 600 724 600c-13 0-25.832-0.432-38.326-1.278a185.93 185.93 0 0 0 14.312-71.188c7.658 0.358 15.65 0.56 24.014 0.56 94.284 0 143.764-24.574 148-34.586-0.128-73.234-65.66-132.836-146.492-133.574-0.838 0.016-1.668 0.064-2.508 0.064-0.522 0-1.038-0.034-1.558-0.04a157.58 157.58 0 0 0-85.486 26.326 186.882 186.882 0 0 0-67.498-37.884 220.584 220.584 0 0 1 49.854-35.056 141.012 141.012 0 1 1 210-0.712C897.136 347.436 944 415.558 944 493.726zM723 150a69 69 0 1 0 69 69 69.078 69.078 0 0 0-69-69z m-69 377a140.4 140.4 0 0 1-35.696 93.628C687.136 655.436 734 723.558 734 801.726c0 22.018-10.64 62.57-81.906 86.78C615.086 901.08 566.042 908 514 908s-101.088-6.922-138.094-19.496C304.64 864.296 294 823.744 294 801.726c0-77.642 46.238-145.37 114.312-180.386A140.968 140.968 0 1 1 654 527zM366 801.51c4.236 10.012 53.716 34.586 148 34.586s143.764-24.574 148-34.586c-0.128-73.234-65.66-132.836-146.492-133.574-0.838 0.016-1.668 0.064-2.508 0.064-0.522 0-1.038-0.034-1.558-0.04C431.094 669.2 366.128 728.6 366 801.51zM513 458a69 69 0 1 0 69 69 69.08 69.08 0 0 0-69-69z m-88.45-95.712a188.322 188.322 0 0 0-58.772 49.616 159.866 159.866 0 0 0-64.27-13.968c-0.838 0.016-1.668 0.064-2.508 0.064-0.522 0-1.038-0.034-1.558-0.04C217.094 399.2 152.128 458.6 152 531.51c4.236 10.012 53.716 34.586 148 34.586 10.552 0 20.51-0.322 29.938-0.882a186.068 186.068 0 0 0 30.372 69.54A551.616 551.616 0 0 1 300 638c-52.044 0-101.086-6.922-138.094-19.496C90.64 594.296 80 553.744 80 531.726c0-77.642 46.238-145.37 114.312-180.386a141.012 141.012 0 1 1 210-0.712 223.62 223.62 0 0 1 20.238 11.66zM299 188a69 69 0 1 0 69 69 69.08 69.08 0 0 0-69-69z" p-id="3082"></path></svg>
@@ -1 +1 @@
1
- <?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg t="1757466326873" class="icon" viewBox="0 0 1042 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="3737" xmlns:xlink="http://www.w3.org/1999/xlink" width="32.5625" height="32"><path d="M802.742857 841.142857h-548.571428v73.142857h548.571428v-73.142857zM504.685714 579.657143l42.057143-9.142857-31.085714-32.914286-10.971429 42.057143zM705.92 322.633143l-147.382857 147.419428 58.185143 58.185143 147.382857-147.419428-58.185143-58.185143z" p-id="3738"></path><path d="M930.742857 109.714286h-804.571428c-20.114286 0-36.571429 16.457143-36.571429 36.571428v621.714286c0 20.114286 16.457143 36.571429 36.571429 36.571429h804.571428c20.114286 0 36.571429-16.457143 36.571429-36.571429V146.285714c0-20.114286-16.457143-36.571429-36.571429-36.571428z m-672.914286 164.571428h256v73.142857h-256v-73.142857z m109.714286 237.714286h-109.714286v-73.142857h109.714286v73.142857z m469.942857-102.4l-181.028571 181.028571c0 3.657143 0 5.485714-1.828572 9.142858-3.657143 12.8-14.628571 21.942857-27.428571 25.6l-162.742857 38.4c-3.657143 0-5.485714 1.828571-9.142857 1.828571-9.142857 0-18.285714-3.657143-25.6-10.971429-9.142857-9.142857-12.8-21.942857-9.142857-34.742857l38.4-162.742857c3.657143-12.8 12.8-23.771429 25.6-27.428571 3.657143 0 5.485714-1.828571 9.142857-1.828572l181.028571-181.028571c14.628571-14.628571 38.4-14.628571 51.2 0l109.714286 109.714286c14.628571 16.457143 14.628571 40.228571 1.828571 53.028571z" fill="#4C4C4C" p-id="3739"></path></svg>
1
+ <?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg t="1767065312112" class="icon" viewBox="0 0 1042 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="3211" xmlns:xlink="http://www.w3.org/1999/xlink" width="203.515625" height="200"><path d="M802.742857 841.142857h-548.571428v73.142857h548.571428v-73.142857zM504.685714 579.657143l42.057143-9.142857-31.085714-32.914286-10.971429 42.057143zM705.92 322.633143l-147.382857 147.419428 58.185143 58.185143 147.382857-147.419428-58.185143-58.185143z" fill="#4C4C4C" p-id="3212"></path><path d="M930.742857 109.714286h-804.571428c-20.114286 0-36.571429 16.457143-36.571429 36.571428v621.714286c0 20.114286 16.457143 36.571429 36.571429 36.571429h804.571428c20.114286 0 36.571429-16.457143 36.571429-36.571429V146.285714c0-20.114286-16.457143-36.571429-36.571429-36.571428z m-672.914286 164.571428h256v73.142857h-256v-73.142857z m109.714286 237.714286h-109.714286v-73.142857h109.714286v73.142857z m469.942857-102.4l-181.028571 181.028571c0 3.657143 0 5.485714-1.828572 9.142858-3.657143 12.8-14.628571 21.942857-27.428571 25.6l-162.742857 38.4c-3.657143 0-5.485714 1.828571-9.142857 1.828571-9.142857 0-18.285714-3.657143-25.6-10.971429-9.142857-9.142857-12.8-21.942857-9.142857-34.742857l38.4-162.742857c3.657143-12.8 12.8-23.771429 25.6-27.428571 3.657143 0 5.485714-1.828571 9.142857-1.828572l181.028571-181.028571c14.628571-14.628571 38.4-14.628571 51.2 0l109.714286 109.714286c14.628571 16.457143 14.628571 40.228571 1.828571 53.028571z" fill="#4C4C4C" p-id="3213"></path></svg>
@@ -0,0 +1 @@
1
+ <?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg t="1767064739072" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="2916" xmlns:xlink="http://www.w3.org/1999/xlink" width="200" height="200"><path d="M928 896H96c-17.67 0-32 14.33-32 32s14.33 32 32 32h832c17.67 0 32-14.33 32-32s-14.33-32-32-32zM185.73 806.6h3.14c61.76 0 112-50.24 112-112V461.13c0-61.76-50.24-112-112-112h-3.14c-61.76 0-112 50.24-112 112V694.6c0 61.76 50.24 112 112 112z m-48-345.47c0-26.47 21.53-48 48-48h3.14c26.47 0 48 21.53 48 48V694.6c0 26.47-21.53 48-48 48h-3.14c-26.47 0-48-21.53-48-48V461.13zM511.11 806.6h3.14c61.76 0 112-50.24 112-112V278.93c0-61.76-50.24-112-112-112h-3.14c-61.76 0-112 50.24-112 112V694.6c0 61.76 50.24 112 112 112z m-48-527.67c0-26.47 21.53-48 48-48h3.14c26.47 0 48 21.53 48 48V694.6c0 26.47-21.53 48-48 48h-3.14c-26.47 0-48-21.53-48-48V278.93zM848 64h-3.14c-61.76 0-112 50.24-112 112v518.6c0 61.76 50.24 112 112 112H848c61.76 0 112-50.24 112-112V176c0-61.76-50.24-112-112-112z m48 630.6c0 26.47-21.53 48-48 48h-3.14c-26.47 0-48-21.53-48-48V176c0-26.47 21.53-48 48-48H848c26.47 0 48 21.53 48 48v518.6z" p-id="2917"></path></svg>
@@ -0,0 +1 @@
1
+ <?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg t="1767064747865" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="3207" xmlns:xlink="http://www.w3.org/1999/xlink" width="200" height="200"><path d="M697.856 782.336c87.04 0 157.184-70.144 157.184-157.184s-70.144-157.184-157.184-157.184-157.184 70.144-157.184 157.184 70.144 157.184 157.184 157.184z m0-57.856c-54.784 0-99.328-44.544-99.328-99.328s44.544-99.328 99.328-99.328 99.328 44.544 99.328 99.328-44.544 99.328-99.328 99.328z" fill="#333333" p-id="3208"></path><path d="M966.656 872.96c-45.568-81.92-150.016-134.656-266.24-134.656-114.688 0-218.112 51.712-264.704 132.096-8.192 13.824-3.072 31.744 10.752 39.424 13.824 8.192 31.744 3.072 39.424-10.752 35.328-60.928 119.296-102.912 214.528-102.912 96.256 0 180.736 43.008 215.552 104.96 7.68 13.824 25.6 18.944 39.424 11.264s18.944-25.088 11.264-39.424z" fill="#333333" p-id="3209"></path><path d="M460.8 935.936H155.136c-8.192 0-14.336-6.656-14.336-14.336V102.4c0-8.192 6.656-14.336 14.336-14.336h675.84c8.192 0 14.336 6.656 14.336 14.336v353.28c0 24.064 19.456 43.52 43.52 43.52s43.52-19.456 43.52-43.52V102.4c0-55.808-45.568-101.376-101.376-101.376h-675.84C99.328 1.024 53.76 46.592 53.76 102.4v819.2c0 55.808 45.568 101.376 101.376 101.376h305.152c24.064 0 43.52-19.456 43.52-43.52s-19.456-43.52-43.008-43.52z" fill="#333333" p-id="3210"></path><path d="M222.208 567.808H396.8c15.872 0 29.184 12.8 29.184 29.184 0 15.872-12.8 29.184-29.184 29.184H222.208c-15.872 0-29.184-12.8-29.184-29.184 0-15.872 13.312-29.184 29.184-29.184zM454.656 171.52h174.592c15.872 0 29.184 12.8 29.184 29.184 0 15.872-12.8 29.184-29.184 29.184H454.656c-15.872 0-29.184-12.8-29.184-29.184s13.312-29.184 29.184-29.184z" fill="#333333" p-id="3211"></path><path d="M629.76 179.712c15.36 0 28.16 12.8 28.16 28.16V384c0 15.36-12.8 28.16-28.16 28.16S601.6 399.36 601.6 384V267.264l-124.928 125.44c-1.536 3.072-3.072 6.144-5.632 8.704-10.752 10.752-28.672 10.752-39.936 0l-72.192-72.704-104.96 104.96c-10.752 10.752-28.672 10.752-39.936 0-10.752-10.752-10.752-28.672 0-39.936l124.416-124.416c10.752-10.752 28.672-10.752 39.936 0 1.536 1.536 3.072 3.072 4.096 5.12 2.048 1.024 4.096 2.56 6.144 4.608l60.928 60.928 120.832-120.832c8.704-8.704 20.992-10.24 31.744-5.632v-5.632c-0.512-15.872 12.288-28.16 27.648-28.16zM222.208 744.448H396.8c15.872 0 29.184 12.8 29.184 29.184 0 15.872-12.8 29.184-29.184 29.184H222.208c-15.872 0-29.184-12.8-29.184-29.184s13.312-29.184 29.184-29.184z" fill="#333333" p-id="3212"></path></svg>
@@ -0,0 +1 @@
1
+ <?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg t="1767063975557" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="2791" xmlns:xlink="http://www.w3.org/1999/xlink" width="200" height="200"><path d="M810.666667 952.888889H213.333333a113.905778 113.905778 0 0 1-113.777777-113.777778V184.888889a113.905778 113.905778 0 0 1 113.777777-113.777778h597.333334a113.905778 113.905778 0 0 1 113.777777 113.777778v654.222222a113.905778 113.905778 0 0 1-113.777777 113.777778zM284.444444 696.888889a28.444444 28.444444 0 1 0 0 56.888889h412.444445a28.444444 28.444444 0 1 0 0-56.888889H284.444444z m0-213.333333a28.444444 28.444444 0 1 0 0 56.888888h284.444445a28.444444 28.444444 0 1 0 0-56.888888H284.444444z m384-213.333334a42.666667 42.666667 0 1 0 0 85.333334 42.666667 42.666667 0 0 0 0-85.333334z m-184.888888 0a42.666667 42.666667 0 1 0 0 85.333334 42.666667 42.666667 0 0 0 0-85.333334z m-184.888889 0a42.666667 42.666667 0 1 0 0 85.333334 42.666667 42.666667 0 0 0 0-85.333334z" p-id="2792"></path></svg>
@@ -0,0 +1 @@
1
+ <?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg t="1767061716901" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="2936" xmlns:xlink="http://www.w3.org/1999/xlink" width="200" height="200"><path d="M884.334288 764.6039123c0 40.42771757 129.60161314 58.50650698 126.6624217 127.38335931v61.11295355c0 31.99834226-26.89635754 57.95193874-60.11473839 57.95194526h-320.03890248C597.62468797 1011.10762454 567.4564006 981.49390543 567.4564006 949.49556339v-61.61206775c40.42771757-71.31693605 124.2777985-88.6193337 126.77333672-123.22412257 2.88373083-40.37226333-127.93792116-88.6193337-126.77333672-184.83619036v-61.61206776c0-39.5404173 18.63335139-61.66752194 63.38666823-61.66751555H947.72095632c37.54398683 0 63.38666837 12.86588319 63.38666822 52.35083995v61.11296013c-9.92669829 101.31884783-126.77333665 148.40133365-126.77333654 194.59651282z m63.38666832-246.44825152h-316.87788749c-1.66369202 17.35785182 0 34.66024955 0 61.61206118-1.99643044 63.55303758 126.77333665 127.05062086 126.77333677 184.83619034 0 53.90362349-106.97540086 105.92173137-126.77333677 123.22412902-1.71914634 23.40260407 0 61.61206126 0 61.61206133h316.87788749v-61.61206133s-126.77333665-71.31693605-126.77333668-123.22412902c0-71.3723904 126.77333665-135.59090465 126.77333668-184.83619034 0 0 3.16101493-46.19518566 0-61.61206118zM512 401.08719229v182.22974376l-499.10762454-285.15682279L512.99821521 12.89237546 1011.10762454 298.16011326 844.73841641 401.08719229h-332.73841641z m0 396.12508485l-499.10762454-285.15682294v-71.31692951l499.10762454 285.37864621v71.09510624z m0 213.83989328l-499.10762454-285.15682292v-71.31693604l499.10762454 285.37864631v71.09511265z" fill="#515151" p-id="2937"></path></svg>
@@ -0,0 +1 @@
1
+ <?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg t="1767064692172" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="3522" xmlns:xlink="http://www.w3.org/1999/xlink" width="200" height="200"><path d="M211.2 1024c-51.2 0-160-32-160-140.8V198.4C51.2 64 134.4 6.4 211.2 6.4H768c96 0 160 64 160 166.4v230.4c0 19.2-12.8 44.8-38.4 44.8-32-6.4-44.8-19.2-44.8-44.8V179.2c0-70.4-64-96-89.6-96H217.6c-38.4 0-83.2 38.4-89.6 121.6v640c0 96 64 96 89.6 96h192c25.6-6.4 38.4 19.2 38.4 38.4s-12.8 44.8-38.4 44.8H211.2z" p-id="3523"></path><path d="M268.8 172.8H704c19.2 0 32 12.8 32 32s-12.8 32-32 32H268.8c-19.2 0-32-12.8-32-32s12.8-32 32-32zM268.8 364.8H704c19.2 0 32 12.8 32 32s-12.8 32-32 32H268.8c-19.2 0-32-12.8-32-32s12.8-32 32-32zM268.8 550.4h185.6c19.2 0 32 12.8 32 32s-12.8 32-32 32H268.8c-19.2 0-32-12.8-32-32s12.8-32 32-32zM524.8 1017.6c-12.8 0-25.6-12.8-32-32v-147.2c0-6.4 0-12.8 6.4-19.2l294.4-294.4c19.2-12.8 38.4-19.2 64-19.2s44.8 6.4 57.6 25.6l70.4 70.4c19.2 19.2 25.6 38.4 25.6 57.6 0 25.6-6.4 44.8-25.6 57.6l-294.4 294.4c-6.4 6.4-12.8 6.4-19.2 6.4H524.8z m128-57.6l-102.4-102.4 6.4 102.4h96z m44.8-32l172.8-172.8-108.8-108.8-172.8 172.8 108.8 108.8z m217.6-217.6l32-32c12.8-12.8 12.8-25.6 0-38.4l-70.4-64c-6.4-6.4-12.8-6.4-19.2-6.4s-12.8 0-19.2 6.4l-32 32 108.8 102.4z" p-id="3524"></path></svg>
@@ -0,0 +1 @@
1
+ <?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg t="1767065452366" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="3153" xmlns:xlink="http://www.w3.org/1999/xlink" width="200" height="200"><path d="M288 320a32 32 0 1 1 0-64h448a32 32 0 0 1 0 64H288zM288 544a32 32 0 0 1 0-64h448a32 32 0 0 1 0 64H288zM288 768a32 32 0 0 1 0-64h128a32 32 0 0 1 0 64H288z" fill="#000000" p-id="3154"></path><path d="M807.968 802.24a32 32 0 0 1 41.984 48.32l-153.856 133.6a32 32 0 0 1-20.992 7.84H195.04C140.16 992 96 946.624 96 891.072V132.928C96 77.376 140.16 32 195.04 32h633.92C883.84 32 928 77.376 928 132.928v564.32a32 32 0 1 1-64 0V132.928C864 112.32 848.096 96 828.96 96H195.04C175.904 96 160 112.32 160 132.928v758.144C160 911.68 175.904 928 195.04 928h468.096l144.832-125.76z" fill="#000000" p-id="3155"></path><path d="M704 959.136a32 32 0 1 1-64 0v-186.24C640 717.408 684.16 672 739.04 672h157.632a32 32 0 0 1 0 64h-157.632c-19.136 0-35.04 16.32-35.04 36.928v186.24z" fill="#000000" p-id="3156"></path></svg>
@@ -0,0 +1 @@
1
+ <?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg t="1767064744554" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="3061" xmlns:xlink="http://www.w3.org/1999/xlink" width="200" height="200"><path d="M720.812 420.611l-34.3-33c-6.4-6.1-16.4-6.1-22.9 0l-205.5 197.8-97.8-94.6c-6.4-6.1-16.4-6.1-22.9 0l-34.2 33c-6.1 5.6-6.5 15-0.9 21.1l0.9 0.9 109 105.6v0.3l23.8 22.9 5.4 5 5 5c6.4 6.1 16.4 6.1 22.9 0l251.4-241.9c6.1-5.5 6.6-15 1.1-21.1l-1-1z" fill="#666666" p-id="3062"></path><path d="M801.1 111.3H742V69.8c0-3.2-2.7-5.9-5.9-5.8H295.9c-3.2-0.1-5.9 2.5-6 5.8v41.5h-67c-47.8 1.1-85.7 40.7-84.6 88.5v671.7c-1 47.8 36.8 87.4 84.6 88.5H801c47.8-1.1 85.7-40.7 84.6-88.5V199.8c1.1-47.8-36.7-87.3-84.5-88.5z m-1 760.2c0 1.6-0.3 3.1-1.1 4.5H225.1c-0.8-1.4-1.2-2.9-1.1-4.5V199.8c0-1.6 0.4-3.1 1.1-4.5h64.7v47.2c0.1 3.3 2.7 5.9 6 5.8h440.1c3.3 0 5.9-2.6 6-5.8v-47.2h57c0.8 1.4 1.1 2.9 1.1 4.5l0.1 671.7z" fill="#666666" p-id="3063"></path></svg>
@@ -0,0 +1 @@
1
+ <?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg t="1767061970867" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="3523" xmlns:xlink="http://www.w3.org/1999/xlink" width="200" height="200"><path d="M38.4 454.4H416a38.4 38.4 0 0 0 38.4-38.4V38.4A38.4 38.4 0 0 0 416 0H38.4A38.4 38.4 0 0 0 0 38.4V416a38.4 38.4 0 0 0 38.4 38.4zM569.6 608v377.6A38.4 38.4 0 0 0 608 1024h377.6a38.4 38.4 0 0 0 38.4-38.4V608a38.4 38.4 0 0 0-38.4-38.4H608a38.4 38.4 0 0 0-38.4 38.4zM288 543.36H211.2a6.4 6.4 0 0 0-6.4 6.4v264.96c0 7.04 5.76 12.8 12.8 12.8H480a6.4 6.4 0 0 0 6.4-6.4v-76.8a6.4 6.4 0 0 0-6.4-6.4H300.8a6.4 6.4 0 0 1-6.4-6.4v-181.76a6.4 6.4 0 0 0-6.4-6.4z m456.32-56.96h76.8a6.4 6.4 0 0 0 6.4-6.4V217.6a12.8 12.8 0 0 0-12.8-12.8h-264.96a6.4 6.4 0 0 0-6.4 6.4V288c0 3.52 2.88 6.4 6.4 6.4h181.76c3.52 0 6.4 2.88 6.4 6.4V480c0 3.52 2.88 6.4 6.4 6.4z" p-id="3524"></path></svg>
@@ -0,0 +1 @@
1
+ <?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg t="1767061924187" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="3230" xmlns:xlink="http://www.w3.org/1999/xlink" width="200" height="200"><path d="M907.946667 42.666667c40.490667 0 73.386667 35.157333 73.386666 78.421333v297.813333H120.490667v197.376L426.666667 616.234667v83.2H120.490667v198.698666H426.666667V981.333333H116.053333C75.562667 981.333333 42.666667 946.176 42.666667 902.912V121.088C42.666667 77.824 75.562667 42.666667 116.053333 42.666667h791.893334zM281.984 756.608c21.461333 0 38.912 18.56 38.912 41.6 0 22.954667-17.493333 41.6-38.912 41.6h-47.786667c-21.504 0-38.954667-18.645333-38.954666-41.6 0-22.912 17.493333-41.6 38.912-41.6h47.786666z m0-280.661333c21.461333 0 38.912 18.645333 38.912 41.6 0 22.912-17.493333 41.557333-38.912 41.557333h-47.786667c-21.504 0-38.954667-18.517333-38.954666-41.557333 0-22.954667 17.493333-41.6 38.912-41.6h47.786666zM903.509333 125.866667H120.490667v209.834666h783.018666V125.866667zM281.984 195.370667c21.461333 0 38.912 18.645333 38.912 41.6 0 22.912-17.493333 41.6-38.912 41.6h-47.786667c-21.504 0-38.954667-18.688-38.954666-41.6 0-22.954667 17.493333-41.6 38.912-41.6h47.786666z" fill="#333333" p-id="3231"></path><path d="M1024 909.568l-188.8-188.885333 125.525333-73.344L554.666667 512l135.381333 406.058667 73.344-125.568L952.234667 981.333333z" fill="#333333" p-id="3232"></path></svg>
@@ -0,0 +1 @@
1
+ <?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg t="1767061952854" class="icon" viewBox="0 0 1097 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="3376" xmlns:xlink="http://www.w3.org/1999/xlink" width="214.2578125" height="200"><path d="M792.918061 633.728498a108.571313 108.571313 0 1 0 108.571313 108.571313 108.815156 108.815156 0 0 0-108.571313-108.571313z m4.267261 166.545102a54.316137 54.316137 0 1 1 54.255176-54.316137 54.438059 54.438059 0 0 1-54.255176 54.316137z m293.404677-111.619356a38.405349 38.405349 0 0 0-35.966915-35.357306h-2.438434a61.936246 61.936246 0 0 1-62.241051-61.631442 68.215216 68.215216 0 0 1 5.486479-23.77474 45.232967 45.232967 0 0 0-17.069044-55.474393l-73.153047-39.624567a49.987915 49.987915 0 0 0-53.035958 10.363348 57.973789 57.973789 0 0 1-100.036791 0 49.926954 49.926954 0 0 0-53.035959-10.972957l-1.219217 0.609609-74.433225 40.234175-1.828826 1.219218a44.806241 44.806241 0 0 0-15.849827 54.316137 66.203507 66.203507 0 0 1 5.486479 23.77474 61.936246 61.936246 0 0 1-62.24105 61.631441h-3.048044a37.369014 37.369014 0 0 0-35.357306 35.357306 272.434137 272.434137 0 0 0 0 114.6674 38.405349 38.405349 0 0 0 35.966915 35.357306h2.438435a62.362972 62.362972 0 0 1 62.24105 61.570481 68.52002 68.52002 0 0 1-5.486479 23.77474 45.172006 45.172006 0 0 0 17.069045 55.535354l71.385181 39.014958a49.805032 49.805032 0 0 0 53.645567-10.972957 96.744904 96.744904 0 0 1 51.268093-30.480436 94.672234 94.672234 0 0 1 51.207133 31.090045 47.427558 47.427558 0 0 0 55.535354 10.363348l72.604398-39.624567 1.828827-1.219217a44.806241 44.806241 0 0 0 15.849826-54.255176 79.249134 79.249134 0 0 1-5.486478-23.77474 61.936246 61.936246 0 0 1 62.24105-61.570481h3.048044a37.369014 37.369014 0 0 0 35.357305-35.357306 375.640893 375.640893 0 0 0 6.096088-57.36418 443.002656 443.002656 0 0 0-6.705696-57.30322z m-54.864785 95.159921a117.898326 117.898326 0 0 0-103.084834 117.105835 132.346053 132.346053 0 0 0 6.096087 35.357305l-51.877702 28.65161c-6.705696-6.705696-13.411392-12.192174-21.336305-18.89787a97.537395 97.537395 0 0 0-131.126836-0.609609 188.978703 188.978703 0 0 0-21.336305 18.288262l-50.048876-28.042001a115.825657 115.825657 0 0 0 6.096087-35.966915 118.995622 118.995622 0 0 0-103.084834-117.715444 377.957406 377.957406 0 0 1-3.657652-37.79574 233.784944 233.784944 0 0 1 3.657652-37.795741 118.020248 118.020248 0 0 0 103.084834-117.715443 111.8632 111.8632 0 0 0-6.096087-35.357306l53.645567-29.261219a154.352928 154.352928 0 0 0 21.336306 17.678653 111.314552 111.314552 0 0 0 64.679485 24.384349 112.838574 112.838574 0 0 0 64.069876-23.77474 151.304884 151.304884 0 0 0 21.336305-17.069044l51.207133 28.65161a120.397722 120.397722 0 0 0-6.096087 35.966914 118.446974 118.446974 0 0 0 103.084834 117.105835 331.444261 331.444261 0 0 1 3.657652 37.795741c-1.219217 14.021001-3.048044 29.261219-4.267261 39.014958z m0 0" p-id="3377"></path><path d="M495.916693 997.847786H131.797405a122.897118 122.897118 0 0 1-131.736444-111.619357v-774.203073A122.897118 122.897118 0 0 1 131.797405 0.405999h638.016486a122.775196 122.775196 0 0 1 129.907618 111.619357v290.356633a45.293928 45.293928 0 0 1-53.706528 30.480436 43.891828 43.891828 0 0 1-34.138089-30.480436V112.025356a43.587023 43.587023 0 0 0-45.111045-37.186132H131.797405a43.099336 43.099336 0 0 0-45.111045 37.186132v773.410582a43.587023 43.587023 0 0 0 45.111045 37.795741h363.509679a37.369014 37.369014 0 1 1 0.609609 74.433224z m0 0" p-id="3378"></path><path d="M677.702013 357.392865h-47.000832a79.249134 79.249134 0 0 0-140.210005 0h-268.227837a37.429975 37.429975 0 1 0 0 73.153047h267.130541a79.249134 79.249134 0 0 0 140.210005 0h47.000833a41.575315 41.575315 0 0 0 45.111045-36.576523 40.356097 40.356097 0 0 0-43.891828-36.576524z m-82.358138 60.960872a43.34318 43.34318 0 0 1-70.775572 0 41.514354 41.514354 0 0 1 0-48.768697 43.34318 43.34318 0 0 1 70.775572 0 41.636276 41.636276 0 0 1 7.924914 24.384349 48.281011 48.281011 0 0 1-7.924914 24.384348z m81.74853-245.794235H409.961864a79.249134 79.249134 0 0 0-140.210006 0h-46.939871a37.429975 37.429975 0 1 0 0 73.153046h46.939871a79.249134 79.249134 0 0 0 140.210006 0h267.130541a37.429975 37.429975 0 1 0 0-73.153046z m-301.939199 60.960872a43.34318 43.34318 0 0 1-70.775572 0 41.514354 41.514354 0 0 1 0-48.768698 43.34318 43.34318 0 0 1 70.775572 0 41.697236 41.697236 0 0 1 7.924913 24.384349 46.330263 46.330263 0 0 1-7.924913 24.384349z m118.934661 308.035286H409.900903a79.249134 79.249134 0 0 0-140.210006 0h-46.939871a37.429975 37.429975 0 1 0 0 73.153046h46.939871a79.249134 79.249134 0 0 0 140.210006 0h84.186964a37.429975 37.429975 0 1 0 0-73.153046zM375.153206 603.187101a43.34318 43.34318 0 0 1-70.775572 0 41.514354 41.514354 0 0 1 0-48.768697 43.34318 43.34318 0 0 1 70.775572 0 41.636276 41.636276 0 0 1 7.924913 24.384348 50.231758 50.231758 0 0 1-7.924913 24.384349z m0 0" p-id="3379"></path></svg>