@flyfish-group/file-viewer3 1.0.14 → 1.0.15

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 (250) hide show
  1. package/README.md +8 -8
  2. package/dist/components/3MFLoader.js +1 -1
  3. package/dist/components/AMFLoader.js +1 -1
  4. package/dist/components/ArchiveViewer.js +293 -1
  5. package/dist/components/AudioViewer.js +1 -1
  6. package/dist/components/CadViewer.js +1 -1
  7. package/dist/components/CodeViewer.js +1 -1
  8. package/dist/components/ColladaLoader.js +1 -1
  9. package/dist/components/DrawingViewer.js +1 -1
  10. package/dist/components/EdaViewer.js +1 -1
  11. package/dist/components/EmailViewer.js +1 -1
  12. package/dist/components/EpubViewer.js +1 -1
  13. package/dist/components/FBXLoader.js +1 -1
  14. package/dist/components/GLTFLoader.js +1 -1
  15. package/dist/components/ImageViewer.js +1 -1
  16. package/dist/components/KMZLoader.js +1 -1
  17. package/dist/components/MarkdownViewer.js +1 -1
  18. package/dist/components/ModelViewer.js +1 -1
  19. package/dist/components/OBJLoader.js +1 -1
  20. package/dist/components/OfdViewer.js +1 -1
  21. package/dist/components/PCDLoader.js +1 -1
  22. package/dist/components/PLYLoader.js +1 -1
  23. package/dist/components/PptxRender.js +1 -1
  24. package/dist/components/STLLoader.js +1 -1
  25. package/dist/components/TDSLoader.js +1 -1
  26. package/dist/components/USDLoader.js +1 -1
  27. package/dist/components/UmdViewer.js +1 -1
  28. package/dist/components/VRMLLoader.js +1 -1
  29. package/dist/components/VTKLoader.js +1 -1
  30. package/dist/components/XYZLoader.js +1 -1
  31. package/dist/components/XlsxTable.js +1 -1
  32. package/dist/components/__vite-browser-external.js +1 -1
  33. package/dist/components/_plugin-vue_export-helper.js +1 -1
  34. package/dist/components/ar-SA-G6X2FPQ2.js +1 -1
  35. package/dist/components/arc.js +1 -1
  36. package/dist/components/architecture-7EHR7CIX.js +1 -1
  37. package/dist/components/architectureDiagram-3BPJPVTR.js +1 -1
  38. package/dist/components/archive.js +1 -1
  39. package/dist/components/asyncToGenerator.js +1 -1
  40. package/dist/components/audio.js +1 -1
  41. package/dist/components/az-AZ-76LH7QW2.js +1 -1
  42. package/dist/components/bash.js +1 -1
  43. package/dist/components/bg-BG-XCXSNQG7.js +1 -1
  44. package/dist/components/blockDiagram-GPEHLZMM.js +1 -1
  45. package/dist/components/bn-BD-2XOGV67Q.js +1 -1
  46. package/dist/components/c4Diagram-AAUBKEIU.js +1 -1
  47. package/dist/components/ca-ES-6MX7JW3Y.js +1 -1
  48. package/dist/components/cad.js +1 -1
  49. package/dist/components/cfb.js +1 -1
  50. package/dist/components/channel.js +1 -1
  51. package/dist/components/chunk-2J33WTMH.js +1 -1
  52. package/dist/components/chunk-3OPIFGDE.js +1 -1
  53. package/dist/components/chunk-4BX2VUAB.js +1 -1
  54. package/dist/components/chunk-55IACEB6.js +1 -1
  55. package/dist/components/chunk-5ZQYHXKU.js +1 -1
  56. package/dist/components/chunk-6U3AYISY.js +1 -1
  57. package/dist/components/chunk-727SXJPM.js +1 -1
  58. package/dist/components/chunk-AGHRB4JF.js +1 -1
  59. package/dist/components/chunk-AQP2D5EJ.js +1 -1
  60. package/dist/components/chunk-BSJP7CBP.js +1 -1
  61. package/dist/components/chunk-CSCIHK7Q.js +1 -1
  62. package/dist/components/chunk-FMBD7UC4.js +1 -1
  63. package/dist/components/chunk-K2UTITRG.js +1 -1
  64. package/dist/components/chunk-KSCS5N6A.js +1 -1
  65. package/dist/components/chunk-L5ZTLDWV.js +1 -1
  66. package/dist/components/chunk-LZXEDZCA.js +1 -1
  67. package/dist/components/chunk-ND2GUHAM.js +1 -1
  68. package/dist/components/chunk-NZK2D7GU.js +1 -1
  69. package/dist/components/chunk-O5CBEL6O.js +1 -1
  70. package/dist/components/chunk-QZHKN3VN.js +1 -1
  71. package/dist/components/chunk-SRAX5OIU.js +1 -1
  72. package/dist/components/chunk-WU5MYG2G.js +1 -1
  73. package/dist/components/chunk-XPW4576I.js +1 -1
  74. package/dist/components/chunk-Z3N5DIM6.js +1 -1
  75. package/dist/components/chunk-ZUYEQ4TG.js +1 -1
  76. package/dist/components/chunk.js +1 -1
  77. package/dist/components/classDiagram-4FO5ZUOK.js +1 -1
  78. package/dist/components/classDiagram-v2-Q7XG4LA2.js +1 -1
  79. package/dist/components/core.js +1 -1
  80. package/dist/components/cose-bilkent-S5V4N54A.js +1 -1
  81. package/dist/components/cpp.js +1 -1
  82. package/dist/components/cs-CZ-2BRQDIVT.js +1 -1
  83. package/dist/components/csharp.js +1 -1
  84. package/dist/components/css.js +1 -1
  85. package/dist/components/cytoscape.esm.js +1 -1
  86. package/dist/components/da-DK-5WZEPLOC.js +1 -1
  87. package/dist/components/dagre-BM42HDAG.js +1 -1
  88. package/dist/components/dagre.js +1 -1
  89. package/dist/components/de-DE-XR44H4JA.js +1 -1
  90. package/dist/components/defaultLocale.js +1 -1
  91. package/dist/components/defineProperty.js +1 -1
  92. package/dist/components/diagram-2AECGRRQ.js +1 -1
  93. package/dist/components/diagram-5GNKFQAL.js +1 -1
  94. package/dist/components/diagram-KO2AKTUF.js +1 -1
  95. package/dist/components/diagram-LMA3HP47.js +1 -1
  96. package/dist/components/diagram-OG6HWLK6.js +1 -1
  97. package/dist/components/diff.js +1 -1
  98. package/dist/components/directory-open-01563666.js +1 -1
  99. package/dist/components/directory-open-4ed118d0.js +1 -1
  100. package/dist/components/dist.js +1 -1
  101. package/dist/components/dist2.js +1 -1
  102. package/dist/components/dist3.js +1 -1
  103. package/dist/components/docx-preview.js +1 -1
  104. package/dist/components/drawing.js +1 -1
  105. package/dist/components/ebook.js +1 -1
  106. package/dist/components/eda.js +1 -1
  107. package/dist/components/el-GR-BZB4AONW.js +1 -1
  108. package/dist/components/email.js +1 -1
  109. package/dist/components/en-B4ZKOASM.js +1 -1
  110. package/dist/components/erDiagram-TEJ5UH35.js +1 -1
  111. package/dist/components/es-ES-U4NZUMDT.js +1 -1
  112. package/dist/components/eu-ES-A7QVB2H4.js +1 -1
  113. package/dist/components/eventmodeling-FCH6USID.js +1 -1
  114. package/dist/components/fa-IR-HGAKTJCU.js +1 -1
  115. package/dist/components/fflate.module.js +1 -1
  116. package/dist/components/fi-FI-Z5N7JZ37.js +1 -1
  117. package/dist/components/file-open-002ab408.js +1 -1
  118. package/dist/components/file-open-7c801643.js +1 -1
  119. package/dist/components/file-save-3189631c.js +1 -1
  120. package/dist/components/file-save-745eba88.js +1 -1
  121. package/dist/components/flowDiagram-I6XJVG4X.js +1 -1
  122. package/dist/components/fr-FR-RHASNOE6.js +1 -1
  123. package/dist/components/ganttDiagram-6RSMTGT7.js +1 -1
  124. package/dist/components/gitGraph-WXDBUCRP.js +1 -1
  125. package/dist/components/gitGraphDiagram-PVQCEYII.js +1 -1
  126. package/dist/components/gl-ES-HMX3MZ6V.js +1 -1
  127. package/dist/components/go.js +1 -1
  128. package/dist/components/graphlib.js +1 -1
  129. package/dist/components/he-IL-6SHJWFNN.js +1 -1
  130. package/dist/components/hi-IN-IWLTKZ5I.js +1 -1
  131. package/dist/components/hu-HU-A5ZG7DT2.js +1 -1
  132. package/dist/components/id-ID-SAP4L64H.js +1 -1
  133. package/dist/components/image-GAAHSSAO.js +1 -1
  134. package/dist/components/image-blob-reduce.esm.js +1 -1
  135. package/dist/components/image.js +1 -1
  136. package/dist/components/info-J43DQDTF.js +1 -1
  137. package/dist/components/infoDiagram-5YYISTIA.js +1 -1
  138. package/dist/components/ini.js +1 -1
  139. package/dist/components/init.js +1 -1
  140. package/dist/components/ishikawaDiagram-YF4QCWOH.js +1 -1
  141. package/dist/components/it-IT-JPQ66NNP.js +1 -1
  142. package/dist/components/ja-JP-DBVTYXUO.js +1 -1
  143. package/dist/components/java.js +1 -1
  144. package/dist/components/javascript.js +1 -1
  145. package/dist/components/journeyDiagram-JHISSGLW.js +1 -1
  146. package/dist/components/json.js +1 -1
  147. package/dist/components/jszip.min.js +1 -1
  148. package/dist/components/kaa-6HZHGXH3.js +1 -1
  149. package/dist/components/kab-KAB-ZGHBKWFO.js +1 -1
  150. package/dist/components/kanban-definition-UN3LZRKU.js +1 -1
  151. package/dist/components/katex.js +1 -1
  152. package/dist/components/kk-KZ-P5N5QNE5.js +1 -1
  153. package/dist/components/km-KH-HSX4SM5Z.js +1 -1
  154. package/dist/components/ko-KR-MTYHY66A.js +1 -1
  155. package/dist/components/ku-TR-6OUDTVRD.js +1 -1
  156. package/dist/components/lib.js +1 -1
  157. package/dist/components/libarchive.js +1 -1
  158. package/dist/components/linear.js +1 -1
  159. package/dist/components/lt-LT-XHIRWOB4.js +1 -1
  160. package/dist/components/lv-LV-5QDEKY6T.js +1 -1
  161. package/dist/components/markdown.js +1 -1
  162. package/dist/components/md.js +1 -1
  163. package/dist/components/mermaid-parser.core.js +1 -1
  164. package/dist/components/mindmap-definition-RKZ34NQL.js +1 -1
  165. package/dist/components/model.js +1 -1
  166. package/dist/components/mp4.js +1 -1
  167. package/dist/components/mr-IN-CRQNXWMA.js +1 -1
  168. package/dist/components/my-MM-5M5IBNSE.js +1 -1
  169. package/dist/components/nb-NO-T6EIAALU.js +1 -1
  170. package/dist/components/nestedRender.js +1 -1
  171. package/dist/components/nl-NL-IS3SIHDZ.js +1 -1
  172. package/dist/components/nn-NO-6E72VCQL.js +1 -1
  173. package/dist/components/objectSpread2.js +1 -1
  174. package/dist/components/objectWithoutProperties.js +1 -1
  175. package/dist/components/oc-FR-POXYY2M6.js +1 -1
  176. package/dist/components/ofd.js +1 -1
  177. package/dist/components/ofd2.js +1 -1
  178. package/dist/components/ordinal.js +1 -1
  179. package/dist/components/pa-IN-N4M65BXN.js +1 -1
  180. package/dist/components/packet-YPE3B663.js +1 -1
  181. package/dist/components/pdf.js +1 -1
  182. package/dist/components/percentages-BXMCSKIN.js +1 -1
  183. package/dist/components/php.js +1 -1
  184. package/dist/components/pica.js +1 -1
  185. package/dist/components/pie-LRSECV5Y.js +1 -1
  186. package/dist/components/pie.js +1 -1
  187. package/dist/components/pieDiagram-4H26LBE5.js +1 -1
  188. package/dist/components/pl-PL-T2D74RX3.js +1 -1
  189. package/dist/components/postal-mime.js +1 -1
  190. package/dist/components/pptx.js +1 -1
  191. package/dist/components/prod.js +1 -1
  192. package/dist/components/pt-BR-5N22H2LF.js +1 -1
  193. package/dist/components/pt-PT-UZXXM6DQ.js +1 -1
  194. package/dist/components/python.js +1 -1
  195. package/dist/components/quadrantDiagram-W4KKPZXB.js +1 -1
  196. package/dist/components/radar-GUYGQ44K.js +1 -1
  197. package/dist/components/requirementDiagram-4Y6WPE33.js +1 -1
  198. package/dist/components/ro-RO-JPDTUUEW.js +1 -1
  199. package/dist/components/rough.esm.js +1 -1
  200. package/dist/components/roundRect.js +1 -1
  201. package/dist/components/ru-RU-B4JR7IUQ.js +1 -1
  202. package/dist/components/rust.js +1 -1
  203. package/dist/components/sankeyDiagram-5OEKKPKP.js +1 -1
  204. package/dist/components/sequenceDiagram-3UESZ5HK.js +1 -1
  205. package/dist/components/shared.js +1 -1
  206. package/dist/components/shared2.js +1 -1
  207. package/dist/components/si-LK-N5RQ5JYF.js +1 -1
  208. package/dist/components/sk-SK-C5VTKIMK.js +1 -1
  209. package/dist/components/sl-SI-NN7IZMDC.js +1 -1
  210. package/dist/components/sql.js +1 -1
  211. package/dist/components/src.js +1 -1
  212. package/dist/components/src2.js +1 -1
  213. package/dist/components/stateDiagram-AJRCARHV.js +1 -1
  214. package/dist/components/stateDiagram-v2-BHNVJYJU.js +1 -1
  215. package/dist/components/subset-shared.chunk.js +1 -1
  216. package/dist/components/subset-worker.chunk.js +1 -1
  217. package/dist/components/sv-SE-XGPEYMSR.js +1 -1
  218. package/dist/components/ta-IN-2NMHFXQM.js +1 -1
  219. package/dist/components/text.js +1 -1
  220. package/dist/components/th-TH-HPSO5L25.js +1 -1
  221. package/dist/components/three.module.js +1 -1
  222. package/dist/components/time.js +1 -1
  223. package/dist/components/timeline-definition-PNZ67QCA.js +1 -1
  224. package/dist/components/tr-TR-DEFEU3FU.js +1 -1
  225. package/dist/components/treeView-BLDUP644.js +1 -1
  226. package/dist/components/treemap-LRROVOQU.js +1 -1
  227. package/dist/components/typescript.js +1 -1
  228. package/dist/components/uk-UA-QMV73CPH.js +1 -1
  229. package/dist/components/umd.js +1 -1
  230. package/dist/components/use.js +1 -1
  231. package/dist/components/util.js +1 -1
  232. package/dist/components/vennDiagram-CIIHVFJN.js +1 -1
  233. package/dist/components/vi-VN-M7AON7JQ.js +1 -1
  234. package/dist/components/wardley-L42UT6IY.js +1 -1
  235. package/dist/components/wardleyDiagram-YWT4CUSO.js +1 -1
  236. package/dist/components/word.js +1 -1
  237. package/dist/components/worker-ref.js +1 -1
  238. package/dist/components/wrapAsyncGenerator.js +1 -1
  239. package/dist/components/xlsx.js +1 -1
  240. package/dist/components/xml.js +1 -1
  241. package/dist/components/xychartDiagram-2RQKCTM6.js +1 -1
  242. package/dist/components/yaml.js +1 -1
  243. package/dist/components/zh-CN-LNUGB5OW.js +1 -1
  244. package/dist/components/zh-HK-E62DVLB3.js +1 -1
  245. package/dist/components/zh-TW-RAJ6MFWO.js +1 -1
  246. package/dist/file-viewer3.css +1 -1
  247. package/dist/index.mjs +1 -1
  248. package/package.json +1 -1
  249. package/dist/components/worker-bundle.js +0 -1
  250. package/dist/worker/pptx.worker.js +0 -1
@@ -1 +1 @@
1
- const bZ=X;(function(aD,aE){const bR=X,aF=aD();while(!![]){try{const aG=parseInt(bR(0x18f))/0x1*(parseInt(bR(0x209))/0x2)+-parseInt(bR(0x21c))/0x3+-parseInt(bR(0x1d5))/0x4+parseInt(bR(0x1f3))/0x5+-parseInt(bR(0x1ca))/0x6*(parseInt(bR(0x1f4))/0x7)+parseInt(bR(0x1ef))/0x8+parseInt(bR(0x1af))/0x9;if(aG===aE)break;else aF['push'](aF['shift']());}catch(aH){aF['push'](aF['shift']());}}}(Q,0x908d1));import{n as Y,t}from'./asyncToGenerator.js';import{t as Z}from'./_plugin-vue_export-helper.js';import{Bt as a0,D as a1,It as a2,Nt as a3,T as a4,Tt as a5,Y as a6,Z as a7,_t as a8,a as a9,at as aa,et as ab,g as ac,gt as ad,i as af,jt as ag,mt as ah,p as ai,pt as aj,s as ak,t as al,wt as am,x as an,xt as ao,yt as ap,zt as aq}from'./three.module.js';import{createCommentVNode as ar,createElementBlock as as,createElementVNode as at,defineComponent as au,nextTick as av,normalizeClass as aw,onBeforeUnmount as ax,onMounted as ay,openBlock as az,ref as aA,toDisplayString as aB,watch as aC}from'vue';Y();var E={'type':'change'},D={'type':'start'},O={'type':'end'},k=new ao(),A=new ah(),j=Math['cos'](0x46*a7['DEG2RAD']),M=new a0(),N=0x2*Math['PI'],P={'NONE':-0x1,'ROTATE':0x0,'DOLLY':0x1,'PAN':0x2,'TOUCH_ROTATE':0x3,'TOUCH_PAN':0x4,'TOUCH_DOLLY_PAN':0x5,'TOUCH_DOLLY_ROTATE':0x6},F=0.000001,he=class extends ac{constructor(aD,aE=null){const bS=X;super(aD,aE),this['state']=P['NONE'],this['target']=new a0(),this['cursor']=new a0(),this['minDistance']=0x0,this['maxDistance']=Infinity,this['minZoom']=0x0,this['maxZoom']=Infinity,this['minTargetRadius']=0x0,this['maxTargetRadius']=Infinity,this[bS(0x1e8)]=0x0,this['maxPolarAngle']=Math['PI'],this[bS(0x1c3)]=-Infinity,this['maxAzimuthAngle']=Infinity,this['enableDamping']=!0x1,this['dampingFactor']=0.05,this['enableZoom']=!0x0,this[bS(0x180)]=0x1,this['enableRotate']=!0x0,this[bS(0x230)]=0x1,this['keyRotateSpeed']=0x1,this['enablePan']=!0x0,this['panSpeed']=0x1,this['screenSpacePanning']=!0x0,this['keyPanSpeed']=0x7,this['zoomToCursor']=!0x1,this['autoRotate']=!0x1,this[bS(0x1fb)]=0x2,this['keys']={'LEFT':'ArrowLeft','UP':'ArrowUp','RIGHT':bS(0x1f7),'BOTTOM':'ArrowDown'},this[bS(0x22f)]={'LEFT':a6['ROTATE'],'MIDDLE':a6['DOLLY'],'RIGHT':a6['PAN']},this[bS(0x1f5)]={'ONE':a3['ROTATE'],'TWO':a3['DOLLY_PAN']},this['target0']=this['target']['clone'](),this['position0']=this['object']['position']['clone'](),this['zoom0']=this['object']['zoom'],this['_cursorStyle']='auto',this[bS(0x1f9)]=null,this['_lastPosition']=new a0(),this['_lastQuaternion']=new ap(),this['_lastTargetPosition']=new a0(),this['_quat']=new ap()['setFromUnitVectors'](aD['up'],new a0(0x0,0x1,0x0)),this['_quatInverse']=this['_quat']['clone']()[bS(0x1ce)](),this[bS(0x1bb)]=new ag(),this['_sphericalDelta']=new ag(),this['_scale']=0x1,this['_panOffset']=new a0(),this['_rotateStart']=new aq(),this[bS(0x1bd)]=new aq(),this[bS(0x1a0)]=new aq(),this[bS(0x1d9)]=new aq(),this['_panEnd']=new aq(),this['_panDelta']=new aq(),this['_dollyStart']=new aq(),this['_dollyEnd']=new aq(),this['_dollyDelta']=new aq(),this['_dollyDirection']=new a0(),this['_mouse']=new aq(),this['_performCursorZoom']=!0x1,this['_pointers']=[],this['_pointerPositions']={},this['_controlActive']=!0x1,this['_onPointerMove']=L[bS(0x1b6)](this),this['_onPointerDown']=I['bind'](this),this['_onPointerUp']=R['bind'](this),this['_onContextMenu']=G[bS(0x1b6)](this),this['_onMouseWheel']=V['bind'](this),this['_onKeyDown']=H['bind'](this),this['_onTouchStart']=U['bind'](this),this['_onTouchMove']=W['bind'](this),this['_onMouseDown']=z['bind'](this),this['_onMouseMove']=B['bind'](this),this['_interceptControlDown']=K['bind'](this),this['_interceptControlUp']=q['bind'](this),this['domElement']!==null&&this[bS(0x1db)](this['domElement']),this['update']();}set['cursorStyle'](aD){const bT=X;this['_cursorStyle']=aD,aD==='grab'?this['domElement'][bT(0x198)][bT(0x20e)]='grab':this['domElement'][bT(0x198)]['cursor']='auto';}get['cursorStyle'](){return this['_cursorStyle'];}['connect'](aD){const bU=X;super[bU(0x1db)](aD),this[bU(0x216)]['addEventListener']('pointerdown',this['_onPointerDown']),this['domElement']['addEventListener']('pointercancel',this['_onPointerUp']),this['domElement']['addEventListener']('contextmenu',this[bU(0x1ec)]),this[bU(0x216)]['addEventListener']('wheel',this[bU(0x1e1)],{'passive':!0x1}),this['domElement']['getRootNode']()['addEventListener']('keydown',this['_interceptControlDown'],{'passive':!0x0,'capture':!0x0}),this['domElement']['style']['touchAction']='none';}['disconnect'](){const bV=X;this['domElement']['removeEventListener']('pointerdown',this['_onPointerDown']),this['domElement'][bV(0x1cb)]['removeEventListener']('pointermove',this['_onPointerMove']),this['domElement']['ownerDocument'][bV(0x1a1)]('pointerup',this['_onPointerUp']),this['domElement']['removeEventListener']('pointercancel',this['_onPointerUp']),this['domElement']['removeEventListener']('wheel',this['_onMouseWheel']),this['domElement']['removeEventListener']('contextmenu',this['_onContextMenu']),this['stopListenToKeyEvents'](),this[bV(0x216)]['getRootNode']()[bV(0x1a1)]('keydown',this['_interceptControlDown'],{'capture':!0x0}),this[bV(0x216)]['style']['touchAction']='';}['dispose'](){this['disconnect']();}['getPolarAngle'](){return this['_spherical']['phi'];}['getAzimuthalAngle'](){return this['_spherical']['theta'];}['getDistance'](){return this['object']['position']['distanceTo'](this['target']);}['listenToKeyEvents'](aD){aD['addEventListener']('keydown',this['_onKeyDown']),this['_domElementKeyEvents']=aD;}['stopListenToKeyEvents'](){const bW=X;this['_domElementKeyEvents']!==null&&(this['_domElementKeyEvents']['removeEventListener'](bW(0x205),this['_onKeyDown']),this['_domElementKeyEvents']=null);}['saveState'](){const bX=X;this['target0']['copy'](this['target']),this[bX(0x1d3)]['copy'](this['object']['position']),this['zoom0']=this[bX(0x208)]['zoom'];}['reset'](){const bY=X;this['target']['copy'](this['target0']),this['object']['position']['copy'](this['position0']),this['object'][bY(0x199)]=this['zoom0'],this['object']['updateProjectionMatrix'](),this['dispatchEvent'](E),this['update'](),this['state']=P['NONE'];}['pan'](aD,aE){this['_pan'](aD,aE),this['update']();}['dollyIn'](aD){this['_dollyIn'](aD),this['update']();}[bZ(0x1da)](aD){const c0=bZ;this[c0(0x22c)](aD),this['update']();}['rotateLeft'](aD){this['_rotateLeft'](aD),this['update']();}['rotateUp'](aD){this['_rotateUp'](aD),this['update']();}['update'](aD=null){const c1=bZ;let aE=this['object']['position'];M['copy'](aE)['sub'](this['target']),M['applyQuaternion'](this['_quat']),this[c1(0x1bb)]['setFromVector3'](M),this['autoRotate']&&this['state']===P['NONE']&&this['_rotateLeft'](this[c1(0x1d6)](aD)),this['enableDamping']?(this['_spherical'][c1(0x218)]+=this['_sphericalDelta']['theta']*this[c1(0x1b2)],this[c1(0x1bb)]['phi']+=this['_sphericalDelta']['phi']*this[c1(0x1b2)]):(this['_spherical']['theta']+=this['_sphericalDelta']['theta'],this['_spherical']['phi']+=this['_sphericalDelta']['phi']);let aF=this['minAzimuthAngle'],aG=this['maxAzimuthAngle'];isFinite(aF)&&isFinite(aG)&&(aF<-Math['PI']?aF+=N:aF>Math['PI']&&(aF-=N),aG<-Math['PI']?aG+=N:aG>Math['PI']&&(aG-=N),aF<=aG?this['_spherical'][c1(0x218)]=Math['max'](aF,Math[c1(0x215)](aG,this['_spherical']['theta'])):this['_spherical']['theta']=this['_spherical']['theta']>(aF+aG)/0x2?Math['max'](aF,this['_spherical'][c1(0x218)]):Math['min'](aG,this['_spherical']['theta'])),this['_spherical']['phi']=Math[c1(0x202)](this['minPolarAngle'],Math['min'](this['maxPolarAngle'],this['_spherical']['phi'])),this['_spherical']['makeSafe'](),this['enableDamping']===!0x0?this['target'][c1(0x19e)](this[c1(0x214)],this['dampingFactor']):this['target']['add'](this['_panOffset']),this[c1(0x197)]['sub'](this['cursor']),this[c1(0x197)]['clampLength'](this['minTargetRadius'],this[c1(0x1b3)]),this['target']['add'](this[c1(0x20e)]);let aH=!0x1;if(this['zoomToCursor']&&this['_performCursorZoom']||this['object'][c1(0x1ed)])this['_spherical']['radius']=this['_clampDistance'](this['_spherical']['radius']);else{let aI=this['_spherical'][c1(0x194)];this['_spherical'][c1(0x194)]=this['_clampDistance'](this[c1(0x1bb)]['radius']*this['_scale']),aH=aI!=this['_spherical']['radius'];}if(M['setFromSpherical'](this['_spherical']),M['applyQuaternion'](this['_quatInverse']),aE[c1(0x229)](this['target'])['add'](M),this[c1(0x208)][c1(0x211)](this['target']),this['enableDamping']===!0x0?(this['_sphericalDelta']['theta']*=0x1-this['dampingFactor'],this['_sphericalDelta'][c1(0x1bf)]*=0x1-this['dampingFactor'],this['_panOffset']['multiplyScalar'](0x1-this['dampingFactor'])):(this['_sphericalDelta']['set'](0x0,0x0,0x0),this[c1(0x214)]['set'](0x0,0x0,0x0)),this[c1(0x1ab)]&&this['_performCursorZoom']){let aJ=null;if(this['object']['isPerspectiveCamera']){let aK=M[c1(0x1ff)]();aJ=this['_clampDistance'](aK*this['_scale']);let aL=aK-aJ;this['object']['position']['addScaledVector'](this['_dollyDirection'],aL),this['object']['updateMatrixWorld'](),aH=!!aL;}else{if(this['object']['isOrthographicCamera']){let aM=new a0(this['_mouse']['x'],this['_mouse']['y'],0x0);aM['unproject'](this['object']);let aN=this['object']['zoom'];this['object']['zoom']=Math['max'](this[c1(0x212)],Math['min'](this['maxZoom'],this['object']['zoom']/this['_scale'])),this['object']['updateProjectionMatrix'](),aH=aN!==this['object']['zoom'];let aO=new a0(this['_mouse']['x'],this['_mouse']['y'],0x0);aO[c1(0x1e4)](this['object']),this['object']['position'][c1(0x226)](aO)['add'](aM),this[c1(0x208)]['updateMatrixWorld'](),aJ=M['length']();}else console['warn']('WARNING:\x20OrbitControls.js\x20encountered\x20an\x20unknown\x20camera\x20type\x20-\x20zoom\x20to\x20cursor\x20disabled.'),this['zoomToCursor']=!0x1;}aJ!==null&&(this['screenSpacePanning']?this['target']['set'](0x0,0x0,-0x1)['transformDirection'](this['object']['matrix'])['multiplyScalar'](aJ)['add'](this[c1(0x208)]['position']):(k['origin']['copy'](this['object']['position']),k['direction'][c1(0x20b)](0x0,0x0,-0x1)['transformDirection'](this['object'][c1(0x1d1)]),Math[c1(0x1d8)](this['object']['up']['dot'](k['direction']))<j?this['object']['lookAt'](this[c1(0x197)]):(A['setFromNormalAndCoplanarPoint'](this[c1(0x208)]['up'],this['target']),k['intersectPlane'](A,this['target']))));}else{if(this['object']['isOrthographicCamera']){let aP=this['object']['zoom'];this['object']['zoom']=Math['max'](this['minZoom'],Math[c1(0x215)](this['maxZoom'],this['object'][c1(0x199)]/this['_scale'])),aP!==this['object'][c1(0x199)]&&(this[c1(0x208)][c1(0x1c1)](),aH=!0x0);}}return this['_scale']=0x1,this['_performCursorZoom']=!0x1,aH||this['_lastPosition']['distanceToSquared'](this['object']['position'])>F||0x8*(0x1-this['_lastQuaternion']['dot'](this['object']['quaternion']))>F||this['_lastTargetPosition']['distanceToSquared'](this['target'])>F?(this[c1(0x19b)](E),this[c1(0x1be)]['copy'](this['object']['position']),this[c1(0x21e)]['copy'](this['object']['quaternion']),this['_lastTargetPosition']['copy'](this['target']),!0x0):!0x1;}['_getAutoRotationAngle'](aD){return aD===null?N/0x3c/0x3c*this['autoRotateSpeed']:N/0x3c*this['autoRotateSpeed']*aD;}[bZ(0x221)](aD){const c2=bZ;let aE=Math['abs'](aD*0.01);return Math['pow'](0.95,this[c2(0x180)]*aE);}['_rotateLeft'](aD){this['_sphericalDelta']['theta']-=aD;}['_rotateUp'](aD){const c3=bZ;this[c3(0x225)]['phi']-=aD;}['_panLeft'](aD,aE){M['setFromMatrixColumn'](aE,0x0),M['multiplyScalar'](-aD),this['_panOffset']['add'](M);}[bZ(0x1a4)](aD,aE){const c4=bZ;this[c4(0x188)]===!0x0?M['setFromMatrixColumn'](aE,0x1):(M['setFromMatrixColumn'](aE,0x0),M['crossVectors'](this['object']['up'],M)),M['multiplyScalar'](aD),this['_panOffset']['add'](M);}['_pan'](aD,aE){const c5=bZ;let aF=this[c5(0x216)];if(this['object']['isPerspectiveCamera']){let aG=this['object']['position'];M[c5(0x229)](aG)[c5(0x226)](this['target']);let aH=M['length']();aH*=Math['tan'](this['object']['fov']/0x2*Math['PI']/0xb4),this['_panLeft'](0x2*aD*aH/aF['clientHeight'],this[c5(0x208)][c5(0x1d1)]),this['_panUp'](0x2*aE*aH/aF['clientHeight'],this['object']['matrix']);}else this['object']['isOrthographicCamera']?(this['_panLeft'](aD*(this['object']['right']-this['object']['left'])/this['object']['zoom']/aF['clientWidth'],this['object']['matrix']),this['_panUp'](aE*(this['object']['top']-this['object']['bottom'])/this['object']['zoom']/aF['clientHeight'],this['object']['matrix'])):(console[c5(0x1b0)](c5(0x1c7)),this['enablePan']=!0x1);}['_dollyOut'](aD){const c6=bZ;this[c6(0x208)]['isPerspectiveCamera']||this[c6(0x208)]['isOrthographicCamera']?this[c6(0x1a5)]/=aD:(console['warn']('WARNING:\x20OrbitControls.js\x20encountered\x20an\x20unknown\x20camera\x20type\x20-\x20dolly/zoom\x20disabled.'),this['enableZoom']=!0x1);}['_dollyIn'](aD){this['object']['isPerspectiveCamera']||this['object']['isOrthographicCamera']?this['_scale']*=aD:(console['warn']('WARNING:\x20OrbitControls.js\x20encountered\x20an\x20unknown\x20camera\x20type\x20-\x20dolly/zoom\x20disabled.'),this['enableZoom']=!0x1);}['_updateZoomParameters'](aD,aE){const c7=bZ;if(!this['zoomToCursor'])return;this['_performCursorZoom']=!0x0;let aF=this['domElement']['getBoundingClientRect'](),aG=aD-aF['left'],aH=aE-aF['top'],aI=aF[c7(0x1ee)],aJ=aF['height'];this[c7(0x1c4)]['x']=aG/aI*0x2-0x1,this['_mouse']['y']=-(aH/aJ)*0x2+0x1,this['_dollyDirection']['set'](this[c7(0x1c4)]['x'],this['_mouse']['y'],0x1)['unproject'](this['object'])[c7(0x226)](this['object']['position'])['normalize']();}['_clampDistance'](aD){return Math['max'](this['minDistance'],Math['min'](this['maxDistance'],aD));}['_handleMouseDownRotate'](aD){const c8=bZ;this['_rotateStart']['set'](aD['clientX'],aD[c8(0x1cd)]);}['_handleMouseDownDolly'](aD){const c9=bZ;this[c9(0x1ba)](aD['clientX'],aD['clientX']),this['_dollyStart']['set'](aD['clientX'],aD['clientY']);}['_handleMouseDownPan'](aD){const ca=bZ;this[ca(0x1d9)]['set'](aD['clientX'],aD['clientY']);}['_handleMouseMoveRotate'](aD){this['_rotateEnd']['set'](aD['clientX'],aD['clientY']),this['_rotateDelta']['subVectors'](this['_rotateEnd'],this['_rotateStart'])['multiplyScalar'](this['rotateSpeed']);let aE=this['domElement'];this['_rotateLeft'](N*this['_rotateDelta']['x']/aE['clientHeight']),this['_rotateUp'](N*this['_rotateDelta']['y']/aE['clientHeight']),this['_rotateStart']['copy'](this['_rotateEnd']),this['update']();}[bZ(0x18b)](aD){const cb=bZ;this['_dollyEnd'][cb(0x20b)](aD[cb(0x183)],aD['clientY']),this[cb(0x204)][cb(0x18e)](this['_dollyEnd'],this['_dollyStart']),this['_dollyDelta']['y']>0x0?this['_dollyOut'](this[cb(0x221)](this['_dollyDelta']['y'])):this['_dollyDelta']['y']<0x0&&this['_dollyIn'](this['_getZoomScale'](this['_dollyDelta']['y'])),this['_dollyStart']['copy'](this[cb(0x224)]),this['update']();}['_handleMouseMovePan'](aD){const cc=bZ;this['_panEnd'][cc(0x20b)](aD['clientX'],aD['clientY']),this['_panDelta']['subVectors'](this[cc(0x1a7)],this['_panStart'])['multiplyScalar'](this[cc(0x1d4)]),this['_pan'](this['_panDelta']['x'],this[cc(0x1a2)]['y']),this['_panStart'][cc(0x229)](this['_panEnd']),this['update']();}['_handleMouseWheel'](aD){const cd=bZ;this['_updateZoomParameters'](aD['clientX'],aD['clientY']),aD['deltaY']<0x0?this[cd(0x195)](this['_getZoomScale'](aD[cd(0x1e0)])):aD['deltaY']>0x0&&this['_dollyOut'](this[cd(0x221)](aD['deltaY'])),this['update']();}['_handleKeyDown'](aD){const cf=bZ;let aE=!0x1;switch(aD['code']){case this['keys']['UP']:aD[cf(0x1c0)]||aD['metaKey']||aD['shiftKey']?this['enableRotate']&&this['_rotateUp'](N*this['keyRotateSpeed']/this['domElement']['clientHeight']):this['enablePan']&&this['_pan'](0x0,this['keyPanSpeed']),aE=!0x0;break;case this['keys']['BOTTOM']:aD[cf(0x1c0)]||aD[cf(0x1c2)]||aD[cf(0x201)]?this['enableRotate']&&this['_rotateUp'](-N*this[cf(0x20c)]/this['domElement']['clientHeight']):this['enablePan']&&this[cf(0x203)](0x0,-this['keyPanSpeed']),aE=!0x0;break;case this['keys']['LEFT']:aD[cf(0x1c0)]||aD['metaKey']||aD[cf(0x201)]?this[cf(0x19f)]&&this[cf(0x1f8)](N*this['keyRotateSpeed']/this['domElement']['clientHeight']):this[cf(0x191)]&&this['_pan'](this['keyPanSpeed'],0x0),aE=!0x0;break;case this[cf(0x213)][cf(0x21d)]:aD[cf(0x1c0)]||aD['metaKey']||aD['shiftKey']?this[cf(0x19f)]&&this['_rotateLeft'](-N*this['keyRotateSpeed']/this['domElement']['clientHeight']):this['enablePan']&&this['_pan'](-this['keyPanSpeed'],0x0),aE=!0x0;break;}aE&&(aD[cf(0x1f2)](),this['update']());}['_handleTouchStartRotate'](aD){const cg=bZ;if(this['_pointers']['length']===0x1)this[cg(0x181)]['set'](aD['pageX'],aD['pageY']);else{let aE=this['_getSecondPointerPosition'](aD),aF=0.5*(aD['pageX']+aE['x']),aG=0.5*(aD['pageY']+aE['y']);this['_rotateStart']['set'](aF,aG);}}['_handleTouchStartPan'](aD){const ch=bZ;if(this['_pointers']['length']===0x1)this['_panStart']['set'](aD['pageX'],aD[ch(0x210)]);else{let aE=this['_getSecondPointerPosition'](aD),aF=0.5*(aD['pageX']+aE['x']),aG=0.5*(aD['pageY']+aE['y']);this['_panStart']['set'](aF,aG);}}['_handleTouchStartDolly'](aD){let aE=this['_getSecondPointerPosition'](aD),aF=aD['pageX']-aE['x'],aG=aD['pageY']-aE['y'],aH=Math['sqrt'](aF*aF+aG*aG);this['_dollyStart']['set'](0x0,aH);}['_handleTouchStartDollyPan'](aD){this['enableZoom']&&this['_handleTouchStartDolly'](aD),this['enablePan']&&this['_handleTouchStartPan'](aD);}['_handleTouchStartDollyRotate'](aD){const ci=bZ;this[ci(0x1dd)]&&this['_handleTouchStartDolly'](aD),this[ci(0x19f)]&&this['_handleTouchStartRotate'](aD);}[bZ(0x184)](aD){const cj=bZ;if(this['_pointers']['length']==0x1)this['_rotateEnd']['set'](aD['pageX'],aD['pageY']);else{let aF=this['_getSecondPointerPosition'](aD),aG=0.5*(aD['pageX']+aF['x']),aH=0.5*(aD['pageY']+aF['y']);this[cj(0x1bd)]['set'](aG,aH);}this['_rotateDelta'][cj(0x18e)](this[cj(0x1bd)],this['_rotateStart'])[cj(0x1e6)](this['rotateSpeed']);let aE=this['domElement'];this['_rotateLeft'](N*this['_rotateDelta']['x']/aE['clientHeight']),this['_rotateUp'](N*this[cj(0x1a0)]['y']/aE['clientHeight']),this['_rotateStart']['copy'](this[cj(0x1bd)]);}['_handleTouchMovePan'](aD){const ck=bZ;if(this['_pointers']['length']===0x1)this['_panEnd']['set'](aD[ck(0x196)],aD['pageY']);else{let aE=this['_getSecondPointerPosition'](aD),aF=0.5*(aD['pageX']+aE['x']),aG=0.5*(aD[ck(0x210)]+aE['y']);this['_panEnd']['set'](aF,aG);}this['_panDelta']['subVectors'](this['_panEnd'],this[ck(0x1d9)])['multiplyScalar'](this['panSpeed']),this['_pan'](this['_panDelta']['x'],this['_panDelta']['y']),this[ck(0x1d9)]['copy'](this[ck(0x1a7)]);}['_handleTouchMoveDolly'](aD){const cl=bZ;let aE=this['_getSecondPointerPosition'](aD),aF=aD['pageX']-aE['x'],aG=aD['pageY']-aE['y'],aH=Math['sqrt'](aF*aF+aG*aG);this['_dollyEnd'][cl(0x20b)](0x0,aH),this['_dollyDelta']['set'](0x0,Math[cl(0x1e5)](this[cl(0x224)]['y']/this['_dollyStart']['y'],this['zoomSpeed'])),this[cl(0x22c)](this['_dollyDelta']['y']),this[cl(0x22b)]['copy'](this['_dollyEnd']);let aI=(aD['pageX']+aE['x'])*0.5,aJ=(aD['pageY']+aE['y'])*0.5;this['_updateZoomParameters'](aI,aJ);}[bZ(0x1df)](aD){this['enableZoom']&&this['_handleTouchMoveDolly'](aD),this['enablePan']&&this['_handleTouchMovePan'](aD);}['_handleTouchMoveDollyRotate'](aD){const cm=bZ;this['enableZoom']&&this[cm(0x1b9)](aD),this[cm(0x19f)]&&this['_handleTouchMoveRotate'](aD);}['_addPointer'](aD){this['_pointers']['push'](aD['pointerId']);}['_removePointer'](aD){const cn=bZ;delete this['_pointerPositions'][aD['pointerId']];for(let aE=0x0;aE<this['_pointers'][cn(0x1ff)];aE++)if(this['_pointers'][aE]==aD['pointerId']){this[cn(0x1e9)]['splice'](aE,0x1);return;}}['_isTrackingPointer'](aD){const co=bZ;for(let aE=0x0;aE<this['_pointers']['length'];aE++)if(this[co(0x1e9)][aE]==aD['pointerId'])return!0x0;return!0x1;}['_trackPointer'](aD){const cp=bZ;let aE=this['_pointerPositions'][aD['pointerId']];aE===void 0x0&&(aE=new aq(),this['_pointerPositions'][aD[cp(0x1d0)]]=aE),aE['set'](aD['pageX'],aD['pageY']);}['_getSecondPointerPosition'](aD){let aE=aD['pointerId']===this['_pointers'][0x0]?this['_pointers'][0x1]:this['_pointers'][0x0];return this['_pointerPositions'][aE];}['_customWheelEvent'](aD){const cq=bZ;let aE=aD['deltaMode'],aF={'clientX':aD['clientX'],'clientY':aD['clientY'],'deltaY':aD['deltaY']};switch(aE){case 0x1:aF[cq(0x1e0)]*=0x10;break;case 0x2:aF['deltaY']*=0x64;break;}return aD['ctrlKey']&&!this['_controlActive']&&(aF['deltaY']*=0xa),aF;}};function I(aD){const cr=bZ;this['enabled']!==!0x1&&(this['_pointers']['length']===0x0&&(this['domElement']['setPointerCapture'](aD['pointerId']),this['domElement']['ownerDocument']['addEventListener']('pointermove',this['_onPointerMove']),this['domElement']['ownerDocument']['addEventListener']('pointerup',this['_onPointerUp'])),!this[cr(0x1f0)](aD)&&(this['_addPointer'](aD),aD[cr(0x20d)]==='touch'?this['_onTouchStart'](aD):this['_onMouseDown'](aD),this['_cursorStyle']==='grab'&&(this['domElement']['style'][cr(0x20e)]='grabbing')));}function L(aD){const cs=bZ;this['enabled']!==!0x1&&(aD['pointerType']==='touch'?this[cs(0x223)](aD):this['_onMouseMove'](aD));}function R(aD){const ct=bZ;switch(this[ct(0x1fc)](aD),this['_pointers']['length']){case 0x0:this['domElement'][ct(0x20a)](aD['pointerId']),this['domElement']['ownerDocument']['removeEventListener']('pointermove',this['_onPointerMove']),this['domElement']['ownerDocument'][ct(0x1a1)]('pointerup',this[ct(0x1aa)]),this['dispatchEvent'](O),this['state']=P['NONE'],this[ct(0x1a9)]==='grab'&&(this['domElement'][ct(0x198)]['cursor']='grab');break;case 0x1:let aE=this['_pointers'][0x0],aF=this['_pointerPositions'][aE];this['_onTouchStart']({'pointerId':aE,'pageX':aF['x'],'pageY':aF['y']});break;}}function z(aD){const cu=bZ;let aE;switch(aD['button']){case 0x0:aE=this['mouseButtons']['LEFT'];break;case 0x1:aE=this['mouseButtons']['MIDDLE'];break;case 0x2:aE=this['mouseButtons']['RIGHT'];break;default:aE=-0x1;}switch(aE){case a6['DOLLY']:if(this['enableZoom']===!0x1)return;this[cu(0x1a6)](aD),this['state']=P['DOLLY'];break;case a6['ROTATE']:if(aD['ctrlKey']||aD['metaKey']||aD['shiftKey']){if(this['enablePan']===!0x1)return;this['_handleMouseDownPan'](aD),this['state']=P['PAN'];}else{if(this['enableRotate']===!0x1)return;this['_handleMouseDownRotate'](aD),this[cu(0x1d2)]=P['ROTATE'];}break;case a6[cu(0x1ea)]:if(aD['ctrlKey']||aD[cu(0x1c2)]||aD['shiftKey']){if(this['enableRotate']===!0x1)return;this['_handleMouseDownRotate'](aD),this['state']=P['ROTATE'];}else{if(this['enablePan']===!0x1)return;this['_handleMouseDownPan'](aD),this[cu(0x1d2)]=P[cu(0x1ea)];}break;default:this[cu(0x1d2)]=P[cu(0x190)];}this[cu(0x1d2)]!==P['NONE']&&this[cu(0x19b)](D);}function B(aD){const cv=bZ;switch(this[cv(0x1d2)]){case P['ROTATE']:if(this['enableRotate']===!0x1)return;this[cv(0x1e3)](aD);break;case P[cv(0x182)]:if(this['enableZoom']===!0x1)return;this[cv(0x18b)](aD);break;case P['PAN']:if(this['enablePan']===!0x1)return;this[cv(0x1cf)](aD);break;}}function V(aD){const cw=bZ;this['enabled']===!0x1||this[cw(0x1dd)]===!0x1||this['state']!==P['NONE']||(aD['preventDefault'](),this['dispatchEvent'](D),this[cw(0x200)](this[cw(0x18c)](aD)),this['dispatchEvent'](O));}function H(aD){this['enabled']!==!0x1&&this['_handleKeyDown'](aD);}function X(a,b){a=a-0x180;const c=Q();let d=c[a];return d;}function U(aD){const cx=bZ;switch(this['_trackPointer'](aD),this['_pointers']['length']){case 0x1:switch(this['touches']['ONE']){case a3['ROTATE']:if(this['enableRotate']===!0x1)return;this['_handleTouchStartRotate'](aD),this['state']=P['TOUCH_ROTATE'];break;case a3[cx(0x1ea)]:if(this[cx(0x191)]===!0x1)return;this[cx(0x228)](aD),this['state']=P['TOUCH_PAN'];break;default:this[cx(0x1d2)]=P['NONE'];}break;case 0x2:switch(this['touches']['TWO']){case a3['DOLLY_PAN']:if(this['enableZoom']===!0x1&&this['enablePan']===!0x1)return;this['_handleTouchStartDollyPan'](aD),this['state']=P[cx(0x1b1)];break;case a3[cx(0x18a)]:if(this['enableZoom']===!0x1&&this['enableRotate']===!0x1)return;this['_handleTouchStartDollyRotate'](aD),this[cx(0x1d2)]=P['TOUCH_DOLLY_ROTATE'];break;default:this['state']=P['NONE'];}break;default:this['state']=P['NONE'];}this['state']!==P[cx(0x190)]&&this['dispatchEvent'](D);}function W(aD){const cy=bZ;switch(this['_trackPointer'](aD),this['state']){case P['TOUCH_ROTATE']:if(this['enableRotate']===!0x1)return;this[cy(0x184)](aD),this['update']();break;case P['TOUCH_PAN']:if(this[cy(0x191)]===!0x1)return;this[cy(0x185)](aD),this['update']();break;case P['TOUCH_DOLLY_PAN']:if(this['enableZoom']===!0x1&&this['enablePan']===!0x1)return;this['_handleTouchMoveDollyPan'](aD),this[cy(0x21f)]();break;case P[cy(0x207)]:if(this['enableZoom']===!0x1&&this['enableRotate']===!0x1)return;this[cy(0x1f6)](aD),this['update']();break;default:this['state']=P['NONE'];}}function G(aD){const cz=bZ;this['enabled']!==!0x1&&aD[cz(0x1f2)]();}function K(aD){const cA=bZ;aD['key']==='Control'&&(this['_controlActive']=!0x0,this['domElement'][cA(0x1eb)]()[cA(0x193)]('keyup',this['_interceptControlUp'],{'passive':!0x0,'capture':!0x0}));}function q(aD){aD['key']==='Control'&&(this['_controlActive']=!0x1,this['domElement']['getRootNode']()['removeEventListener']('keyup',this['_interceptControlUp'],{'passive':!0x0,'capture':!0x0}));}var ge={'class':'model-viewer'},_e={'class':'model-toolbar'},ve={'class':'model-actions'},ye={'class':'model-meta'},be={'class':bZ(0x1b4)},xe={'key':0x0,'class':'model-state'},Se={'key':0x1,'class':'model-state\x20error'},J=Z(au({'__name':'ModelViewer','props':{'data':{},'type':{},'sourceUrl':{}},'setup'(aD){const cB=bZ;let aE=aD,aF=aA(null),aG=aA('loading'),aH=aA(''),aI=aA('正在加载模型'),aJ=aA(!0x1),aK=aA(!0x1),aL=aA(!0x0),aM=aA(!0x0),aN=null,aO=null,aP=null,aQ=null,aR=null,aS=null,aT=null,aU=null,aV=0x0,aW=0x0,aX=null,aY=new a2(),aZ=new TextDecoder('utf-8');class b0 extends Error{}let b1=()=>aE[cB(0x20f)]['toLowerCase'](),b2=()=>{const cC=cB;if(!aE[cC(0x1fa)])return'';try{return new URL('.',aE[cC(0x1fa)])['href'];}catch(bH){let bI=aE['sourceUrl']['split'](/[?#]/)[0x0]||aE['sourceUrl'],bJ=bI[cC(0x19c)]('/');return bJ>=0x0?bI['slice'](0x0,bJ+0x1):'';}},b3=bH=>bH instanceof Error?bH['message']:typeof bH=='string'?bH:JSON[cB(0x1b7)](bH),b4=()=>{const cD=cB;let bH=aF['value'];if(!bH)return!0x1;if(aN||(aN=new al({'antialias':!0x0,'alpha':!0x1,'canvas':bH,'powerPreference':'high-performance'}),aN['setPixelRatio'](Math['min'](window['devicePixelRatio']||0x1,0x2)),aN['outputColorSpace']=am,aN['setClearColor'](0xf8fafc,0x1)),!aO){aO=new a5(),aO['background']=new ai(0xf8fafc);let bI=new a1(0xffffff,0xd7dee8,2.4);aO['add'](bI);let bJ=new an(0xffffff,2.2);bJ['position'][cD(0x20b)](0x8,0xa,0x8),aO['add'](bJ);let bK=new an(0xffffff,0.9);bK['position']['set'](-0x7,0x5,-0x4),aO[cD(0x1c6)](bK),aS=new a4(0xa,0xa,0xcbd5e1,0xe2e8f0),aO[cD(0x1c6)](aS),aT=new a9(0x3),aO[cD(0x1c6)](aT);}return aP||(aP=new aj(0x2d,0x1,0.01,0x186a0),aP[cD(0x1f1)]['set'](0x5,0x4,0x6)),!aQ&&aP&&aN&&(aQ=new he(aP,aN['domElement']),aQ['enableDamping']=!0x0,aQ['dampingFactor']=0.08,aQ['screenSpacePanning']=!0x0,aQ['autoRotateSpeed']=1.2),bD(),bA(),!0x0;},b5=bH=>{(Array['isArray'](bH)?bH:[bH])['forEach'](bI=>bI['dispose']());},b6=bH=>{bH['traverse'](bI=>{const cE=X;let bJ=bI,bK=bI;bJ['geometry']&&bJ['geometry']['dispose'](),bJ['material']&&b5(bJ['material']),bK[cE(0x21b)]&&b5(bK['material']);});},b7=()=>{aR&&aO&&(aO['remove'](aR),b6(aR)),aR=null,aX=null;},b8=()=>aZ[cB(0x1fd)](aE[cB(0x22e)]),b9=(function(){var bH=t(function*(){let {GLTFLoader:bI}=yield import('./GLTFLoader.js'),bJ=new bI(),bK=b2(),bL=b1()==='gltf'?b8():aE['data'];return new Promise((bM,bN)=>{bJ['parse'](bL,bK,bO=>{const cF=X;var bP;(bP=bO['animations'])!=null&&bP['length']&&(aX=new af(bO['scene']),bO['animations']['forEach'](bQ=>aX==null?void 0x0:aX[cF(0x1c9)](bQ)['play']())),bM(bO['scene']);},bN);});});return function(){return bH['apply'](this,arguments);};}()),ba=(function(){var bH=t(function*(){let {OBJLoader:bI}=yield import('./OBJLoader.js');return new bI()['parse'](b8());});return function(){return bH['apply'](this,arguments);};}()),bb=(function(){var bH=t(function*(){const cG=X;let {STLLoader:bI}=yield import('./STLLoader.js'),bJ=new bI()['parse'](aE[cG(0x22e)]);return bJ[cG(0x19d)](),new ab(bJ,bq());});return function(){return bH['apply'](this,arguments);};}()),bc=(function(){var bH=t(function*(){const cH=X;let {PLYLoader:bI}=yield import('./PLYLoader.js'),bJ=new bI()[cH(0x22a)](aE['data']);return bJ['computeVertexNormals'](),new ab(bJ,bq());});return function(){return bH['apply'](this,arguments);};}()),bd=(function(){var bH=t(function*(){const cI=X;var bI;let {FBXLoader:bJ}=yield import('./FBXLoader.js'),bK=new bJ()[cI(0x22a)](aE['data'],b2());return(bI=bK['animations'])!=null&&bI['length']&&(aX=new af(bK),bK['animations']['forEach'](bL=>aX==null?void 0x0:aX['clipAction'](bL)['play']())),bK;});return function(){return bH['apply'](this,arguments);};}()),bf=(function(){var bH=t(function*(){const cJ=X;let {ColladaLoader:bI}=yield import('./ColladaLoader.js');return new bI()[cJ(0x22a)](b8(),b2())['scene'];});return function(){const cK=X;return bH[cK(0x1c5)](this,arguments);};}()),bg=(function(){var bH=t(function*(){let {TDSLoader:bI}=yield import('./TDSLoader.js');return new bI()['parse'](aE['data'],b2());});return function(){return bH['apply'](this,arguments);};}()),bh=(function(){var bH=t(function*(){const cL=X;let {ThreeMFLoader:bI}=yield import('./3MFLoader.js');return new bI()['parse'](aE[cL(0x22e)]);});return function(){return bH['apply'](this,arguments);};}()),bi=(function(){var bH=t(function*(){let {AMFLoader:bI}=yield import('./AMFLoader.js');return new bI()['parse'](aE['data']);});return function(){return bH['apply'](this,arguments);};}()),bj=(function(){var bH=t(function*(){const cM=X;let {USDLoader:bI}=yield import('./USDLoader.js');return new bI()['parse'](aE[cM(0x22e)]);});return function(){return bH['apply'](this,arguments);};}()),bk=(function(){var bH=t(function*(){let {KMZLoader:bI}=yield import('./KMZLoader.js');return new bI()['parse'](aE['data'])['scene'];});return function(){return bH['apply'](this,arguments);};}()),bl=bH=>{const cN=cB;let bI=bH[cN(0x1a3)]();throw bH==='ifc'?new b0('IFC\x20是\x20BIM\x20模型格式,浏览器端完整解析通常依赖\x20web-ifc\x20这类\x20WebAssembly\x20BIM\x20内核。当前\x20Apache-2.0\x20前端包不默认打入这类重型运行时,建议在私有服务端转换为\x20GLB/GLTF\x20后预览。'):bH===cN(0x18d)?new b0(cN(0x21a)):new b0(bI+cN(0x219));},bm=(function(){var bH=t(function*(){const cO=X;let {PCDLoader:bI}=yield import('./PCDLoader.js');return new bI()[cO(0x22a)](aE['data'],aE['sourceUrl']||'model.pcd');});return function(){return bH['apply'](this,arguments);};}()),bn=(function(){var bH=t(function*(){let {VRMLLoader:bI}=yield import('./VRMLLoader.js');return new bI()['parse'](b8(),b2());});return function(){return bH['apply'](this,arguments);};}()),bo=(function(){var bH=t(function*(){let {XYZLoader:bI}=yield import('./XYZLoader.js'),bJ=new bI()['parse'](b8());return bJ['computeBoundingSphere'](),new ad(bJ,br());});return function(){return bH['apply'](this,arguments);};}()),bp=(function(){var bH=t(function*(){const cP=X;let {VTKLoader:bI}=yield import('./VTKLoader.js'),bJ=new bI()['parse'](aE[cP(0x22e)]);return bJ['computeVertexNormals'](),new ab(bJ,bq());});return function(){return bH['apply'](this,arguments);};}()),bq=()=>new aa({'color':0x4f8fba,'metalness':0.08,'roughness':0.78,'side':0x2,'wireframe':aK[cB(0x1d7)]}),br=()=>new a8({'color':0x1f7a8c,'size':0.035,'sizeAttenuation':!0x0}),bs=bH=>{bH['traverse'](bI=>{const cQ=X;let bJ=bI;bJ['isMesh']&&!bJ[cQ(0x21b)]&&(bJ['material']=bq()),bJ['isMesh']&&bJ['material']&&(Array['isArray'](bJ['material'])?bJ[cQ(0x21b)]:[bJ['material']])[cQ(0x1e2)](bK=>{'wireframe'in bK&&(bK['wireframe']=aK['value']),bK['needsUpdate']=!0x0;});});},bt=bH=>{let bI=0x0,bJ=0x0;return bH['traverse'](bK=>{const cR=X;bK[cR(0x1a8)]&&(bI+=0x1),bK[cR(0x187)]&&(bJ+=0x1);}),{'meshes':bI,'points':bJ};},bu=bH=>{const cS=cB;let {meshes:bI,points:bJ}=bt(bH),bK=[];bI&&bK['push'](bI+'\x20个网格'),bJ&&bK['push'](bJ+cS(0x1ac)),aI['value']=bK['length']?bK['join'](','):'模型已加载';},bv=bH=>{let bI=new ak()['setFromObject'](bH);if(bI['isEmpty']())return{'center':new a0(),'size':new a0(0x4,0x4,0x4)};let bJ=bI['getCenter'](new a0()),bK=bI['getSize'](new a0());return bH['position']['sub'](bJ),{'center':new a0(),'size':bK};},bw=()=>{const cT=cB;if(!aR||!aP||!aQ)return;let bH=new ak()['setFromObject'](aR),bI=bH['getSize'](new a0()),bJ=bH['getCenter'](new a0()),bK=Math['max'](bI['x'],bI['y'],bI['z'],0x1)/(0x2*Math['tan'](a7['degToRad'](aP[cT(0x1c8)]/0x2)))*1.65;aP['near']=Math['max'](bK/0x3e8,0.01),aP['far']=Math['max'](bK*0x3e8,0x3e8),aP['position']['copy'](bJ)[cT(0x1c6)](new a0(bK,bK*0.62,bK)),aP['updateProjectionMatrix'](),aQ['target']['copy'](bJ),aQ['update']();},bx=(function(){var bH=t(function*(bI){if(!aO)return;b7(),bs(bI);let {size:bJ}=bv(bI);aR=bI,aO['add'](bI),bw(),bu(bI);let bK=Math['max'](bJ['x'],bJ['y'],bJ['z'],0x1);aS&&aS['scale']['setScalar'](Math['max'](bK/0xa,0x1));});return function(bI){return bH['apply'](this,arguments);};}()),by=(function(){var bH=t(function*(){const cU=X;let bI=++aW;if(aG['value']='loading',aH['value']='',aI['value']='正在加载模型',b4())try{let bJ=yield bz(b1());if(bI!==aW){b6(bJ);return;}yield av(),yield bx(bJ),aG['value']='ready';}catch(bK){if(bI!==aW)return;bK instanceof b0||console[cU(0x217)](bK),aG['value']='error',aH[cU(0x1d7)]=b3(bK)||aE['type']['toUpperCase']()+cU(0x1e7);}});return function(){return bH['apply'](this,arguments);};}()),bz=bH=>{const cV=cB;switch(bH){case cV(0x227):case'gltf':return b9();case'obj':return ba();case'stl':return bb();case'ply':return bc();case'fbx':return bd();case'dae':return bf();case cV(0x22d):return bg();case'3mf':return bh();case'amf':return bi();case'usd':case'usda':case'usdc':case cV(0x186):return bj();case'kmz':return bk();case'step':case cV(0x192):case cV(0x1fe):case'igs':case'ifc':case'3dm':return bl(bH);case cV(0x19a):return bm();case'wrl':case'vrml':return bn();case cV(0x1ae):return bo();case'vtk':case'vtp':return bp();default:throw Error('暂不支持\x20.'+bH+'\x20模型格式');}},bA=()=>{const cW=cB;let bH=aF['value'];if(!bH||!aN||!aP)return;let bI=bH['getBoundingClientRect'](),bJ=Math[cW(0x202)](0x1,Math['floor'](bI['width'])),bK=Math[cW(0x202)](0x1,Math[cW(0x1b5)](bI['height']));aN[cW(0x189)](bJ,bK,!0x1),aP['aspect']=bJ/bK,aP[cW(0x1c1)]();},bB=bH=>{const cX=cB;if(!aN||!aO||!aP||!aQ)return;aQ['autoRotate']=aJ['value'],aQ['update'](),aY[cX(0x21f)](bH);let bI=aY[cX(0x1cc)]();aX==null||aX['update'](bI),aN['render'](aO,aP),aV=requestAnimationFrame(bB);},bC=()=>{aR&&bs(aR);},bD=()=>{const cY=cB;aS&&(aS['visible']=aL[cY(0x1d7)]),aT&&(aT['visible']=aM[cY(0x1d7)]);},bE=()=>{aK['value']=!aK['value'],bC();},bF=()=>{aL['value']=!aL['value'],bD();},bG=()=>{aM['value']=!aM['value'],bD();};return ay(()=>{const cZ=cB;b4()&&(aY['connect'](document),aU=new ResizeObserver(bA),aF['value']&&aU[cZ(0x1b8)](aF['value']),bB(),by());}),ax(()=>{const d0=cB;aW+=0x1,cancelAnimationFrame(aV),aU==null||aU['disconnect'](),aU=null,b7(),aQ==null||aQ[d0(0x220)](),aQ=null,aN==null||aN['dispose'](),aN=null,aY['dispose'](),aY=new a2(),aO=null,aP=null,aS=null,aT=null;}),aC(()=>[aE['data'],aE['type'],aE['sourceUrl']],()=>{by();}),(bH,bI)=>(az(),as(cB(0x1ad),ge,[at('div',_e,[at('div',ve,[at(cB(0x222),{'type':'button','onClick':bw},'适配'),at('button',{'type':cB(0x222),'class':aw({'active':aJ['value']}),'onClick':bI[0x0]||(bI[0x0]=bJ=>aJ['value']=!aJ['value'])},'旋转',0x2),at(cB(0x222),{'type':'button','class':aw({'active':aK['value']}),'onClick':bE},'线框',0x2),at('button',{'type':'button','class':aw({'active':aL[cB(0x1d7)]}),'onClick':bF},'网格',0x2),at('button',{'type':'button','class':aw({'active':aM['value']}),'onClick':bG},'坐标',0x2)]),at(cB(0x1ad),ye,[at('strong',null,aB(aD['type']['toUpperCase']()),0x1),at('span',null,aB(aI[cB(0x1d7)]),0x1)])]),at('div',be,[at('canvas',{'ref_key':'canvas','ref':aF},null,0x200),aG[cB(0x1d7)]==='loading'?(az(),as(cB(0x1ad),xe,'正在解析\x203D\x20模型...')):aG['value']==='error'?(az(),as('div',Se,[bI[0x1]||(bI[0x1]=at(cB(0x1de),null,cB(0x1bc),-0x1)),at(cB(0x1dc),null,aB(aH['value']),0x1)])):ar('',!0x0)])]));}}),[['__scopeId',bZ(0x206)]]);function Q(){const d1=['floor','bind','stringify','observe','_handleTouchMoveDolly','_updateZoomParameters','_spherical','模型解析失败','_rotateEnd','_lastPosition','phi','ctrlKey','updateProjectionMatrix','metaKey','minAzimuthAngle','_mouse','apply','add','WARNING:\x20OrbitControls.js\x20encountered\x20an\x20unknown\x20camera\x20type\x20-\x20pan\x20disabled.','fov','clipAction','723414ObFjil','ownerDocument','getDelta','clientY','invert','_handleMouseMovePan','pointerId','matrix','state','position0','panSpeed','4433732eHvSwP','_getAutoRotationAngle','value','abs','_panStart','dollyOut','connect','span','enableZoom','strong','_handleTouchMoveDollyPan','deltaY','_onMouseWheel','forEach','_handleMouseMoveRotate','unproject','pow','multiplyScalar','\x20模型解析失败','minPolarAngle','_pointers','PAN','getRootNode','_onContextMenu','isOrthographicCamera','width','3108832RezcvG','_isTrackingPointer','position','preventDefault','2067310LMUEYU','49lGqvtf','touches','_handleTouchMoveDollyRotate','ArrowRight','_rotateLeft','_domElementKeyEvents','sourceUrl','autoRotateSpeed','_removePointer','decode','iges','length','_handleMouseWheel','shiftKey','max','_pan','_dollyDelta','keydown','data-v-9d2e23df','TOUCH_DOLLY_ROTATE','object','2030466TOxSWB','releasePointerCapture','set','keyRotateSpeed','pointerType','cursor','type','pageY','lookAt','minZoom','keys','_panOffset','min','domElement','error','theta','\x20属于\x20CAD\x20B-Rep\x20/\x20工程交换格式,浏览器端完整解析通常需要\x20OpenCascade\x20等\x20WebAssembly\x20几何内核。当前前端包不默认打入这类重型运行时,建议在私有服务端转换为\x20GLB/GLTF\x20或轻量网格格式后预览。','3DM\x20是\x20Rhino/OpenNURBS\x20模型格式,浏览器端解析需要\x20rhino3dm\x20WebAssembly\x20运行时。当前前端包未内置该运行时,建议在私有转换链路输出\x20GLB/GLTF\x20后预览。','material','1727244HEHrQN','RIGHT','_lastQuaternion','update','dispose','_getZoomScale','button','_onTouchMove','_dollyEnd','_sphericalDelta','sub','glb','_handleTouchStartPan','copy','parse','_dollyStart','_dollyOut','3ds','data','mouseButtons','rotateSpeed','zoomSpeed','_rotateStart','DOLLY','clientX','_handleTouchMoveRotate','_handleTouchMovePan','usdz','isPoints','screenSpacePanning','setSize','DOLLY_ROTATE','_handleMouseMoveDolly','_customWheelEvent','3dm','subVectors','1ZqUkkv','NONE','enablePan','stp','addEventListener','radius','_dollyIn','pageX','target','style','zoom','pcd','dispatchEvent','lastIndexOf','computeVertexNormals','addScaledVector','enableRotate','_rotateDelta','removeEventListener','_panDelta','toUpperCase','_panUp','_scale','_handleMouseDownDolly','_panEnd','isMesh','_cursorStyle','_onPointerUp','zoomToCursor','\x20个点云','div','xyz','11726514JugOiR','warn','TOUCH_DOLLY_PAN','dampingFactor','maxTargetRadius','model-stage'];Q=function(){return d1;};return Q();}export{J as default};
1
+ const bZ=X;function Q(){const d8=['dispose','apply','geometry','distanceToSquared','tan','enableDamping','ctrlKey','stopListenToKeyEvents','_dollyStart','_lastPosition','1781870soNzwK','_handleMouseWheel','type','minZoom','material','_rotateUp','_handleMouseDownPan','enableZoom','1943744tpqqMS','theta','key','_clampDistance','contextmenu','minTargetRadius','keydown','keyRotateSpeed','RIGHT','pageX','314110VcEnjL','_panEnd','slice','ownerDocument','applyQuaternion','ROTATE','5265198TJnJbE','LEFT','zoomSpeed','bind','strong','glb','minAzimuthAngle','clipAction','unproject','\x20个网格','object','toUpperCase','touches','_pointers','_handleKeyDown','value','5298lGoJhn','_panStart','NONE','updateProjectionMatrix','model-state\x20error','_handleMouseDownRotate','kmz','cursor','_dollyIn','_handleMouseMoveDolly','_quatInverse','push','maxDistance','maxPolarAngle','_cursorStyle','position0','isArray','dampingFactor','WARNING:\x20OrbitControls.js\x20encountered\x20an\x20unknown\x20camera\x20type\x20-\x20pan\x20disabled.','subVectors','update','wheel','keys','background','data','forEach','div','addEventListener','TOUCH_PAN','autoRotateSpeed','decode','_getSecondPointerPosition','connect','clientHeight','visible','set','state','model.pcd','_panOffset','far','touchAction','_interceptControlUp','touch','play','6cobhxk','_mouse','getDelta','model-viewer','_sphericalDelta','_domElementKeyEvents','_rotateStart','_pan','multiplyScalar','pointerId','_panDelta','high-performance','ifc','length','_onTouchMove','domElement','removeEventListener','_dollyEnd','395032QJvvPL','_interceptControlDown','_handleTouchStartRotate','isOrthographicCamera','_dollyDelta','562fwjUoV','iges','3592064ZbcGsC','_handleTouchMoveRotate','direction','target','clientY','model-toolbar','add','\x20模型格式','parse','_performCursorZoom','height','rotateUp','intersectPlane','distanceTo','_onMouseWheel','keyPanSpeed','grab','deltaY','message','position','getBoundingClientRect','phi','copy','_scale','shiftKey','zoom','setPixelRatio','remove','dispatchEvent','scene','enableRotate','sourceUrl','clientWidth','enablePan','button','maxTargetRadius','auto','_spherical','_updateZoomParameters','panSpeed','getRootNode','setFromObject','_panLeft','_lastQuaternion','isPerspectiveCamera'];Q=function(){return d8;};return Q();}(function(aD,aE){const bR=X,aF=aD();while(!![]){try{const aG=-parseInt(bR(0x162))/0x1+parseInt(bR(0x1bb))/0x2*(parseInt(bR(0x178))/0x3)+parseInt(bR(0x158))/0x4+-parseInt(bR(0x1f4))/0x5*(parseInt(bR(0x1a4))/0x6)+-parseInt(bR(0x1bd))/0x7+-parseInt(bR(0x1b6))/0x8+parseInt(bR(0x168))/0x9;if(aG===aE)break;else aF['push'](aF['shift']());}catch(aH){aF['push'](aF['shift']());}}}(Q,0x5196d));import{n as Y,t}from'./asyncToGenerator.js';import{t as Z}from'./_plugin-vue_export-helper.js';import{Bt as a0,D as a1,It as a2,Nt as a3,T as a4,Tt as a5,Y as a6,Z as a7,_t as a8,a as a9,at as aa,et as ab,g as ac,gt as ad,i as af,jt as ag,mt as ah,p as ai,pt as aj,s as ak,t as al,wt as am,x as an,xt as ao,yt as ap,zt as aq}from'./three.module.js';import{createCommentVNode as ar,createElementBlock as as,createElementVNode as at,defineComponent as au,nextTick as av,normalizeClass as aw,onBeforeUnmount as ax,onMounted as ay,openBlock as az,ref as aA,toDisplayString as aB,watch as aC}from'vue';Y();var E={'type':'change'},D={'type':'start'},O={'type':'end'},k=new ao(),A=new ah(),j=Math['cos'](0x46*a7['DEG2RAD']),M=new a0(),N=0x2*Math['PI'],P={'NONE':-0x1,'ROTATE':0x0,'DOLLY':0x1,'PAN':0x2,'TOUCH_ROTATE':0x3,'TOUCH_PAN':0x4,'TOUCH_DOLLY_PAN':0x5,'TOUCH_DOLLY_ROTATE':0x6},F=0.000001,he=class extends ac{constructor(aD,aE=null){const bS=X;super(aD,aE),this['state']=P['NONE'],this['target']=new a0(),this['cursor']=new a0(),this['minDistance']=0x0,this['maxDistance']=Infinity,this[bS(0x1f7)]=0x0,this['maxZoom']=Infinity,this['minTargetRadius']=0x0,this[bS(0x1e0)]=Infinity,this['minPolarAngle']=0x0,this[bS(0x185)]=Math['PI'],this['minAzimuthAngle']=-Infinity,this['maxAzimuthAngle']=Infinity,this['enableDamping']=!0x1,this['dampingFactor']=0.05,this[bS(0x157)]=!0x0,this['zoomSpeed']=0x1,this['enableRotate']=!0x0,this['rotateSpeed']=0x1,this['keyRotateSpeed']=0x1,this['enablePan']=!0x0,this['panSpeed']=0x1,this['screenSpacePanning']=!0x0,this['keyPanSpeed']=0x7,this['zoomToCursor']=!0x1,this['autoRotate']=!0x1,this['autoRotateSpeed']=0x2,this['keys']={'LEFT':'ArrowLeft','UP':'ArrowUp','RIGHT':'ArrowRight','BOTTOM':'ArrowDown'},this['mouseButtons']={'LEFT':a6['ROTATE'],'MIDDLE':a6['DOLLY'],'RIGHT':a6['PAN']},this[bS(0x174)]={'ONE':a3['ROTATE'],'TWO':a3['DOLLY_PAN']},this['target0']=this['target']['clone'](),this['position0']=this['object']['position']['clone'](),this['zoom0']=this['object']['zoom'],this['_cursorStyle']='auto',this['_domElementKeyEvents']=null,this['_lastPosition']=new a0(),this['_lastQuaternion']=new ap(),this['_lastTargetPosition']=new a0(),this['_quat']=new ap()['setFromUnitVectors'](aD['up'],new a0(0x0,0x1,0x0)),this[bS(0x182)]=this['_quat']['clone']()['invert'](),this['_spherical']=new ag(),this['_sphericalDelta']=new ag(),this['_scale']=0x1,this[bS(0x19e)]=new a0(),this['_rotateStart']=new aq(),this['_rotateEnd']=new aq(),this['_rotateDelta']=new aq(),this['_panStart']=new aq(),this['_panEnd']=new aq(),this['_panDelta']=new aq(),this[bS(0x1f2)]=new aq(),this[bS(0x1b5)]=new aq(),this['_dollyDelta']=new aq(),this['_dollyDirection']=new a0(),this['_mouse']=new aq(),this['_performCursorZoom']=!0x1,this['_pointers']=[],this['_pointerPositions']={},this['_controlActive']=!0x1,this['_onPointerMove']=L['bind'](this),this['_onPointerDown']=I['bind'](this),this['_onPointerUp']=R[bS(0x16b)](this),this['_onContextMenu']=G['bind'](this),this['_onMouseWheel']=V['bind'](this),this['_onKeyDown']=H[bS(0x16b)](this),this['_onTouchStart']=U['bind'](this),this['_onTouchMove']=W['bind'](this),this['_onMouseDown']=z[bS(0x16b)](this),this['_onMouseMove']=B['bind'](this),this['_interceptControlDown']=K['bind'](this),this[bS(0x1a1)]=q['bind'](this),this['domElement']!==null&&this[bS(0x198)](this['domElement']),this['update']();}set['cursorStyle'](aD){const bT=X;this['_cursorStyle']=aD,aD==='grab'?this['domElement']['style']['cursor']='grab':this['domElement']['style']['cursor']=bT(0x1e1);}get['cursorStyle'](){const bU=X;return this[bU(0x186)];}['connect'](aD){const bV=X;super['connect'](aD),this['domElement'][bV(0x193)]('pointerdown',this['_onPointerDown']),this['domElement']['addEventListener']('pointercancel',this['_onPointerUp']),this['domElement']['addEventListener'](bV(0x15c),this['_onContextMenu']),this['domElement']['addEventListener']('wheel',this['_onMouseWheel'],{'passive':!0x1}),this['domElement']['getRootNode']()['addEventListener'](bV(0x15e),this['_interceptControlDown'],{'passive':!0x0,'capture':!0x0}),this['domElement']['style']['touchAction']='none';}['disconnect'](){const bW=X;this['domElement']['removeEventListener']('pointerdown',this['_onPointerDown']),this['domElement']['ownerDocument']['removeEventListener']('pointermove',this['_onPointerMove']),this[bW(0x1b3)]['ownerDocument'][bW(0x1b4)]('pointerup',this['_onPointerUp']),this[bW(0x1b3)]['removeEventListener']('pointercancel',this['_onPointerUp']),this[bW(0x1b3)]['removeEventListener'](bW(0x18d),this[bW(0x1cb)]),this['domElement']['removeEventListener']('contextmenu',this['_onContextMenu']),this[bW(0x1f1)](),this[bW(0x1b3)][bW(0x1e5)]()[bW(0x1b4)]('keydown',this[bW(0x1b7)],{'capture':!0x0}),this['domElement']['style'][bW(0x1a0)]='';}['dispose'](){this['disconnect']();}['getPolarAngle'](){return this['_spherical']['phi'];}['getAzimuthalAngle'](){const bX=X;return this[bX(0x1e2)]['theta'];}['getDistance'](){const bY=X;return this['object']['position'][bY(0x1ca)](this['target']);}['listenToKeyEvents'](aD){aD['addEventListener']('keydown',this['_onKeyDown']),this['_domElementKeyEvents']=aD;}[bZ(0x1f1)](){const c0=bZ;this['_domElementKeyEvents']!==null&&(this[c0(0x1a9)][c0(0x1b4)]('keydown',this['_onKeyDown']),this['_domElementKeyEvents']=null);}['saveState'](){this['target0']['copy'](this['target']),this['position0']['copy'](this['object']['position']),this['zoom0']=this['object']['zoom'];}['reset'](){const c1=bZ;this['target']['copy'](this['target0']),this[c1(0x172)]['position']['copy'](this[c1(0x187)]),this['object']['zoom']=this['zoom0'],this['object']['updateProjectionMatrix'](),this[c1(0x1d9)](E),this['update'](),this['state']=P['NONE'];}['pan'](aD,aE){const c2=bZ;this[c2(0x1ab)](aD,aE),this['update']();}['dollyIn'](aD){this['_dollyIn'](aD),this['update']();}['dollyOut'](aD){this['_dollyOut'](aD),this['update']();}['rotateLeft'](aD){this['_rotateLeft'](aD),this['update']();}[bZ(0x1c8)](aD){this['_rotateUp'](aD),this['update']();}['update'](aD=null){const c3=bZ;let aE=this[c3(0x172)]['position'];M['copy'](aE)['sub'](this['target']),M[c3(0x166)](this['_quat']),this[c3(0x1e2)]['setFromVector3'](M),this['autoRotate']&&this['state']===P['NONE']&&this['_rotateLeft'](this['_getAutoRotationAngle'](aD)),this['enableDamping']?(this['_spherical'][c3(0x159)]+=this['_sphericalDelta']['theta']*this['dampingFactor'],this[c3(0x1e2)]['phi']+=this['_sphericalDelta']['phi']*this['dampingFactor']):(this['_spherical'][c3(0x159)]+=this['_sphericalDelta']['theta'],this[c3(0x1e2)]['phi']+=this['_sphericalDelta']['phi']);let aF=this[c3(0x16e)],aG=this['maxAzimuthAngle'];isFinite(aF)&&isFinite(aG)&&(aF<-Math['PI']?aF+=N:aF>Math['PI']&&(aF-=N),aG<-Math['PI']?aG+=N:aG>Math['PI']&&(aG-=N),aF<=aG?this['_spherical']['theta']=Math['max'](aF,Math['min'](aG,this['_spherical'][c3(0x159)])):this['_spherical']['theta']=this['_spherical']['theta']>(aF+aG)/0x2?Math['max'](aF,this['_spherical']['theta']):Math['min'](aG,this[c3(0x1e2)]['theta'])),this[c3(0x1e2)]['phi']=Math['max'](this['minPolarAngle'],Math['min'](this['maxPolarAngle'],this['_spherical']['phi'])),this['_spherical']['makeSafe'](),this[c3(0x1ef)]===!0x0?this['target']['addScaledVector'](this['_panOffset'],this[c3(0x189)]):this[c3(0x1c0)][c3(0x1c3)](this['_panOffset']),this['target']['sub'](this[c3(0x17f)]),this[c3(0x1c0)]['clampLength'](this[c3(0x15d)],this['maxTargetRadius']),this['target']['add'](this[c3(0x17f)]);let aH=!0x1;if(this['zoomToCursor']&&this['_performCursorZoom']||this['object']['isOrthographicCamera'])this['_spherical']['radius']=this['_clampDistance'](this['_spherical']['radius']);else{let aI=this[c3(0x1e2)]['radius'];this['_spherical']['radius']=this['_clampDistance'](this['_spherical']['radius']*this[c3(0x1d4)]),aH=aI!=this['_spherical']['radius'];}if(M['setFromSpherical'](this['_spherical']),M[c3(0x166)](this['_quatInverse']),aE[c3(0x1d3)](this['target'])[c3(0x1c3)](M),this['object']['lookAt'](this['target']),this[c3(0x1ef)]===!0x0?(this[c3(0x1a8)]['theta']*=0x1-this['dampingFactor'],this[c3(0x1a8)]['phi']*=0x1-this['dampingFactor'],this['_panOffset'][c3(0x1ac)](0x1-this['dampingFactor'])):(this['_sphericalDelta']['set'](0x0,0x0,0x0),this['_panOffset']['set'](0x0,0x0,0x0)),this['zoomToCursor']&&this['_performCursorZoom']){let aJ=null;if(this[c3(0x172)]['isPerspectiveCamera']){let aK=M['length']();aJ=this['_clampDistance'](aK*this['_scale']);let aL=aK-aJ;this['object']['position']['addScaledVector'](this['_dollyDirection'],aL),this[c3(0x172)]['updateMatrixWorld'](),aH=!!aL;}else{if(this[c3(0x172)]['isOrthographicCamera']){let aM=new a0(this[c3(0x1a5)]['x'],this['_mouse']['y'],0x0);aM['unproject'](this['object']);let aN=this['object']['zoom'];this[c3(0x172)]['zoom']=Math['max'](this['minZoom'],Math['min'](this['maxZoom'],this['object']['zoom']/this['_scale'])),this['object']['updateProjectionMatrix'](),aH=aN!==this['object']['zoom'];let aO=new a0(this[c3(0x1a5)]['x'],this['_mouse']['y'],0x0);aO[c3(0x170)](this['object']),this['object'][c3(0x1d0)]['sub'](aO)['add'](aM),this['object']['updateMatrixWorld'](),aJ=M['length']();}else console['warn']('WARNING:\x20OrbitControls.js\x20encountered\x20an\x20unknown\x20camera\x20type\x20-\x20zoom\x20to\x20cursor\x20disabled.'),this['zoomToCursor']=!0x1;}aJ!==null&&(this['screenSpacePanning']?this['target']['set'](0x0,0x0,-0x1)['transformDirection'](this['object']['matrix'])['multiplyScalar'](aJ)['add'](this[c3(0x172)]['position']):(k['origin'][c3(0x1d3)](this['object']['position']),k[c3(0x1bf)][c3(0x19b)](0x0,0x0,-0x1)['transformDirection'](this['object']['matrix']),Math['abs'](this['object']['up']['dot'](k['direction']))<j?this['object']['lookAt'](this['target']):(A['setFromNormalAndCoplanarPoint'](this['object']['up'],this[c3(0x1c0)]),k[c3(0x1c9)](A,this['target']))));}else{if(this['object']['isOrthographicCamera']){let aP=this[c3(0x172)]['zoom'];this['object'][c3(0x1d6)]=Math['max'](this[c3(0x1f7)],Math['min'](this['maxZoom'],this[c3(0x172)][c3(0x1d6)]/this['_scale'])),aP!==this['object']['zoom']&&(this['object']['updateProjectionMatrix'](),aH=!0x0);}}return this[c3(0x1d4)]=0x1,this[c3(0x1c6)]=!0x1,aH||this['_lastPosition']['distanceToSquared'](this[c3(0x172)]['position'])>F||0x8*(0x1-this['_lastQuaternion']['dot'](this['object']['quaternion']))>F||this['_lastTargetPosition'][c3(0x1ed)](this['target'])>F?(this[c3(0x1d9)](E),this[c3(0x1f3)]['copy'](this['object'][c3(0x1d0)]),this[c3(0x1e8)]['copy'](this[c3(0x172)]['quaternion']),this['_lastTargetPosition']['copy'](this['target']),!0x0):!0x1;}['_getAutoRotationAngle'](aD){const c4=bZ;return aD===null?N/0x3c/0x3c*this[c4(0x195)]:N/0x3c*this['autoRotateSpeed']*aD;}['_getZoomScale'](aD){const c5=bZ;let aE=Math['abs'](aD*0.01);return Math['pow'](0.95,this[c5(0x16a)]*aE);}['_rotateLeft'](aD){const c6=bZ;this[c6(0x1a8)]['theta']-=aD;}['_rotateUp'](aD){const c7=bZ;this['_sphericalDelta'][c7(0x1d2)]-=aD;}[bZ(0x1e7)](aD,aE){M['setFromMatrixColumn'](aE,0x0),M['multiplyScalar'](-aD),this['_panOffset']['add'](M);}['_panUp'](aD,aE){const c8=bZ;this['screenSpacePanning']===!0x0?M['setFromMatrixColumn'](aE,0x1):(M['setFromMatrixColumn'](aE,0x0),M['crossVectors'](this['object']['up'],M)),M[c8(0x1ac)](aD),this['_panOffset'][c8(0x1c3)](M);}[bZ(0x1ab)](aD,aE){const c9=bZ;let aF=this['domElement'];if(this['object']['isPerspectiveCamera']){let aG=this['object'][c9(0x1d0)];M[c9(0x1d3)](aG)['sub'](this[c9(0x1c0)]);let aH=M['length']();aH*=Math['tan'](this['object']['fov']/0x2*Math['PI']/0xb4),this[c9(0x1e7)](0x2*aD*aH/aF['clientHeight'],this['object']['matrix']),this['_panUp'](0x2*aE*aH/aF['clientHeight'],this['object']['matrix']);}else this['object'][c9(0x1b9)]?(this['_panLeft'](aD*(this['object']['right']-this['object']['left'])/this['object'][c9(0x1d6)]/aF[c9(0x1dd)],this['object']['matrix']),this['_panUp'](aE*(this['object']['top']-this['object']['bottom'])/this['object']['zoom']/aF['clientHeight'],this['object']['matrix'])):(console['warn'](c9(0x18a)),this['enablePan']=!0x1);}['_dollyOut'](aD){this['object']['isPerspectiveCamera']||this['object']['isOrthographicCamera']?this['_scale']/=aD:(console['warn']('WARNING:\x20OrbitControls.js\x20encountered\x20an\x20unknown\x20camera\x20type\x20-\x20dolly/zoom\x20disabled.'),this['enableZoom']=!0x1);}[bZ(0x180)](aD){const ca=bZ;this['object'][ca(0x1e9)]||this['object'][ca(0x1b9)]?this['_scale']*=aD:(console['warn']('WARNING:\x20OrbitControls.js\x20encountered\x20an\x20unknown\x20camera\x20type\x20-\x20dolly/zoom\x20disabled.'),this['enableZoom']=!0x1);}['_updateZoomParameters'](aD,aE){const cb=bZ;if(!this['zoomToCursor'])return;this['_performCursorZoom']=!0x0;let aF=this[cb(0x1b3)][cb(0x1d1)](),aG=aD-aF['left'],aH=aE-aF['top'],aI=aF['width'],aJ=aF['height'];this[cb(0x1a5)]['x']=aG/aI*0x2-0x1,this['_mouse']['y']=-(aH/aJ)*0x2+0x1,this['_dollyDirection']['set'](this['_mouse']['x'],this['_mouse']['y'],0x1)['unproject'](this[cb(0x172)])['sub'](this['object'][cb(0x1d0)])['normalize']();}[bZ(0x15b)](aD){const cc=bZ;return Math['max'](this['minDistance'],Math['min'](this[cc(0x184)],aD));}[bZ(0x17d)](aD){this['_rotateStart']['set'](aD['clientX'],aD['clientY']);}['_handleMouseDownDolly'](aD){const cd=bZ;this['_updateZoomParameters'](aD['clientX'],aD['clientX']),this['_dollyStart']['set'](aD['clientX'],aD[cd(0x1c1)]);}['_handleMouseDownPan'](aD){const cf=bZ;this['_panStart']['set'](aD['clientX'],aD[cf(0x1c1)]);}['_handleMouseMoveRotate'](aD){this['_rotateEnd']['set'](aD['clientX'],aD['clientY']),this['_rotateDelta']['subVectors'](this['_rotateEnd'],this['_rotateStart'])['multiplyScalar'](this['rotateSpeed']);let aE=this['domElement'];this['_rotateLeft'](N*this['_rotateDelta']['x']/aE['clientHeight']),this['_rotateUp'](N*this['_rotateDelta']['y']/aE['clientHeight']),this['_rotateStart']['copy'](this['_rotateEnd']),this['update']();}['_handleMouseMoveDolly'](aD){const cg=bZ;this['_dollyEnd']['set'](aD['clientX'],aD['clientY']),this['_dollyDelta']['subVectors'](this[cg(0x1b5)],this['_dollyStart']),this['_dollyDelta']['y']>0x0?this['_dollyOut'](this['_getZoomScale'](this[cg(0x1ba)]['y'])):this['_dollyDelta']['y']<0x0&&this['_dollyIn'](this['_getZoomScale'](this['_dollyDelta']['y'])),this['_dollyStart']['copy'](this['_dollyEnd']),this['update']();}['_handleMouseMovePan'](aD){const ch=bZ;this['_panEnd']['set'](aD['clientX'],aD['clientY']),this['_panDelta']['subVectors'](this[ch(0x163)],this['_panStart'])['multiplyScalar'](this['panSpeed']),this['_pan'](this['_panDelta']['x'],this['_panDelta']['y']),this['_panStart']['copy'](this['_panEnd']),this['update']();}['_handleMouseWheel'](aD){const ci=bZ;this['_updateZoomParameters'](aD['clientX'],aD[ci(0x1c1)]),aD['deltaY']<0x0?this['_dollyIn'](this['_getZoomScale'](aD['deltaY'])):aD[ci(0x1ce)]>0x0&&this['_dollyOut'](this['_getZoomScale'](aD['deltaY'])),this['update']();}[bZ(0x176)](aD){const cj=bZ;let aE=!0x1;switch(aD['code']){case this['keys']['UP']:aD[cj(0x1f0)]||aD['metaKey']||aD['shiftKey']?this['enableRotate']&&this[cj(0x1f9)](N*this['keyRotateSpeed']/this['domElement'][cj(0x199)]):this['enablePan']&&this[cj(0x1ab)](0x0,this[cj(0x1cc)]),aE=!0x0;break;case this['keys']['BOTTOM']:aD['ctrlKey']||aD['metaKey']||aD['shiftKey']?this['enableRotate']&&this['_rotateUp'](-N*this[cj(0x15f)]/this['domElement'][cj(0x199)]):this[cj(0x1de)]&&this['_pan'](0x0,-this['keyPanSpeed']),aE=!0x0;break;case this[cj(0x18e)]['LEFT']:aD['ctrlKey']||aD['metaKey']||aD['shiftKey']?this['enableRotate']&&this['_rotateLeft'](N*this[cj(0x15f)]/this[cj(0x1b3)]['clientHeight']):this[cj(0x1de)]&&this['_pan'](this[cj(0x1cc)],0x0),aE=!0x0;break;case this['keys']['RIGHT']:aD['ctrlKey']||aD['metaKey']||aD[cj(0x1d5)]?this['enableRotate']&&this['_rotateLeft'](-N*this['keyRotateSpeed']/this[cj(0x1b3)]['clientHeight']):this['enablePan']&&this[cj(0x1ab)](-this['keyPanSpeed'],0x0),aE=!0x0;break;}aE&&(aD['preventDefault'](),this['update']());}['_handleTouchStartRotate'](aD){const ck=bZ;if(this['_pointers']['length']===0x1)this['_rotateStart'][ck(0x19b)](aD['pageX'],aD['pageY']);else{let aE=this['_getSecondPointerPosition'](aD),aF=0.5*(aD['pageX']+aE['x']),aG=0.5*(aD['pageY']+aE['y']);this['_rotateStart']['set'](aF,aG);}}['_handleTouchStartPan'](aD){const cl=bZ;if(this['_pointers'][cl(0x1b1)]===0x1)this['_panStart']['set'](aD['pageX'],aD['pageY']);else{let aE=this[cl(0x197)](aD),aF=0.5*(aD[cl(0x161)]+aE['x']),aG=0.5*(aD['pageY']+aE['y']);this['_panStart']['set'](aF,aG);}}['_handleTouchStartDolly'](aD){let aE=this['_getSecondPointerPosition'](aD),aF=aD['pageX']-aE['x'],aG=aD['pageY']-aE['y'],aH=Math['sqrt'](aF*aF+aG*aG);this['_dollyStart']['set'](0x0,aH);}['_handleTouchStartDollyPan'](aD){const cm=bZ;this[cm(0x157)]&&this['_handleTouchStartDolly'](aD),this['enablePan']&&this['_handleTouchStartPan'](aD);}['_handleTouchStartDollyRotate'](aD){this['enableZoom']&&this['_handleTouchStartDolly'](aD),this['enableRotate']&&this['_handleTouchStartRotate'](aD);}[bZ(0x1be)](aD){const cn=bZ;if(this['_pointers'][cn(0x1b1)]==0x1)this['_rotateEnd']['set'](aD['pageX'],aD['pageY']);else{let aF=this['_getSecondPointerPosition'](aD),aG=0.5*(aD['pageX']+aF['x']),aH=0.5*(aD['pageY']+aF['y']);this['_rotateEnd']['set'](aG,aH);}this['_rotateDelta'][cn(0x18b)](this['_rotateEnd'],this[cn(0x1aa)])['multiplyScalar'](this['rotateSpeed']);let aE=this['domElement'];this['_rotateLeft'](N*this['_rotateDelta']['x']/aE['clientHeight']),this['_rotateUp'](N*this['_rotateDelta']['y']/aE['clientHeight']),this['_rotateStart']['copy'](this['_rotateEnd']);}['_handleTouchMovePan'](aD){const co=bZ;if(this[co(0x175)]['length']===0x1)this['_panEnd']['set'](aD['pageX'],aD['pageY']);else{let aE=this[co(0x197)](aD),aF=0.5*(aD['pageX']+aE['x']),aG=0.5*(aD['pageY']+aE['y']);this['_panEnd'][co(0x19b)](aF,aG);}this['_panDelta'][co(0x18b)](this[co(0x163)],this['_panStart'])[co(0x1ac)](this[co(0x1e4)]),this['_pan'](this['_panDelta']['x'],this[co(0x1ae)]['y']),this[co(0x179)]['copy'](this['_panEnd']);}['_handleTouchMoveDolly'](aD){const cp=bZ;let aE=this['_getSecondPointerPosition'](aD),aF=aD['pageX']-aE['x'],aG=aD['pageY']-aE['y'],aH=Math['sqrt'](aF*aF+aG*aG);this['_dollyEnd']['set'](0x0,aH),this[cp(0x1ba)]['set'](0x0,Math['pow'](this[cp(0x1b5)]['y']/this['_dollyStart']['y'],this['zoomSpeed'])),this['_dollyOut'](this['_dollyDelta']['y']),this['_dollyStart']['copy'](this['_dollyEnd']);let aI=(aD['pageX']+aE['x'])*0.5,aJ=(aD['pageY']+aE['y'])*0.5;this[cp(0x1e3)](aI,aJ);}['_handleTouchMoveDollyPan'](aD){const cq=bZ;this[cq(0x157)]&&this['_handleTouchMoveDolly'](aD),this['enablePan']&&this['_handleTouchMovePan'](aD);}['_handleTouchMoveDollyRotate'](aD){const cr=bZ;this['enableZoom']&&this['_handleTouchMoveDolly'](aD),this['enableRotate']&&this[cr(0x1be)](aD);}['_addPointer'](aD){const cs=bZ;this['_pointers'][cs(0x183)](aD[cs(0x1ad)]);}['_removePointer'](aD){delete this['_pointerPositions'][aD['pointerId']];for(let aE=0x0;aE<this['_pointers']['length'];aE++)if(this['_pointers'][aE]==aD['pointerId']){this['_pointers']['splice'](aE,0x1);return;}}['_isTrackingPointer'](aD){const ct=bZ;for(let aE=0x0;aE<this['_pointers']['length'];aE++)if(this[ct(0x175)][aE]==aD['pointerId'])return!0x0;return!0x1;}['_trackPointer'](aD){const cu=bZ;let aE=this['_pointerPositions'][aD['pointerId']];aE===void 0x0&&(aE=new aq(),this['_pointerPositions'][aD['pointerId']]=aE),aE[cu(0x19b)](aD['pageX'],aD['pageY']);}['_getSecondPointerPosition'](aD){const cv=bZ;let aE=aD['pointerId']===this['_pointers'][0x0]?this[cv(0x175)][0x1]:this[cv(0x175)][0x0];return this['_pointerPositions'][aE];}['_customWheelEvent'](aD){const cw=bZ;let aE=aD['deltaMode'],aF={'clientX':aD['clientX'],'clientY':aD['clientY'],'deltaY':aD[cw(0x1ce)]};switch(aE){case 0x1:aF['deltaY']*=0x10;break;case 0x2:aF['deltaY']*=0x64;break;}return aD[cw(0x1f0)]&&!this['_controlActive']&&(aF['deltaY']*=0xa),aF;}};function I(aD){const cx=bZ;this['enabled']!==!0x1&&(this['_pointers']['length']===0x0&&(this['domElement']['setPointerCapture'](aD['pointerId']),this['domElement'][cx(0x165)]['addEventListener']('pointermove',this['_onPointerMove']),this['domElement'][cx(0x165)]['addEventListener']('pointerup',this['_onPointerUp'])),!this['_isTrackingPointer'](aD)&&(this['_addPointer'](aD),aD['pointerType']===cx(0x1a2)?this['_onTouchStart'](aD):this['_onMouseDown'](aD),this['_cursorStyle']===cx(0x1cd)&&(this['domElement']['style']['cursor']='grabbing')));}function L(aD){const cy=bZ;this['enabled']!==!0x1&&(aD['pointerType']===cy(0x1a2)?this[cy(0x1b2)](aD):this['_onMouseMove'](aD));}function R(aD){const cz=bZ;switch(this['_removePointer'](aD),this['_pointers']['length']){case 0x0:this['domElement']['releasePointerCapture'](aD[cz(0x1ad)]),this['domElement']['ownerDocument'][cz(0x1b4)]('pointermove',this['_onPointerMove']),this['domElement']['ownerDocument']['removeEventListener']('pointerup',this['_onPointerUp']),this['dispatchEvent'](O),this['state']=P[cz(0x17a)],this['_cursorStyle']==='grab'&&(this['domElement']['style']['cursor']='grab');break;case 0x1:let aE=this['_pointers'][0x0],aF=this['_pointerPositions'][aE];this['_onTouchStart']({'pointerId':aE,'pageX':aF['x'],'pageY':aF['y']});break;}}function z(aD){const cA=bZ;let aE;switch(aD['button']){case 0x0:aE=this['mouseButtons'][cA(0x169)];break;case 0x1:aE=this['mouseButtons']['MIDDLE'];break;case 0x2:aE=this['mouseButtons'][cA(0x160)];break;default:aE=-0x1;}switch(aE){case a6['DOLLY']:if(this['enableZoom']===!0x1)return;this['_handleMouseDownDolly'](aD),this['state']=P['DOLLY'];break;case a6['ROTATE']:if(aD[cA(0x1f0)]||aD['metaKey']||aD['shiftKey']){if(this['enablePan']===!0x1)return;this[cA(0x156)](aD),this['state']=P['PAN'];}else{if(this['enableRotate']===!0x1)return;this[cA(0x17d)](aD),this['state']=P['ROTATE'];}break;case a6['PAN']:if(aD['ctrlKey']||aD['metaKey']||aD[cA(0x1d5)]){if(this[cA(0x1db)]===!0x1)return;this[cA(0x17d)](aD),this[cA(0x19c)]=P[cA(0x167)];}else{if(this['enablePan']===!0x1)return;this['_handleMouseDownPan'](aD),this['state']=P['PAN'];}break;default:this['state']=P[cA(0x17a)];}this['state']!==P[cA(0x17a)]&&this['dispatchEvent'](D);}function B(aD){const cB=bZ;switch(this['state']){case P['ROTATE']:if(this['enableRotate']===!0x1)return;this['_handleMouseMoveRotate'](aD);break;case P['DOLLY']:if(this['enableZoom']===!0x1)return;this[cB(0x181)](aD);break;case P['PAN']:if(this['enablePan']===!0x1)return;this['_handleMouseMovePan'](aD);break;}}function V(aD){const cC=bZ;this['enabled']===!0x1||this[cC(0x157)]===!0x1||this['state']!==P[cC(0x17a)]||(aD['preventDefault'](),this['dispatchEvent'](D),this[cC(0x1f5)](this['_customWheelEvent'](aD)),this['dispatchEvent'](O));}function H(aD){const cD=bZ;this['enabled']!==!0x1&&this[cD(0x176)](aD);}function U(aD){const cE=bZ;switch(this['_trackPointer'](aD),this['_pointers']['length']){case 0x1:switch(this['touches']['ONE']){case a3[cE(0x167)]:if(this['enableRotate']===!0x1)return;this[cE(0x1b8)](aD),this['state']=P['TOUCH_ROTATE'];break;case a3['PAN']:if(this[cE(0x1de)]===!0x1)return;this['_handleTouchStartPan'](aD),this[cE(0x19c)]=P[cE(0x194)];break;default:this['state']=P['NONE'];}break;case 0x2:switch(this['touches']['TWO']){case a3['DOLLY_PAN']:if(this['enableZoom']===!0x1&&this['enablePan']===!0x1)return;this['_handleTouchStartDollyPan'](aD),this['state']=P['TOUCH_DOLLY_PAN'];break;case a3['DOLLY_ROTATE']:if(this['enableZoom']===!0x1&&this['enableRotate']===!0x1)return;this['_handleTouchStartDollyRotate'](aD),this['state']=P['TOUCH_DOLLY_ROTATE'];break;default:this['state']=P['NONE'];}break;default:this['state']=P['NONE'];}this[cE(0x19c)]!==P['NONE']&&this['dispatchEvent'](D);}function W(aD){const cF=bZ;switch(this['_trackPointer'](aD),this[cF(0x19c)]){case P['TOUCH_ROTATE']:if(this['enableRotate']===!0x1)return;this[cF(0x1be)](aD),this['update']();break;case P[cF(0x194)]:if(this['enablePan']===!0x1)return;this['_handleTouchMovePan'](aD),this['update']();break;case P['TOUCH_DOLLY_PAN']:if(this['enableZoom']===!0x1&&this['enablePan']===!0x1)return;this['_handleTouchMoveDollyPan'](aD),this[cF(0x18c)]();break;case P['TOUCH_DOLLY_ROTATE']:if(this[cF(0x157)]===!0x1&&this['enableRotate']===!0x1)return;this['_handleTouchMoveDollyRotate'](aD),this[cF(0x18c)]();break;default:this['state']=P['NONE'];}}function G(aD){this['enabled']!==!0x1&&aD['preventDefault']();}function K(aD){const cG=bZ;aD[cG(0x15a)]==='Control'&&(this['_controlActive']=!0x0,this['domElement']['getRootNode']()[cG(0x193)]('keyup',this['_interceptControlUp'],{'passive':!0x0,'capture':!0x0}));}function X(a,b){a=a-0x156;const c=Q();let d=c[a];return d;}function q(aD){aD['key']==='Control'&&(this['_controlActive']=!0x1,this['domElement']['getRootNode']()['removeEventListener']('keyup',this['_interceptControlUp'],{'passive':!0x0,'capture':!0x0}));}var ge={'class':bZ(0x1a7)},_e={'class':bZ(0x1c2)},ve={'class':'model-actions'},ye={'class':'model-meta'},be={'class':'model-stage'},xe={'key':0x0,'class':'model-state'},Se={'key':0x1,'class':bZ(0x17c)},J=Z(au({'__name':'ModelViewer','props':{'data':{},'type':{},'sourceUrl':{}},'setup'(aD){const cI=bZ;let aE=aD,aF=aA(null),aG=aA('loading'),aH=aA(''),aI=aA('正在加载模型'),aJ=aA(!0x1),aK=aA(!0x1),aL=aA(!0x0),aM=aA(!0x0),aN=null,aO=null,aP=null,aQ=null,aR=null,aS=null,aT=null,aU=null,aV=0x0,aW=0x0,aX=null,aY=new a2(),aZ=new TextDecoder('utf-8');class b0 extends Error{}let b1=()=>aE['type']['toLowerCase'](),b2=()=>{const cH=X;if(!aE['sourceUrl'])return'';try{return new URL('.',aE['sourceUrl'])['href'];}catch(bH){let bI=aE[cH(0x1dc)]['split'](/[?#]/)[0x0]||aE['sourceUrl'],bJ=bI['lastIndexOf']('/');return bJ>=0x0?bI[cH(0x164)](0x0,bJ+0x1):'';}},b3=bH=>bH instanceof Error?bH[cI(0x1cf)]:typeof bH=='string'?bH:JSON['stringify'](bH),b4=()=>{const cJ=cI;let bH=aF['value'];if(!bH)return!0x1;if(aN||(aN=new al({'antialias':!0x0,'alpha':!0x1,'canvas':bH,'powerPreference':cJ(0x1af)}),aN[cJ(0x1d7)](Math['min'](window['devicePixelRatio']||0x1,0x2)),aN['outputColorSpace']=am,aN['setClearColor'](0xf8fafc,0x1)),!aO){aO=new a5(),aO[cJ(0x18f)]=new ai(0xf8fafc);let bI=new a1(0xffffff,0xd7dee8,2.4);aO[cJ(0x1c3)](bI);let bJ=new an(0xffffff,2.2);bJ['position']['set'](0x8,0xa,0x8),aO[cJ(0x1c3)](bJ);let bK=new an(0xffffff,0.9);bK['position']['set'](-0x7,0x5,-0x4),aO['add'](bK),aS=new a4(0xa,0xa,0xcbd5e1,0xe2e8f0),aO['add'](aS),aT=new a9(0x3),aO['add'](aT);}return aP||(aP=new aj(0x2d,0x1,0.01,0x186a0),aP['position']['set'](0x5,0x4,0x6)),!aQ&&aP&&aN&&(aQ=new he(aP,aN[cJ(0x1b3)]),aQ['enableDamping']=!0x0,aQ['dampingFactor']=0.08,aQ['screenSpacePanning']=!0x0,aQ['autoRotateSpeed']=1.2),bD(),bA(),!0x0;},b5=bH=>{const cK=cI;(Array[cK(0x188)](bH)?bH:[bH])['forEach'](bI=>bI['dispose']());},b6=bH=>{bH['traverse'](bI=>{const cL=X;let bJ=bI,bK=bI;bJ[cL(0x1ec)]&&bJ['geometry']['dispose'](),bJ['material']&&b5(bJ[cL(0x1f8)]),bK['material']&&b5(bK['material']);});},b7=()=>{const cM=cI;aR&&aO&&(aO[cM(0x1d8)](aR),b6(aR)),aR=null,aX=null;},b8=()=>aZ[cI(0x196)](aE['data']),b9=(function(){var bH=t(function*(){let {GLTFLoader:bI}=yield import('./GLTFLoader.js'),bJ=new bI(),bK=b2(),bL=b1()==='gltf'?b8():aE['data'];return new Promise((bM,bN)=>{bJ['parse'](bL,bK,bO=>{const cN=X;var bP;(bP=bO['animations'])!=null&&bP['length']&&(aX=new af(bO[cN(0x1da)]),bO['animations'][cN(0x191)](bQ=>aX==null?void 0x0:aX['clipAction'](bQ)['play']())),bM(bO['scene']);},bN);});});return function(){return bH['apply'](this,arguments);};}()),ba=(function(){var bH=t(function*(){let {OBJLoader:bI}=yield import('./OBJLoader.js');return new bI()['parse'](b8());});return function(){const cO=X;return bH[cO(0x1eb)](this,arguments);};}()),bb=(function(){var bH=t(function*(){let {STLLoader:bI}=yield import('./STLLoader.js'),bJ=new bI()['parse'](aE['data']);return bJ['computeVertexNormals'](),new ab(bJ,bq());});return function(){return bH['apply'](this,arguments);};}()),bc=(function(){var bH=t(function*(){let {PLYLoader:bI}=yield import('./PLYLoader.js'),bJ=new bI()['parse'](aE['data']);return bJ['computeVertexNormals'](),new ab(bJ,bq());});return function(){const cP=X;return bH[cP(0x1eb)](this,arguments);};}()),bd=(function(){var bH=t(function*(){const cQ=X;var bI;let {FBXLoader:bJ}=yield import('./FBXLoader.js'),bK=new bJ()['parse'](aE[cQ(0x190)],b2());return(bI=bK['animations'])!=null&&bI[cQ(0x1b1)]&&(aX=new af(bK),bK['animations']['forEach'](bL=>aX==null?void 0x0:aX[cQ(0x16f)](bL)[cQ(0x1a3)]())),bK;});return function(){return bH['apply'](this,arguments);};}()),bf=(function(){var bH=t(function*(){const cR=X;let {ColladaLoader:bI}=yield import('./ColladaLoader.js');return new bI()[cR(0x1c5)](b8(),b2())[cR(0x1da)];});return function(){return bH['apply'](this,arguments);};}()),bg=(function(){var bH=t(function*(){let {TDSLoader:bI}=yield import('./TDSLoader.js');return new bI()['parse'](aE['data'],b2());});return function(){return bH['apply'](this,arguments);};}()),bh=(function(){var bH=t(function*(){let {ThreeMFLoader:bI}=yield import('./3MFLoader.js');return new bI()['parse'](aE['data']);});return function(){const cS=X;return bH[cS(0x1eb)](this,arguments);};}()),bi=(function(){var bH=t(function*(){let {AMFLoader:bI}=yield import('./AMFLoader.js');return new bI()['parse'](aE['data']);});return function(){const cT=X;return bH[cT(0x1eb)](this,arguments);};}()),bj=(function(){var bH=t(function*(){let {USDLoader:bI}=yield import('./USDLoader.js');return new bI()['parse'](aE['data']);});return function(){const cU=X;return bH[cU(0x1eb)](this,arguments);};}()),bk=(function(){var bH=t(function*(){let {KMZLoader:bI}=yield import('./KMZLoader.js');return new bI()['parse'](aE['data'])['scene'];});return function(){return bH['apply'](this,arguments);};}()),bl=bH=>{let bI=bH['toUpperCase']();throw bH==='ifc'?new b0('IFC\x20是\x20BIM\x20模型格式,浏览器端完整解析通常依赖\x20web-ifc\x20这类\x20WebAssembly\x20BIM\x20内核。当前\x20Apache-2.0\x20前端包不默认打入这类重型运行时,建议在私有服务端转换为\x20GLB/GLTF\x20后预览。'):bH==='3dm'?new b0('3DM\x20是\x20Rhino/OpenNURBS\x20模型格式,浏览器端解析需要\x20rhino3dm\x20WebAssembly\x20运行时。当前前端包未内置该运行时,建议在私有转换链路输出\x20GLB/GLTF\x20后预览。'):new b0(bI+'\x20属于\x20CAD\x20B-Rep\x20/\x20工程交换格式,浏览器端完整解析通常需要\x20OpenCascade\x20等\x20WebAssembly\x20几何内核。当前前端包不默认打入这类重型运行时,建议在私有服务端转换为\x20GLB/GLTF\x20或轻量网格格式后预览。');},bm=(function(){var bH=t(function*(){const cV=X;let {PCDLoader:bI}=yield import('./PCDLoader.js');return new bI()['parse'](aE['data'],aE['sourceUrl']||cV(0x19d));});return function(){return bH['apply'](this,arguments);};}()),bn=(function(){var bH=t(function*(){let {VRMLLoader:bI}=yield import('./VRMLLoader.js');return new bI()['parse'](b8(),b2());});return function(){return bH['apply'](this,arguments);};}()),bo=(function(){var bH=t(function*(){let {XYZLoader:bI}=yield import('./XYZLoader.js'),bJ=new bI()['parse'](b8());return bJ['computeBoundingSphere'](),new ad(bJ,br());});return function(){return bH['apply'](this,arguments);};}()),bp=(function(){var bH=t(function*(){let {VTKLoader:bI}=yield import('./VTKLoader.js'),bJ=new bI()['parse'](aE['data']);return bJ['computeVertexNormals'](),new ab(bJ,bq());});return function(){return bH['apply'](this,arguments);};}()),bq=()=>new aa({'color':0x4f8fba,'metalness':0.08,'roughness':0.78,'side':0x2,'wireframe':aK['value']}),br=()=>new a8({'color':0x1f7a8c,'size':0.035,'sizeAttenuation':!0x0}),bs=bH=>{bH['traverse'](bI=>{const cW=X;let bJ=bI;bJ['isMesh']&&!bJ['material']&&(bJ['material']=bq()),bJ['isMesh']&&bJ[cW(0x1f8)]&&(Array['isArray'](bJ['material'])?bJ['material']:[bJ['material']])[cW(0x191)](bK=>{'wireframe'in bK&&(bK['wireframe']=aK['value']),bK['needsUpdate']=!0x0;});});},bt=bH=>{let bI=0x0,bJ=0x0;return bH['traverse'](bK=>{bK['isMesh']&&(bI+=0x1),bK['isPoints']&&(bJ+=0x1);}),{'meshes':bI,'points':bJ};},bu=bH=>{const cX=cI;let {meshes:bI,points:bJ}=bt(bH),bK=[];bI&&bK['push'](bI+cX(0x171)),bJ&&bK['push'](bJ+'\x20个点云'),aI[cX(0x177)]=bK['length']?bK['join'](','):'模型已加载';},bv=bH=>{const cY=cI;let bI=new ak()[cY(0x1e6)](bH);if(bI['isEmpty']())return{'center':new a0(),'size':new a0(0x4,0x4,0x4)};let bJ=bI['getCenter'](new a0()),bK=bI['getSize'](new a0());return bH['position']['sub'](bJ),{'center':new a0(),'size':bK};},bw=()=>{const cZ=cI;if(!aR||!aP||!aQ)return;let bH=new ak()['setFromObject'](aR),bI=bH['getSize'](new a0()),bJ=bH['getCenter'](new a0()),bK=Math['max'](bI['x'],bI['y'],bI['z'],0x1)/(0x2*Math[cZ(0x1ee)](a7['degToRad'](aP['fov']/0x2)))*1.65;aP['near']=Math['max'](bK/0x3e8,0.01),aP[cZ(0x19f)]=Math['max'](bK*0x3e8,0x3e8),aP['position']['copy'](bJ)['add'](new a0(bK,bK*0.62,bK)),aP[cZ(0x17b)](),aQ['target']['copy'](bJ),aQ['update']();},bx=(function(){var bH=t(function*(bI){if(!aO)return;b7(),bs(bI);let {size:bJ}=bv(bI);aR=bI,aO['add'](bI),bw(),bu(bI);let bK=Math['max'](bJ['x'],bJ['y'],bJ['z'],0x1);aS&&aS['scale']['setScalar'](Math['max'](bK/0xa,0x1));});return function(bI){const d0=X;return bH[d0(0x1eb)](this,arguments);};}()),by=(function(){var bH=t(function*(){const d1=X;let bI=++aW;if(aG['value']='loading',aH[d1(0x177)]='',aI['value']='正在加载模型',b4())try{let bJ=yield bz(b1());if(bI!==aW){b6(bJ);return;}yield av(),yield bx(bJ),aG['value']='ready';}catch(bK){if(bI!==aW)return;bK instanceof b0||console['error'](bK),aG['value']='error',aH['value']=b3(bK)||aE[d1(0x1f6)]['toUpperCase']()+'\x20模型解析失败';}});return function(){return bH['apply'](this,arguments);};}()),bz=bH=>{const d2=cI;switch(bH){case d2(0x16d):case'gltf':return b9();case'obj':return ba();case'stl':return bb();case'ply':return bc();case'fbx':return bd();case'dae':return bf();case'3ds':return bg();case'3mf':return bh();case'amf':return bi();case'usd':case'usda':case'usdc':case'usdz':return bj();case d2(0x17e):return bk();case'step':case'stp':case d2(0x1bc):case'igs':case d2(0x1b0):case'3dm':return bl(bH);case'pcd':return bm();case'wrl':case'vrml':return bn();case'xyz':return bo();case'vtk':case'vtp':return bp();default:throw Error('暂不支持\x20.'+bH+d2(0x1c4));}},bA=()=>{const d3=cI;let bH=aF['value'];if(!bH||!aN||!aP)return;let bI=bH['getBoundingClientRect'](),bJ=Math['max'](0x1,Math['floor'](bI['width'])),bK=Math['max'](0x1,Math['floor'](bI[d3(0x1c7)]));aN['setSize'](bJ,bK,!0x1),aP['aspect']=bJ/bK,aP['updateProjectionMatrix']();},bB=bH=>{const d4=cI;if(!aN||!aO||!aP||!aQ)return;aQ['autoRotate']=aJ['value'],aQ['update'](),aY['update'](bH);let bI=aY[d4(0x1a6)]();aX==null||aX['update'](bI),aN['render'](aO,aP),aV=requestAnimationFrame(bB);},bC=()=>{aR&&bs(aR);},bD=()=>{const d5=cI;aS&&(aS[d5(0x19a)]=aL[d5(0x177)]),aT&&(aT[d5(0x19a)]=aM['value']);},bE=()=>{aK['value']=!aK['value'],bC();},bF=()=>{aL['value']=!aL['value'],bD();},bG=()=>{const d6=cI;aM['value']=!aM[d6(0x177)],bD();};return ay(()=>{b4()&&(aY['connect'](document),aU=new ResizeObserver(bA),aF['value']&&aU['observe'](aF['value']),bB(),by());}),ax(()=>{const d7=cI;aW+=0x1,cancelAnimationFrame(aV),aU==null||aU['disconnect'](),aU=null,b7(),aQ==null||aQ['dispose'](),aQ=null,aN==null||aN['dispose'](),aN=null,aY[d7(0x1ea)](),aY=new a2(),aO=null,aP=null,aS=null,aT=null;}),aC(()=>[aE['data'],aE['type'],aE['sourceUrl']],()=>{by();}),(bH,bI)=>(az(),as(cI(0x192),ge,[at('div',_e,[at('div',ve,[at('button',{'type':'button','onClick':bw},'适配'),at('button',{'type':'button','class':aw({'active':aJ['value']}),'onClick':bI[0x0]||(bI[0x0]=bJ=>aJ['value']=!aJ['value'])},'旋转',0x2),at('button',{'type':'button','class':aw({'active':aK[cI(0x177)]}),'onClick':bE},'线框',0x2),at(cI(0x1df),{'type':cI(0x1df),'class':aw({'active':aL['value']}),'onClick':bF},'网格',0x2),at('button',{'type':'button','class':aw({'active':aM['value']}),'onClick':bG},'坐标',0x2)]),at('div',ye,[at('strong',null,aB(aD['type'][cI(0x173)]()),0x1),at('span',null,aB(aI['value']),0x1)])]),at('div',be,[at('canvas',{'ref_key':'canvas','ref':aF},null,0x200),aG[cI(0x177)]==='loading'?(az(),as(cI(0x192),xe,'正在解析\x203D\x20模型...')):aG['value']==='error'?(az(),as('div',Se,[bI[0x1]||(bI[0x1]=at(cI(0x16c),null,'模型解析失败',-0x1)),at('span',null,aB(aH['value']),0x1)])):ar('',!0x0)])]));}}),[['__scopeId','data-v-9d2e23df']]);export{J as default};
@@ -1 +1 @@
1
- function k(a,b){a=a-0x1a1;const c=j();let d=c[a];return d;}(function(Q,R){const aL=k,U=Q();while(!![]){try{const V=-parseInt(aL(0x1cc))/0x1*(-parseInt(aL(0x1b8))/0x2)+parseInt(aL(0x1be))/0x3+parseInt(aL(0x1a8))/0x4+-parseInt(aL(0x1b0))/0x5+-parseInt(aL(0x1bf))/0x6+-parseInt(aL(0x1ac))/0x7*(-parseInt(aL(0x1c1))/0x8)+-parseInt(aL(0x1a4))/0x9;if(V===R)break;else U['push'](U['shift']());}catch(W){U['push'](U['shift']());}}}(j,0x5ccb9));import{Bt as q,C as z,E as A,K as B,V as F,X as G,_t as H,et as I,gt as J,p as K,rt as L,u as M,w as N,wt as O,z as P}from'./three.module.js';var h=/^[og]\s*(.+)?/,g=/^mtllib /,_=/^usemtl /,v=/^usemap /,y=/\s+/,b=new q(),x=new q(),S=new q(),C=new q(),w=new q(),T=new K();function E(){let Q={'objects':[],'object':{},'vertices':[],'normals':[],'colors':[],'uvs':[],'materials':{},'materialLibraries':[],'startObject':function(R,U){const aM=k;if(this['object']&&this['object'][aM(0x1bc)]===!0x1){this[aM(0x1b7)]['name']=R,this[aM(0x1b7)]['fromDeclaration']=U!==!0x1;return;}let V=this[aM(0x1b7)]&&typeof this['object']['currentMaterial']=='function'?this['object']['currentMaterial']():void 0x0;if(this[aM(0x1b7)]&&typeof this['object'][aM(0x1c0)]==aM(0x1cb)&&this['object'][aM(0x1c0)](!0x0),this[aM(0x1b7)]={'name':R||'','fromDeclaration':U!==!0x1,'geometry':{'vertices':[],'normals':[],'colors':[],'uvs':[],'hasUVIndices':!0x1},'materials':[],'smooth':!0x0,'startMaterial':function(W,X){const aN=aM;let Y=this['_finalize'](!0x1);Y&&(Y['inherited']||Y[aN(0x1c2)]<=0x0)&&this['materials']['splice'](Y[aN(0x1aa)],0x1);let Z={'index':this['materials']['length'],'name':W||'','mtllib':Array['isArray'](X)&&X['length']>0x0?X[X['length']-0x1]:'','smooth':Y===void 0x0?this['smooth']:Y[aN(0x1b6)],'groupStart':Y===void 0x0?0x0:Y['groupEnd'],'groupEnd':-0x1,'groupCount':-0x1,'inherited':!0x1,'clone':function(a0){const aO=aN;let a1={'index':typeof a0=='number'?a0:this[aO(0x1aa)],'name':this[aO(0x1bb)],'mtllib':this[aO(0x1b3)],'smooth':this[aO(0x1b6)],'groupStart':0x0,'groupEnd':-0x1,'groupCount':-0x1,'inherited':!0x1};return a1[aO(0x1a7)]=this[aO(0x1a7)]['bind'](a1),a1;}};return this['materials'][aN(0x1d2)](Z),Z;},'currentMaterial':function(){if(this['materials']['length']>0x0)return this['materials'][this['materials']['length']-0x1];},'_finalize':function(W){const aP=aM;let X=this[aP(0x1c9)]();if(X&&X[aP(0x1b5)]===-0x1&&(X['groupEnd']=this['geometry']['vertices']['length']/0x3,X['groupCount']=X['groupEnd']-X['groupStart'],X['inherited']=!0x1),W&&this[aP(0x1ae)]['length']>0x1){for(let Y=this['materials']['length']-0x1;Y>=0x0;Y--)this[aP(0x1ae)][Y]['groupCount']<=0x0&&this['materials']['splice'](Y,0x1);}return W&&this['materials']['length']===0x0&&this['materials']['push']({'name':'','smooth':this[aP(0x1b6)]}),X;}},V&&V['name']&&typeof V['clone']=='function'){let W=V['clone'](0x0);W['inherited']=!0x0,this['object']['materials']['push'](W);}this['objects'][aM(0x1d2)](this['object']);},'finalize':function(){const aQ=k;this[aQ(0x1b7)]&&typeof this['object']['_finalize']=='function'&&this['object']['_finalize'](!0x0);},'parseVertexIndex':function(R,U){let V=parseInt(R,0xa);return(V>=0x0?V-0x1:V+U/0x3)*0x3;},'parseNormalIndex':function(R,U){let V=parseInt(R,0xa);return(V>=0x0?V-0x1:V+U/0x3)*0x3;},'parseUVIndex':function(R,U){let V=parseInt(R,0xa);return(V>=0x0?V-0x1:V+U/0x2)*0x2;},'addVertex':function(R,U,V){const aR=k;let W=this['vertices'],X=this[aR(0x1b7)]['geometry'][aR(0x1b1)];X['push'](W[R+0x0],W[R+0x1],W[R+0x2]),X['push'](W[U+0x0],W[U+0x1],W[U+0x2]),X['push'](W[V+0x0],W[V+0x1],W[V+0x2]);},'addVertexPoint':function(R){const aS=k;let U=this[aS(0x1b1)];this[aS(0x1b7)][aS(0x1a3)]['vertices']['push'](U[R+0x0],U[R+0x1],U[R+0x2]);},'addVertexLine':function(R){const aT=k;let U=this['vertices'];this['object']['geometry']['vertices'][aT(0x1d2)](U[R+0x0],U[R+0x1],U[R+0x2]);},'addNormal':function(R,U,V){const aU=k;let W=this[aU(0x1c7)],X=this['object'][aU(0x1a3)]['normals'];X['push'](W[R+0x0],W[R+0x1],W[R+0x2]),X['push'](W[U+0x0],W[U+0x1],W[U+0x2]),X['push'](W[V+0x0],W[V+0x1],W[V+0x2]);},'addFaceNormal':function(R,U,V){const aV=k;let W=this['vertices'],X=this[aV(0x1b7)]['geometry']['normals'];b['fromArray'](W,R),x['fromArray'](W,U),S['fromArray'](W,V),w['subVectors'](S,x),C[aV(0x1b2)](b,x),w['cross'](C),w['normalize'](),X['push'](w['x'],w['y'],w['z']),X['push'](w['x'],w['y'],w['z']),X['push'](w['x'],w['y'],w['z']);},'addColor':function(R,U,V){const aW=k;let W=this[aW(0x1a2)],X=this['object'][aW(0x1a3)][aW(0x1a2)];W[R]!==void 0x0&&X['push'](W[R+0x0],W[R+0x1],W[R+0x2]),W[U]!==void 0x0&&X['push'](W[U+0x0],W[U+0x1],W[U+0x2]),W[V]!==void 0x0&&X[aW(0x1d2)](W[V+0x0],W[V+0x1],W[V+0x2]);},'addUV':function(R,U,V){let W=this['uvs'],X=this['object']['geometry']['uvs'];X['push'](W[R+0x0],W[R+0x1]),X['push'](W[U+0x0],W[U+0x1]),X['push'](W[V+0x0],W[V+0x1]);},'addDefaultUV':function(){const aX=k;let R=this['object']['geometry']['uvs'];R[aX(0x1d2)](0x0,0x0),R['push'](0x0,0x0),R['push'](0x0,0x0);},'addUVLine':function(R){let U=this['uvs'];this['object']['geometry']['uvs']['push'](U[R+0x0],U[R+0x1]);},'addFace':function(R,U,V,W,X,Y,Z,a0,a1){const aY=k;let a2=this['vertices']['length'],a3=this['parseVertexIndex'](R,a2),a4=this['parseVertexIndex'](U,a2),a5=this['parseVertexIndex'](V,a2);if(this['addVertex'](a3,a4,a5),this['addColor'](a3,a4,a5),Z!==void 0x0&&Z!==''){let a6=this['normals']['length'];a3=this[aY(0x1bd)](Z,a6),a4=this['parseNormalIndex'](a0,a6),a5=this['parseNormalIndex'](a1,a6),this['addNormal'](a3,a4,a5);}else this['addFaceNormal'](a3,a4,a5);if(W!==void 0x0&&W!==''){let a7=this['uvs'][aY(0x1b4)];a3=this['parseUVIndex'](W,a7),a4=this['parseUVIndex'](X,a7),a5=this['parseUVIndex'](Y,a7),this['addUV'](a3,a4,a5),this['object'][aY(0x1a3)]['hasUVIndices']=!0x0;}else this[aY(0x1ad)]();},'addPointGeometry':function(R){const aZ=k;this['object']['geometry']['type']=aZ(0x1c5);let U=this['vertices']['length'];for(let V=0x0,W=R['length'];V<W;V++){let X=this['parseVertexIndex'](R[V],U);this['addVertexPoint'](X),this['addColor'](X);}},'addLineGeometry':function(R,U){const b0=k;this['object']['geometry']['type']='Line';let V=this['vertices']['length'],W=this[b0(0x1a9)]['length'];for(let X=0x0,Y=R['length'];X<Y;X++)this['addVertexLine'](this['parseVertexIndex'](R[X],V));for(let Z=0x0,a0=U['length'];Z<a0;Z++)this['addUVLine'](this['parseUVIndex'](U[Z],W));}};return Q['startObject']('',!0x1),Q;}var D=class extends B{constructor(Q){super(Q),this['materials']=null;}['load'](Q,R,U,V){const b1=k;let W=this,X=new z(this['manager']);X['setPath'](this['path']),X['setRequestHeader'](this['requestHeader']),X['setWithCredentials'](this['withCredentials']),X[b1(0x1d0)](Q,function(Y){const b2=b1;try{R(W['parse'](Y));}catch(Z){V?V(Z):console['error'](Z),W['manager'][b2(0x1a1)](Q);}},U,V);}['setMaterials'](Q){return this['materials']=Q,this;}['parse'](Q){const b3=k;let R=new E();Q['indexOf']('\x0d\x0a')!==-0x1&&(Q=Q['replace'](/\r\n/g,'\x0a')),Q[b3(0x1cd)]('\x5c\x0a')!==-0x1&&(Q=Q['replace'](/\\\n/g,''));let U=Q['split']('\x0a'),V=[];for(let X=0x0,Y=U['length'];X<Y;X++){let Z=U[X]['trimStart']();if(Z['length']===0x0)continue;let a0=Z[b3(0x1b9)](0x0);if(a0!=='#'){if(a0==='v'){let a1=Z[b3(0x1ce)](y);switch(a1[0x0]){case'v':R[b3(0x1b1)]['push'](parseFloat(a1[0x1]),parseFloat(a1[0x2]),parseFloat(a1[0x3])),a1['length']>=0x7?(T['setRGB'](parseFloat(a1[0x4]),parseFloat(a1[0x5]),parseFloat(a1[0x6]),O),R['colors']['push'](T['r'],T['g'],T['b'])):R['colors']['push'](void 0x0,void 0x0,void 0x0);break;case'vn':R['normals']['push'](parseFloat(a1[0x1]),parseFloat(a1[0x2]),parseFloat(a1[0x3]));break;case'vt':R['uvs'][b3(0x1d2)](parseFloat(a1[0x1]),parseFloat(a1[0x2]));break;}}else{if(a0==='f'){let a2=Z['slice'](0x1)['trim']()['split'](y),a3=[];for(let a5=0x0,a6=a2['length'];a5<a6;a5++){let a7=a2[a5];if(a7[b3(0x1b4)]>0x0){let a8=a7['split']('/');a3['push'](a8);}}let a4=a3[0x0];for(let a9=0x1,aa=a3['length']-0x1;a9<aa;a9++){let ab=a3[a9],ac=a3[a9+0x1];R[b3(0x1d1)](a4[0x0],ab[0x0],ac[0x0],a4[0x1],ab[0x1],ac[0x1],a4[0x2],ab[0x2],ac[0x2]);}}else{if(a0==='l'){let ad=Z['substring'](0x1)['trim']()['split']('\x20'),ae=[],af=[];if(Z['indexOf']('/')===-0x1)ae=ad;else for(let ag=0x0,ah=ad[b3(0x1b4)];ag<ah;ag++){let ai=ad[ag]['split']('/');ai[0x0]!==''&&ae['push'](ai[0x0]),ai[0x1]!==''&&af['push'](ai[0x1]);}R[b3(0x1cf)](ae,af);}else{if(a0==='p'){let aj=Z['slice'](0x1)[b3(0x1a6)]()['split']('\x20');R[b3(0x1c8)](aj);}else{if((V=h['exec'](Z))!==null){let ak=('\x20'+V[0x0]['slice'](0x1)[b3(0x1a6)]())['slice'](0x1);R['startObject'](ak);}else{if(_['test'](Z))R['object']['startMaterial'](Z['substring'](0x7)['trim'](),R['materialLibraries']);else{if(g['test'](Z))R['materialLibraries']['push'](Z['substring'](0x7)['trim']());else{if(v['test'](Z))console['warn']('THREE.OBJLoader:\x20Rendering\x20identifier\x20\x22usemap\x22\x20not\x20supported.\x20Textures\x20must\x20be\x20defined\x20in\x20MTL\x20files.');else{if(a0==='s'){if(V=Z['split']('\x20'),V['length']>0x1){let am=V[0x1]['trim']()[b3(0x1ab)]();R['object'][b3(0x1b6)]=am!=='0'&&am!=='off';}else R['object']['smooth']=!0x0;let al=R['object']['currentMaterial']();al&&(al['smooth']=R['object']['smooth']);}else{if(Z==='\x00')continue;console[b3(0x1c4)]('THREE.OBJLoader:\x20Unexpected\x20line:\x20\x22'+Z+'\x22');}}}}}}}}}}}R[b3(0x1ba)]();let W=new A();if(W['materialLibraries']=[]['concat'](R[b3(0x1ca)]),!(R['objects']['length']===0x1&&R['objects'][0x0]['geometry'][b3(0x1b1)]['length']===0x0))for(let an=0x0,ao=R['objects']['length'];an<ao;an++){let ap=R['objects'][an],aq=ap['geometry'],ar=ap['materials'],as=aq['type']===b3(0x1c3),at=aq['type']==='Points',au=!0x1;if(aq[b3(0x1b1)]['length']===0x0)continue;let av=new M();av['setAttribute'](b3(0x1af),new N(aq['vertices'],0x3)),aq['normals']['length']>0x0&&av['setAttribute']('normal',new N(aq['normals'],0x3)),aq['colors']['length']>0x0&&(au=!0x0,av['setAttribute']('color',new N(aq['colors'],0x3))),aq['hasUVIndices']===!0x0&&av['setAttribute']('uv',new N(aq[b3(0x1a9)],0x2));let aw=[];for(let ay=0x0,az=ar['length'];ay<az;ay++){let aA=ar[ay],aB=aA[b3(0x1bb)]+'_'+aA['smooth']+'_'+au,aC=R['materials'][aB];if(this['materials']!==null){if(aC=this['materials']['create'](aA['name']),as&&aC&&!(aC instanceof P)){let aD=new P();G['prototype']['copy']['call'](aD,aC),aD['color']['copy'](aC['color']),aC=aD;}else{if(at&&aC&&!(aC instanceof H)){let aE=new H({'size':0xa,'sizeAttenuation':!0x1});G['prototype']['copy'][b3(0x1a5)](aE,aC),aE['color']['copy'](aC[b3(0x1c6)]),aE['map']=aC['map'],aC=aE;}}}aC===void 0x0&&(aC=as?new P():at?new H({'size':0x1,'sizeAttenuation':!0x1}):new L(),aC[b3(0x1bb)]=aA['name'],aC['flatShading']=!aA['smooth'],aC['vertexColors']=au,R['materials'][aB]=aC),aw[b3(0x1d2)](aC);}let ax;if(aw[b3(0x1b4)]>0x1){for(let aF=0x0,aG=ar['length'];aF<aG;aF++){let aH=ar[aF];av['addGroup'](aH['groupStart'],aH['groupCount'],aF);}ax=as?new F(av,aw):at?new J(av,aw):new I(av,aw);}else ax=as?new F(av,aw[0x0]):at?new J(av,aw[0x0]):new I(av,aw[0x0]);ax['name']=ap['name'],W['add'](ax);}else{if(R['vertices'][b3(0x1b4)]>0x0){let aI=new H({'size':0x1,'sizeAttenuation':!0x1}),aJ=new M();aJ['setAttribute']('position',new N(R['vertices'],0x3)),R['colors']['length']>0x0&&R['colors'][0x0]!==void 0x0&&(aJ['setAttribute'](b3(0x1c6),new N(R['colors'],0x3)),aI['vertexColors']=!0x0);let aK=new J(aJ,aI);W['add'](aK);}}return W;}};function j(){const b4=['subVectors','mtllib','length','groupEnd','smooth','object','594nYLoju','charAt','finalize','name','fromDeclaration','parseNormalIndex','507924mVEwaB','2327898pOvXTV','_finalize','381560MZnUxX','groupCount','Line','warn','Points','color','normals','addPointGeometry','currentMaterial','materialLibraries','function','2018pUqITs','indexOf','split','addLineGeometry','load','addFace','push','itemError','colors','geometry','1038798yNeSdd','call','trim','clone','2008844kwSxyr','uvs','index','toLowerCase','49ykIype','addDefaultUV','materials','position','3606180fWDGPG','vertices'];j=function(){return b4;};return j();}export{D as OBJLoader};
1
+ (function(Q,R){const aL=k,U=Q();while(!![]){try{const V=-parseInt(aL(0x1ca))/0x1*(-parseInt(aL(0x1b9))/0x2)+-parseInt(aL(0x1c8))/0x3+-parseInt(aL(0x1b4))/0x4*(parseInt(aL(0x1b8))/0x5)+-parseInt(aL(0x1aa))/0x6*(-parseInt(aL(0x1cf))/0x7)+parseInt(aL(0x1bb))/0x8*(-parseInt(aL(0x1c0))/0x9)+parseInt(aL(0x1ad))/0xa*(-parseInt(aL(0x1a9))/0xb)+parseInt(aL(0x1ba))/0xc;if(V===R)break;else U['push'](U['shift']());}catch(W){U['push'](U['shift']());}}}(j,0x3c463));function j(){const b5=['vertices','materials','normals','1434168WBRbqJ','parseNormalIndex','withCredentials','test','5mqupWt','16aIzqFf','15719664CUPbut','8AXpZHY','type','inherited','geometry','flatShading','1430118omKCaP','smooth','parseVertexIndex','object','push','subVectors','off','trim','1076697KASLli','setWithCredentials','12494QQcPDO','Line','uvs','_finalize','colors','63oTYslH','fromArray','parseUVIndex','color','manager','function','split','groupEnd','561PfqyOl','112794XLPwDT','addUVLine','length','89390FzGHFP','splice','addNormal','copy'];j=function(){return b5;};return j();}import{Bt as q,C as z,E as A,K as B,V as F,X as G,_t as H,et as I,gt as J,p as K,rt as L,u as M,w as N,wt as O,z as P}from'./three.module.js';var h=/^[og]\s*(.+)?/,g=/^mtllib /,_=/^usemtl /,v=/^usemap /,y=/\s+/,b=new q(),x=new q(),S=new q(),C=new q(),w=new q(),T=new K();function E(){let Q={'objects':[],'object':{},'vertices':[],'normals':[],'colors':[],'uvs':[],'materials':{},'materialLibraries':[],'startObject':function(R,U){const aM=k;if(this['object']&&this[aM(0x1c3)]['fromDeclaration']===!0x1){this['object']['name']=R,this['object']['fromDeclaration']=U!==!0x1;return;}let V=this['object']&&typeof this['object']['currentMaterial']=='function'?this['object']['currentMaterial']():void 0x0;if(this['object']&&typeof this[aM(0x1c3)][aM(0x1cd)]=='function'&&this['object']['_finalize'](!0x0),this['object']={'name':R||'','fromDeclaration':U!==!0x1,'geometry':{'vertices':[],'normals':[],'colors':[],'uvs':[],'hasUVIndices':!0x1},'materials':[],'smooth':!0x0,'startMaterial':function(W,X){const aN=aM;let Y=this[aN(0x1cd)](!0x1);Y&&(Y['inherited']||Y['groupCount']<=0x0)&&this['materials']['splice'](Y['index'],0x1);let Z={'index':this['materials'][aN(0x1ac)],'name':W||'','mtllib':Array['isArray'](X)&&X['length']>0x0?X[X['length']-0x1]:'','smooth':Y===void 0x0?this[aN(0x1c1)]:Y['smooth'],'groupStart':Y===void 0x0?0x0:Y['groupEnd'],'groupEnd':-0x1,'groupCount':-0x1,'inherited':!0x1,'clone':function(a0){let a1={'index':typeof a0=='number'?a0:this['index'],'name':this['name'],'mtllib':this['mtllib'],'smooth':this['smooth'],'groupStart':0x0,'groupEnd':-0x1,'groupCount':-0x1,'inherited':!0x1};return a1['clone']=this['clone']['bind'](a1),a1;}};return this['materials']['push'](Z),Z;},'currentMaterial':function(){if(this['materials']['length']>0x0)return this['materials'][this['materials']['length']-0x1];},'_finalize':function(W){const aO=aM;let X=this['currentMaterial']();if(X&&X[aO(0x1d6)]===-0x1&&(X['groupEnd']=this['geometry']['vertices']['length']/0x3,X['groupCount']=X['groupEnd']-X['groupStart'],X[aO(0x1bd)]=!0x1),W&&this['materials']['length']>0x1){for(let Y=this['materials']['length']-0x1;Y>=0x0;Y--)this[aO(0x1b2)][Y]['groupCount']<=0x0&&this['materials'][aO(0x1ae)](Y,0x1);}return W&&this['materials']['length']===0x0&&this['materials'][aO(0x1c4)]({'name':'','smooth':this['smooth']}),X;}},V&&V['name']&&typeof V['clone']=='function'){let W=V['clone'](0x0);W['inherited']=!0x0,this['object']['materials']['push'](W);}this['objects']['push'](this['object']);},'finalize':function(){const aP=k;this['object']&&typeof this['object']['_finalize']==aP(0x1d4)&&this['object']['_finalize'](!0x0);},'parseVertexIndex':function(R,U){let V=parseInt(R,0xa);return(V>=0x0?V-0x1:V+U/0x3)*0x3;},'parseNormalIndex':function(R,U){let V=parseInt(R,0xa);return(V>=0x0?V-0x1:V+U/0x3)*0x3;},'parseUVIndex':function(R,U){let V=parseInt(R,0xa);return(V>=0x0?V-0x1:V+U/0x2)*0x2;},'addVertex':function(R,U,V){const aQ=k;let W=this['vertices'],X=this['object'][aQ(0x1be)]['vertices'];X['push'](W[R+0x0],W[R+0x1],W[R+0x2]),X[aQ(0x1c4)](W[U+0x0],W[U+0x1],W[U+0x2]),X['push'](W[V+0x0],W[V+0x1],W[V+0x2]);},'addVertexPoint':function(R){const aR=k;let U=this['vertices'];this['object']['geometry']['vertices'][aR(0x1c4)](U[R+0x0],U[R+0x1],U[R+0x2]);},'addVertexLine':function(R){const aS=k;let U=this['vertices'];this['object']['geometry'][aS(0x1b1)]['push'](U[R+0x0],U[R+0x1],U[R+0x2]);},'addNormal':function(R,U,V){const aT=k;let W=this[aT(0x1b3)],X=this[aT(0x1c3)]['geometry']['normals'];X['push'](W[R+0x0],W[R+0x1],W[R+0x2]),X['push'](W[U+0x0],W[U+0x1],W[U+0x2]),X['push'](W[V+0x0],W[V+0x1],W[V+0x2]);},'addFaceNormal':function(R,U,V){const aU=k;let W=this['vertices'],X=this['object']['geometry']['normals'];b['fromArray'](W,R),x['fromArray'](W,U),S[aU(0x1d0)](W,V),w['subVectors'](S,x),C[aU(0x1c5)](b,x),w['cross'](C),w['normalize'](),X['push'](w['x'],w['y'],w['z']),X['push'](w['x'],w['y'],w['z']),X[aU(0x1c4)](w['x'],w['y'],w['z']);},'addColor':function(R,U,V){const aV=k;let W=this['colors'],X=this['object'][aV(0x1be)]['colors'];W[R]!==void 0x0&&X['push'](W[R+0x0],W[R+0x1],W[R+0x2]),W[U]!==void 0x0&&X[aV(0x1c4)](W[U+0x0],W[U+0x1],W[U+0x2]),W[V]!==void 0x0&&X['push'](W[V+0x0],W[V+0x1],W[V+0x2]);},'addUV':function(R,U,V){const aW=k;let W=this['uvs'],X=this['object'][aW(0x1be)]['uvs'];X['push'](W[R+0x0],W[R+0x1]),X['push'](W[U+0x0],W[U+0x1]),X['push'](W[V+0x0],W[V+0x1]);},'addDefaultUV':function(){const aX=k;let R=this['object']['geometry'][aX(0x1cc)];R['push'](0x0,0x0),R['push'](0x0,0x0),R['push'](0x0,0x0);},'addUVLine':function(R){const aY=k;let U=this[aY(0x1cc)];this['object']['geometry']['uvs']['push'](U[R+0x0],U[R+0x1]);},'addFace':function(R,U,V,W,X,Y,Z,a0,a1){const aZ=k;let a2=this['vertices']['length'],a3=this['parseVertexIndex'](R,a2),a4=this['parseVertexIndex'](U,a2),a5=this['parseVertexIndex'](V,a2);if(this['addVertex'](a3,a4,a5),this['addColor'](a3,a4,a5),Z!==void 0x0&&Z!==''){let a6=this['normals']['length'];a3=this[aZ(0x1b5)](Z,a6),a4=this['parseNormalIndex'](a0,a6),a5=this[aZ(0x1b5)](a1,a6),this[aZ(0x1af)](a3,a4,a5);}else this['addFaceNormal'](a3,a4,a5);if(W!==void 0x0&&W!==''){let a7=this[aZ(0x1cc)]['length'];a3=this[aZ(0x1d1)](W,a7),a4=this['parseUVIndex'](X,a7),a5=this['parseUVIndex'](Y,a7),this['addUV'](a3,a4,a5),this[aZ(0x1c3)]['geometry']['hasUVIndices']=!0x0;}else this['addDefaultUV']();},'addPointGeometry':function(R){const b0=k;this[b0(0x1c3)]['geometry'][b0(0x1bc)]='Points';let U=this['vertices']['length'];for(let V=0x0,W=R['length'];V<W;V++){let X=this[b0(0x1c2)](R[V],U);this['addVertexPoint'](X),this['addColor'](X);}},'addLineGeometry':function(R,U){const b1=k;this['object']['geometry']['type']='Line';let V=this['vertices']['length'],W=this['uvs'][b1(0x1ac)];for(let X=0x0,Y=R['length'];X<Y;X++)this['addVertexLine'](this[b1(0x1c2)](R[X],V));for(let Z=0x0,a0=U['length'];Z<a0;Z++)this[b1(0x1ab)](this['parseUVIndex'](U[Z],W));}};return Q['startObject']('',!0x1),Q;}function k(a,b){a=a-0x1a9;const c=j();let d=c[a];return d;}var D=class extends B{constructor(Q){super(Q),this['materials']=null;}['load'](Q,R,U,V){const b2=k;let W=this,X=new z(this['manager']);X['setPath'](this['path']),X['setRequestHeader'](this['requestHeader']),X[b2(0x1c9)](this[b2(0x1b6)]),X['load'](Q,function(Y){const b3=b2;try{R(W['parse'](Y));}catch(Z){V?V(Z):console['error'](Z),W[b3(0x1d3)]['itemError'](Q);}},U,V);}['setMaterials'](Q){return this['materials']=Q,this;}['parse'](Q){const b4=k;let R=new E();Q['indexOf']('\x0d\x0a')!==-0x1&&(Q=Q['replace'](/\r\n/g,'\x0a')),Q['indexOf']('\x5c\x0a')!==-0x1&&(Q=Q['replace'](/\\\n/g,''));let U=Q[b4(0x1d5)]('\x0a'),V=[];for(let X=0x0,Y=U['length'];X<Y;X++){let Z=U[X]['trimStart']();if(Z[b4(0x1ac)]===0x0)continue;let a0=Z['charAt'](0x0);if(a0!=='#'){if(a0==='v'){let a1=Z[b4(0x1d5)](y);switch(a1[0x0]){case'v':R['vertices']['push'](parseFloat(a1[0x1]),parseFloat(a1[0x2]),parseFloat(a1[0x3])),a1['length']>=0x7?(T['setRGB'](parseFloat(a1[0x4]),parseFloat(a1[0x5]),parseFloat(a1[0x6]),O),R['colors']['push'](T['r'],T['g'],T['b'])):R[b4(0x1ce)][b4(0x1c4)](void 0x0,void 0x0,void 0x0);break;case'vn':R[b4(0x1b3)][b4(0x1c4)](parseFloat(a1[0x1]),parseFloat(a1[0x2]),parseFloat(a1[0x3]));break;case'vt':R['uvs']['push'](parseFloat(a1[0x1]),parseFloat(a1[0x2]));break;}}else{if(a0==='f'){let a2=Z['slice'](0x1)['trim']()['split'](y),a3=[];for(let a5=0x0,a6=a2['length'];a5<a6;a5++){let a7=a2[a5];if(a7[b4(0x1ac)]>0x0){let a8=a7['split']('/');a3['push'](a8);}}let a4=a3[0x0];for(let a9=0x1,aa=a3['length']-0x1;a9<aa;a9++){let ab=a3[a9],ac=a3[a9+0x1];R['addFace'](a4[0x0],ab[0x0],ac[0x0],a4[0x1],ab[0x1],ac[0x1],a4[0x2],ab[0x2],ac[0x2]);}}else{if(a0==='l'){let ad=Z['substring'](0x1)['trim']()[b4(0x1d5)]('\x20'),ae=[],af=[];if(Z['indexOf']('/')===-0x1)ae=ad;else for(let ag=0x0,ah=ad['length'];ag<ah;ag++){let ai=ad[ag]['split']('/');ai[0x0]!==''&&ae['push'](ai[0x0]),ai[0x1]!==''&&af['push'](ai[0x1]);}R['addLineGeometry'](ae,af);}else{if(a0==='p'){let aj=Z['slice'](0x1)['trim']()['split']('\x20');R['addPointGeometry'](aj);}else{if((V=h['exec'](Z))!==null){let ak=('\x20'+V[0x0]['slice'](0x1)['trim']())['slice'](0x1);R['startObject'](ak);}else{if(_['test'](Z))R['object']['startMaterial'](Z['substring'](0x7)[b4(0x1c7)](),R['materialLibraries']);else{if(g[b4(0x1b7)](Z))R['materialLibraries']['push'](Z['substring'](0x7)['trim']());else{if(v['test'](Z))console['warn']('THREE.OBJLoader:\x20Rendering\x20identifier\x20\x22usemap\x22\x20not\x20supported.\x20Textures\x20must\x20be\x20defined\x20in\x20MTL\x20files.');else{if(a0==='s'){if(V=Z['split']('\x20'),V[b4(0x1ac)]>0x1){let am=V[0x1]['trim']()['toLowerCase']();R['object'][b4(0x1c1)]=am!=='0'&&am!==b4(0x1c6);}else R['object']['smooth']=!0x0;let al=R[b4(0x1c3)]['currentMaterial']();al&&(al['smooth']=R[b4(0x1c3)]['smooth']);}else{if(Z==='\x00')continue;console['warn']('THREE.OBJLoader:\x20Unexpected\x20line:\x20\x22'+Z+'\x22');}}}}}}}}}}}R['finalize']();let W=new A();if(W['materialLibraries']=[]['concat'](R['materialLibraries']),!(R['objects']['length']===0x1&&R['objects'][0x0]['geometry']['vertices']['length']===0x0))for(let an=0x0,ao=R['objects'][b4(0x1ac)];an<ao;an++){let ap=R['objects'][an],aq=ap[b4(0x1be)],ar=ap['materials'],as=aq['type']===b4(0x1cb),at=aq['type']==='Points',au=!0x1;if(aq[b4(0x1b1)]['length']===0x0)continue;let av=new M();av['setAttribute']('position',new N(aq['vertices'],0x3)),aq['normals']['length']>0x0&&av['setAttribute']('normal',new N(aq[b4(0x1b3)],0x3)),aq[b4(0x1ce)]['length']>0x0&&(au=!0x0,av['setAttribute'](b4(0x1d2),new N(aq['colors'],0x3))),aq['hasUVIndices']===!0x0&&av['setAttribute']('uv',new N(aq['uvs'],0x2));let aw=[];for(let ay=0x0,az=ar[b4(0x1ac)];ay<az;ay++){let aA=ar[ay],aB=aA['name']+'_'+aA[b4(0x1c1)]+'_'+au,aC=R[b4(0x1b2)][aB];if(this['materials']!==null){if(aC=this['materials']['create'](aA['name']),as&&aC&&!(aC instanceof P)){let aD=new P();G['prototype'][b4(0x1b0)]['call'](aD,aC),aD['color']['copy'](aC['color']),aC=aD;}else{if(at&&aC&&!(aC instanceof H)){let aE=new H({'size':0xa,'sizeAttenuation':!0x1});G['prototype']['copy']['call'](aE,aC),aE['color']['copy'](aC['color']),aE['map']=aC['map'],aC=aE;}}}aC===void 0x0&&(aC=as?new P():at?new H({'size':0x1,'sizeAttenuation':!0x1}):new L(),aC['name']=aA['name'],aC[b4(0x1bf)]=!aA[b4(0x1c1)],aC['vertexColors']=au,R['materials'][aB]=aC),aw[b4(0x1c4)](aC);}let ax;if(aw[b4(0x1ac)]>0x1){for(let aF=0x0,aG=ar['length'];aF<aG;aF++){let aH=ar[aF];av['addGroup'](aH['groupStart'],aH['groupCount'],aF);}ax=as?new F(av,aw):at?new J(av,aw):new I(av,aw);}else ax=as?new F(av,aw[0x0]):at?new J(av,aw[0x0]):new I(av,aw[0x0]);ax['name']=ap['name'],W['add'](ax);}else{if(R['vertices'][b4(0x1ac)]>0x0){let aI=new H({'size':0x1,'sizeAttenuation':!0x1}),aJ=new M();aJ['setAttribute']('position',new N(R['vertices'],0x3)),R['colors']['length']>0x0&&R['colors'][0x0]!==void 0x0&&(aJ['setAttribute']('color',new N(R['colors'],0x3)),aI['vertexColors']=!0x0);let aK=new J(aJ,aI);W['add'](aK);}}return W;}};export{D as OBJLoader};
@@ -1 +1 @@
1
- (function(E,F){const af=g,G=E();while(!![]){try{const H=parseInt(af(0x15c))/0x1*(-parseInt(af(0x15d))/0x2)+-parseInt(af(0x15f))/0x3+parseInt(af(0x155))/0x4+parseInt(af(0x153))/0x5*(-parseInt(af(0x156))/0x6)+parseInt(af(0x15b))/0x7+parseInt(af(0x14f))/0x8*(parseInt(af(0x159))/0x9)+parseInt(af(0x157))/0xa;if(H===F)break;else G['push'](G['shift']());}catch(I){G['push'](G['shift']());}}}(b,0xa9dc8));import{n as j,t}from'./asyncToGenerator.js';function g(a,c){a=a-0x14d;const d=b();let e=d[a];return e;}import{t as k}from'./_plugin-vue_export-helper.js';import{createCommentVNode as q,createElementBlock as v,createElementVNode as w,defineComponent as x,nextTick as y,onBeforeUnmount as z,onMounted as A,openBlock as B,ref as C,toDisplayString as D}from'vue';j();var p={'key':0x0,'class':'ofd-state'},m={'key':0x1,'class':'ofd-state\x20error'},h=k(x({'__name':'OfdViewer','props':{'data':{}},'setup'(F){const ah=g;let G=F,H=C(null),I=C(null),J=C('loading'),K=C(''),L=!0x1,N=0x0,P=null,Q=0x0,R=0x0,U=null,V=()=>{const ag=g;let a4=H['value'];if(a4){for(;a4[ag(0x14e)];)a4['removeChild'](a4[ag(0x14e)]);}},W=a4=>new Promise((a5,a6)=>{a4['parseOfdDocument']({'ofd':G['data'],'success':a7=>a5(a7),'fail':a7=>a6(a7)});}),X=(function(){var a4=t(function*(a5){return U||(U=W(a5)['then'](a6=>{let a7=a6[0x0];if(!a7)throw Error('OFD\x20文件中没有可渲染的文档');return a7;})),U;});return function(a5){return a4['apply'](this,arguments);};}()),Y=a4=>a4 instanceof Error?a4[ah(0x15a)]:typeof a4=='string'?a4:JSON['stringify'](a4),Z=(a4,a5)=>{const ai=ah;let a6=document[ai(0x14d)]();a5['forEach'](a7=>{const aj=ai;a7[aj(0x150)]['add']('ofd-page'),a6['appendChild'](a7);}),a4[ai(0x152)](a6);},a0=()=>{const ak=ah;var a4,a5;let a6=((a4=I['value'])==null?void 0x0:a4['getBoundingClientRect']()['width'])||((a5=H[ak(0x154)])==null?void 0x0:a5['getBoundingClientRect']()['width'])||0x0;return Math[ak(0x160)](Math['floor'](a6-0x30),0xf0);},a1=(function(){var a4=t(function*(a5){let a6=yield import('./ofd.js'),a7=yield X(a6);return L?[]:Promise['resolve'](a6['renderOfd'](a5,a7));});return function(a5){return a4['apply'](this,arguments);};}()),a2=(function(){var a4=t(function*(a5={}){const al=g;var a6,a7;let a8=H['value'];if(!a8)return;let a9=(a6=a5['force'])==null?!0x1:a6,aa=(a7=a5['showLoading'])==null?!0x1:a7,ab=a0();if(!a9&&J['value']==='ready'&&Math['abs'](ab-R)<0x8)return;let ac=++N;(aa||J['value']!=='ready')&&(J['value']='loading',V()),K[al(0x154)]='';try{yield y();let ad=yield a1(ab);if(L||ac!==N)return;V(),Z(a8,ad),R=ab,J['value']='ready';}catch(ae){if(L||ac!==N)return;console['error'](ae),J['value']='error',K[al(0x154)]=Y(ae)||'OFD\x20文件解析失败';}});return function(){return a4['apply'](this,arguments);};}()),a3=()=>{!I['value']||P||(P=new ResizeObserver(()=>{const am=g;window[am(0x15e)](Q),Q=window['setTimeout'](()=>{L||a2({'showLoading':!0x1});},0xb4);}),P['observe'](I['value']));};return A(()=>{a2({'force':!0x0,'showLoading':!0x0})['finally'](()=>{a3();});}),z(()=>{const an=ah;L=!0x0,N+=0x1,window[an(0x15e)](Q),P==null||P['disconnect'](),P=null,V();}),(a4,a5)=>(B(),v('div',{'ref_key':'viewer','ref':I,'class':'ofd-viewer'},[J['value']===ah(0x158)?(B(),v('div',p,'正在解析\x20OFD...')):J[ah(0x154)]==='error'?(B(),v('div',m,D(K['value']),0x1)):q('',!0x0),w('div',{'ref_key':ah(0x151),'ref':H,'class':'ofd-stage'},null,0x200)],0x200));}}),[['__scopeId','data-v-48238ef6']]);function b(){const ao=['firstChild','8URCsRP','classList','stage','appendChild','5LBmUEr','value','4720928YKpKco','7692816cUmZAV','13922290GFGoiB','loading','5285421jRCCcL','message','2504712DlYdpB','647180SoUeMd','2LePgKT','clearTimeout','2677434hLaHAS','max','createDocumentFragment'];b=function(){return ao;};return b();}export{h as default};
1
+ (function(E,F){const af=g,G=E();while(!![]){try{const H=-parseInt(af(0x14d))/0x1+parseInt(af(0x14f))/0x2*(parseInt(af(0x154))/0x3)+-parseInt(af(0x148))/0x4+-parseInt(af(0x152))/0x5+parseInt(af(0x14e))/0x6+parseInt(af(0x14b))/0x7+parseInt(af(0x14c))/0x8*(parseInt(af(0x153))/0x9);if(H===F)break;else G['push'](G['shift']());}catch(I){G['push'](G['shift']());}}}(b,0xe9f59));import{n as j,t}from'./asyncToGenerator.js';import{t as k}from'./_plugin-vue_export-helper.js';function b(){const ak=['1398980fPIBod','71046nieyYB','6mkOVQu','div','ofd-viewer','6813652ijqkZa','setTimeout','string','5486789SjLsIx','8NAclMx','962410unbJHS','8470854jbVCUI','1700386laaWtk','disconnect','add'];b=function(){return ak;};return b();}function g(a,c){a=a-0x147;const d=b();let e=d[a];return e;}import{createCommentVNode as q,createElementBlock as v,createElementVNode as w,defineComponent as x,nextTick as y,onBeforeUnmount as z,onMounted as A,openBlock as B,ref as C,toDisplayString as D}from'vue';j();var p={'key':0x0,'class':'ofd-state'},m={'key':0x1,'class':'ofd-state\x20error'},h=k(x({'__name':'OfdViewer','props':{'data':{}},'setup'(F){const ag=g;let G=F,H=C(null),I=C(null),J=C('loading'),K=C(''),L=!0x1,N=0x0,P=null,Q=0x0,R=0x0,U=null,V=()=>{let a4=H['value'];if(a4){for(;a4['firstChild'];)a4['removeChild'](a4['firstChild']);}},W=a4=>new Promise((a5,a6)=>{a4['parseOfdDocument']({'ofd':G['data'],'success':a7=>a5(a7),'fail':a7=>a6(a7)});}),X=(function(){var a4=t(function*(a5){return U||(U=W(a5)['then'](a6=>{let a7=a6[0x0];if(!a7)throw Error('OFD\x20文件中没有可渲染的文档');return a7;})),U;});return function(a5){return a4['apply'](this,arguments);};}()),Y=a4=>a4 instanceof Error?a4['message']:typeof a4==ag(0x14a)?a4:JSON['stringify'](a4),Z=(a4,a5)=>{let a6=document['createDocumentFragment']();a5['forEach'](a7=>{const ah=g;a7['classList'][ah(0x151)]('ofd-page'),a6['appendChild'](a7);}),a4['appendChild'](a6);},a0=()=>{var a4,a5;let a6=((a4=I['value'])==null?void 0x0:a4['getBoundingClientRect']()['width'])||((a5=H['value'])==null?void 0x0:a5['getBoundingClientRect']()['width'])||0x0;return Math['max'](Math['floor'](a6-0x30),0xf0);},a1=(function(){var a4=t(function*(a5){let a6=yield import('./ofd.js'),a7=yield X(a6);return L?[]:Promise['resolve'](a6['renderOfd'](a5,a7));});return function(a5){return a4['apply'](this,arguments);};}()),a2=(function(){var a4=t(function*(a5={}){var a6,a7;let a8=H['value'];if(!a8)return;let a9=(a6=a5['force'])==null?!0x1:a6,aa=(a7=a5['showLoading'])==null?!0x1:a7,ab=a0();if(!a9&&J['value']==='ready'&&Math['abs'](ab-R)<0x8)return;let ac=++N;(aa||J['value']!=='ready')&&(J['value']='loading',V()),K['value']='';try{yield y();let ad=yield a1(ab);if(L||ac!==N)return;V(),Z(a8,ad),R=ab,J['value']='ready';}catch(ae){if(L||ac!==N)return;console['error'](ae),J['value']='error',K['value']=Y(ae)||'OFD\x20文件解析失败';}});return function(){return a4['apply'](this,arguments);};}()),a3=()=>{!I['value']||P||(P=new ResizeObserver(()=>{const ai=g;window['clearTimeout'](Q),Q=window[ai(0x149)](()=>{L||a2({'showLoading':!0x1});},0xb4);}),P['observe'](I['value']));};return A(()=>{a2({'force':!0x0,'showLoading':!0x0})['finally'](()=>{a3();});}),z(()=>{const aj=ag;L=!0x0,N+=0x1,window['clearTimeout'](Q),P==null||P[aj(0x150)](),P=null,V();}),(a4,a5)=>(B(),v(ag(0x155),{'ref_key':'viewer','ref':I,'class':ag(0x147)},[J['value']==='loading'?(B(),v('div',p,'正在解析\x20OFD...')):J['value']==='error'?(B(),v(ag(0x155),m,D(K['value']),0x1)):q('',!0x0),w('div',{'ref_key':'stage','ref':H,'class':'ofd-stage'},null,0x200)],0x200));}}),[['__scopeId','data-v-48238ef6']]);export{h as default};
@@ -1 +1 @@
1
- function d(a,c){a=a-0x120;const e=b();let f=e[a];return f;}(function(v,w){const at=d,x=v();while(!![]){try{const y=parseInt(at(0x122))/0x1+parseInt(at(0x142))/0x2*(parseInt(at(0x136))/0x3)+-parseInt(at(0x132))/0x4+parseInt(at(0x140))/0x5+-parseInt(at(0x139))/0x6+parseInt(at(0x149))/0x7*(parseInt(at(0x138))/0x8)+parseInt(at(0x148))/0x9*(-parseInt(at(0x14a))/0xa);if(y===w)break;else x['push'](x['shift']());}catch(z){x['push'](x['shift']());}}}(b,0xa2ce7));import{C as f,K as g,_t as h,gt as j,j as k,p as m,u as p,w as q,wt as u}from'./three.module.js';var l=class extends g{constructor(v){super(v),this['littleEndian']=!0x0;}['load'](v,w,x,y){const au=d;let z=this,A=new f(z['manager']);A['setPath'](z[au(0x135)]),A['setResponseType'](au(0x13d)),A['setRequestHeader'](z[au(0x121)]),A['setWithCredentials'](z['withCredentials']),A[au(0x13b)](v,function(B){const av=au;try{w(z[av(0x12a)](B));}catch(C){y?y(C):console['error'](C),z['manager']['itemError'](v);}},x,y);}['_getDataView'](v,w,x,y){const aw=d;switch(x){case'F':return y===0x8?v['getFloat64'](w,this['littleEndian']):v['getFloat32'](w,this[aw(0x13a)]);case'I':return y===0x1?v['getInt8'](w):y===0x2?v['getInt16'](w,this['littleEndian']):v[aw(0x12d)](w,this['littleEndian']);case'U':return y===0x1?v[aw(0x147)](w):y===0x2?v['getUint16'](w,this['littleEndian']):v['getUint32'](w,this[aw(0x13a)]);}}['parse'](w){const az=d;function x(I,J){const ax=d;let K=I[ax(0x129)],L=new Uint8Array(J),M=0x0,N=0x0,O,P,Q;do if(O=I[M++],O<0x20){if(O++,N+O>J)throw Error('Output\x20buffer\x20is\x20not\x20large\x20enough');if(M+O>K)throw Error('Invalid\x20compressed\x20data');do L[N++]=I[M++];while(--O);}else{if(P=O>>0x5,Q=N-((O&0x1f)<<0x8)-0x1,M>=K||P===0x7&&(P+=I[M++],M>=K))throw Error('Invalid\x20compressed\x20data');if(Q-=I[M++],N+P+0x2>J)throw Error('Output\x20buffer\x20is\x20not\x20large\x20enough');if(Q<0x0||Q>=N)throw Error('Invalid\x20compressed\x20data');do L[N++]=L[Q++];while(--P+0x2);}while(M<K);return L;}function y(I){const ay=d;let J={},K=new Uint8Array(I),L='',M='',N=0x0,O=!0x1,P=K['length'];for(;N<P&&O===!0x1;){let T=String['fromCharCode'](K[N++]);T==='\x0a'||T==='\x0d'?(M['trim']()[ay(0x123)]()['startsWith']('data')&&(O=!0x0),M=''):M+=T,L+=T;}let Q=L['search'](/[\r\n]DATA\s(\S*)\s/i),R=/[\r\n]DATA\s(\S*)\s/i['exec'](L['slice'](Q-0x1));if(J['data']=R[0x1],J['headerLen']=R[0x0]['length']+Q,J['str']=L['slice'](0x0,J['headerLen']),J['str']=J['str']['replace'](/#.*/gi,''),J['version']=/^VERSION (.*)/im['exec'](J[ay(0x13e)]),J[ay(0x145)]=/^FIELDS (.*)/im['exec'](J['str']),J['size']=/^SIZE (.*)/im['exec'](J['str']),J['type']=/^TYPE (.*)/im['exec'](J['str']),J['count']=/^COUNT (.*)/im['exec'](J['str']),J['width']=/^WIDTH (.*)/im['exec'](J['str']),J['height']=/^HEIGHT (.*)/im['exec'](J[ay(0x13e)]),J['viewpoint']=/^VIEWPOINT (.*)/im['exec'](J['str']),J['points']=/^POINTS (.*)/im['exec'](J['str']),J['version']!==null&&(J['version']=parseFloat(J['version'][0x1])),J[ay(0x145)]=J['fields']===null?[]:J[ay(0x145)][0x1]['split']('\x20'),J['type']!==null&&(J['type']=J['type'][0x1]['split']('\x20')),J[ay(0x120)]!==null&&(J['width']=parseInt(J['width'][0x1])),J[ay(0x125)]!==null&&(J['height']=parseInt(J['height'][0x1])),J[ay(0x133)]!==null&&(J['viewpoint']=J[ay(0x133)][0x1]),J['points']!==null&&(J['points']=parseInt(J['points'][0x1],0xa)),J['points']===null&&(J['points']=J['width']*J['height']),J['size']!==null&&(J['size']=J['size'][0x1]['split']('\x20')[ay(0x12f)](function(U){return parseInt(U,0xa);})),J['count']!==null)J['count']=J['count'][0x1]['split']('\x20')['map'](function(U){return parseInt(U,0xa);});else{J['count']=[];for(let U=0x0,V=J['fields']['length'];U<V;U++)J['count'][ay(0x12c)](0x1);}J['offset']={};let S=0x0;for(let W=0x0,X=J[ay(0x145)]['length'];W<X;W++)J[ay(0x143)]==='ascii'?J[ay(0x146)][J['fields'][W]]=W:(J[ay(0x146)][J['fields'][W]]=S,S+=J['size'][W]*J['count'][W]);return J['rowSize']=S,J;}let z=y(w),A=[],B=[],C=[],D=[],E=[],F=new m();if(z['data']==='ascii'){let I=z['offset'],J=new TextDecoder()['decode'](w)['slice'](z['headerLen'])['split']('\x0a');for(let K=0x0,L=J[az(0x129)];K<L;K++){if(J[K]==='')continue;let M=J[K]['split']('\x20');if(I['x']!==void 0x0&&(A[az(0x12c)](parseFloat(M[I['x']])),A['push'](parseFloat(M[I['y']])),A[az(0x12c)](parseFloat(M[I['z']]))),I['rgb']!==void 0x0){let N=z['fields']['findIndex'](U=>U==='rgb'),O=z['type'][N],P=parseFloat(M[I['rgb']]),Q=P;if(O==='F'){let U=new Float32Array(0x1);U[0x0]=P,Q=new Int32Array(U['buffer'])[0x0];}let R=(Q>>0x10&0xff)/0xff,S=(Q>>0x8&0xff)/0xff,T=(Q>>0x0&0xff)/0xff;F['setRGB'](R,S,T,u),C['push'](F['r'],F['g'],F['b']);}I['normal_x']!==void 0x0&&(B['push'](parseFloat(M[I['normal_x']])),B['push'](parseFloat(M[I[az(0x12b)]])),B['push'](parseFloat(M[I[az(0x124)]]))),I['intensity']!==void 0x0&&D[az(0x12c)](parseFloat(M[I['intensity']])),I[az(0x137)]!==void 0x0&&E['push'](parseInt(M[I['label']]));}}if(z['data']==='binary_compressed'){let V=new Uint32Array(w['slice'](z['headerLen'],z['headerLen']+0x8)),W=V[0x0],X=V[0x1],Y=x(new Uint8Array(w,z['headerLen']+0x8,W),X),Z=new DataView(Y['buffer']),a0=z[az(0x146)];for(let a1=0x0;a1<z['points'];a1++){if(a0['x']!==void 0x0){let a2=z['fields']['indexOf']('x'),a3=z['fields']['indexOf']('y'),a4=z['fields'][az(0x134)]('z');A['push'](this['_getDataView'](Z,z['points']*a0['x']+z['size'][a2]*a1,z[az(0x144)][a2],z['size'][a2])),A['push'](this['_getDataView'](Z,z['points']*a0['y']+z['size'][a3]*a1,z['type'][a3],z['size'][a3])),A['push'](this['_getDataView'](Z,z['points']*a0['z']+z['size'][a4]*a1,z['type'][a4],z['size'][a4]));}if(a0['rgb']!==void 0x0){let a5=z['fields']['indexOf']('rgb'),a6=Z['getUint8'](z['points']*a0[az(0x141)]+z['size'][a5]*a1+0x2)/0xff,a7=Z[az(0x147)](z['points']*a0['rgb']+z['size'][a5]*a1+0x1)/0xff,a8=Z['getUint8'](z[az(0x12e)]*a0['rgb']+z['size'][a5]*a1+0x0)/0xff;F[az(0x130)](a6,a7,a8,u),C['push'](F['r'],F['g'],F['b']);}if(a0['normal_x']!==void 0x0){let a9=z['fields']['indexOf']('normal_x'),aa=z['fields']['indexOf']('normal_y'),ab=z['fields']['indexOf']('normal_z');B['push'](this['_getDataView'](Z,z[az(0x12e)]*a0['normal_x']+z['size'][a9]*a1,z['type'][a9],z['size'][a9])),B['push'](this[az(0x13f)](Z,z[az(0x12e)]*a0[az(0x12b)]+z[az(0x126)][aa]*a1,z[az(0x144)][aa],z[az(0x126)][aa])),B['push'](this['_getDataView'](Z,z['points']*a0['normal_z']+z['size'][ab]*a1,z['type'][ab],z['size'][ab]));}if(a0['intensity']!==void 0x0){let ac=z['fields'][az(0x134)]('intensity');D['push'](this['_getDataView'](Z,z['points']*a0[az(0x13c)]+z['size'][ac]*a1,z['type'][ac],z[az(0x126)][ac]));}if(a0['label']!==void 0x0){let ad=z['fields']['indexOf']('label');E['push'](this[az(0x13f)](Z,z['points']*a0['label']+z['size'][ad]*a1,z['type'][ad],z['size'][ad]));}}}if(z['data']==='binary'){let ae=new DataView(w,z['headerLen']),af=z['offset'];for(let ag=0x0,ah=0x0;ag<z['points'];ag++,ah+=z[az(0x128)]){if(af['x']!==void 0x0){let ai=z['fields']['indexOf']('x'),aj=z[az(0x145)][az(0x134)]('y'),ak=z[az(0x145)]['indexOf']('z');A['push'](this['_getDataView'](ae,ah+af['x'],z['type'][ai],z['size'][ai])),A['push'](this['_getDataView'](ae,ah+af['y'],z[az(0x144)][aj],z['size'][aj])),A['push'](this['_getDataView'](ae,ah+af['z'],z['type'][ak],z['size'][ak]));}if(af['rgb']!==void 0x0){let al=ae['getUint8'](ah+af['rgb']+0x2)/0xff,am=ae['getUint8'](ah+af['rgb']+0x1)/0xff,an=ae['getUint8'](ah+af['rgb']+0x0)/0xff;F['setRGB'](al,am,an,u),C['push'](F['r'],F['g'],F['b']);}if(af['normal_x']!==void 0x0){let ao=z[az(0x145)]['indexOf'](az(0x127)),ap=z[az(0x145)][az(0x134)]('normal_y'),aq=z['fields'][az(0x134)]('normal_z');B[az(0x12c)](this['_getDataView'](ae,ah+af['normal_x'],z[az(0x144)][ao],z['size'][ao])),B['push'](this['_getDataView'](ae,ah+af['normal_y'],z['type'][ap],z[az(0x126)][ap])),B[az(0x12c)](this[az(0x13f)](ae,ah+af['normal_z'],z['type'][aq],z['size'][aq]));}if(af['intensity']!==void 0x0){let ar=z['fields']['indexOf']('intensity');D['push'](this['_getDataView'](ae,ah+af['intensity'],z['type'][ar],z['size'][ar]));}if(af[az(0x137)]!==void 0x0){let as=z['fields']['indexOf'](az(0x137));E['push'](this['_getDataView'](ae,ah+af[az(0x137)],z['type'][as],z['size'][as]));}}}let G=new p();A['length']>0x0&&G['setAttribute']('position',new q(A,0x3)),B['length']>0x0&&G[az(0x131)]('normal',new q(B,0x3)),C[az(0x129)]>0x0&&G['setAttribute']('color',new q(C,0x3)),D['length']>0x0&&G[az(0x131)]('intensity',new q(D,0x1)),E['length']>0x0&&G['setAttribute']('label',new k(E,0x1)),G['computeBoundingSphere']();let H=new h({'size':0.005});return C['length']>0x0&&(H['vertexColors']=!0x0),new j(G,H);}};export{l as PCDLoader};function b(){const aA=['push','getInt32','points','map','setRGB','setAttribute','2577904jxhOuU','viewpoint','indexOf','path','3513CXlVcT','label','88jZOqUF','1894326SrirZm','littleEndian','load','intensity','arraybuffer','str','_getDataView','5400335XzRQak','rgb','1614Chwduy','data','type','fields','offset','getUint8','139761BffJET','391321hKLXBP','910Wtpdwu','width','requestHeader','400194raudha','toLowerCase','normal_z','height','size','normal_x','rowSize','length','parse','normal_y'];b=function(){return aA;};return b();}
1
+ function d(a,c){a=a-0x1f2;const e=b();let f=e[a];return f;}function b(){const az=['width','size','getUint8','10jzrFjw','str','2973157WTVXMF','push','exec','1182848UDrNbT','6gWpydN','headerLen','length','881762XzjIkb','_getDataView','height','findIndex','slice','rgb','Invalid\x20compressed\x20data','indexOf','normal_x','buffer','setResponseType','405330rYDqVj','type','label','binary','9BfrjfA','1536880cRyWlG','count','points','viewpoint','241414RjVLGo','binary_compressed','data','3qzjWKT','getInt32','rowSize','fields','color','normal_y','1987728tlJZQO','littleEndian','split','intensity'];b=function(){return az;};return b();}(function(v,w){const at=d,x=v();while(!![]){try{const y=parseInt(at(0x1ff))/0x1+-parseInt(at(0x1f6))/0x2*(parseInt(at(0x202))/0x3)+parseInt(at(0x214))/0x4+-parseInt(at(0x1fb))/0x5+-parseInt(at(0x215))/0x6*(-parseInt(at(0x218))/0x7)+parseInt(at(0x208))/0x8*(-parseInt(at(0x1fa))/0x9)+-parseInt(at(0x20f))/0xa*(-parseInt(at(0x211))/0xb);if(y===w)break;else x['push'](x['shift']());}catch(z){x['push'](x['shift']());}}}(b,0x2ab18));import{C as f,K as g,_t as h,gt as j,j as k,p as m,u as p,w as q,wt as u}from'./three.module.js';var l=class extends g{constructor(v){super(v),this['littleEndian']=!0x0;}['load'](v,w,x,y){const au=d;let z=this,A=new f(z['manager']);A['setPath'](z['path']),A[au(0x1f5)]('arraybuffer'),A['setRequestHeader'](z['requestHeader']),A['setWithCredentials'](z['withCredentials']),A['load'](v,function(B){try{w(z['parse'](B));}catch(C){y?y(C):console['error'](C),z['manager']['itemError'](v);}},x,y);}['_getDataView'](v,w,x,y){const av=d;switch(x){case'F':return y===0x8?v['getFloat64'](w,this['littleEndian']):v['getFloat32'](w,this['littleEndian']);case'I':return y===0x1?v['getInt8'](w):y===0x2?v['getInt16'](w,this[av(0x209)]):v[av(0x203)](w,this['littleEndian']);case'U':return y===0x1?v[av(0x20e)](w):y===0x2?v['getUint16'](w,this['littleEndian']):v['getUint32'](w,this['littleEndian']);}}['parse'](w){const ay=d;function x(I,J){const aw=d;let K=I[aw(0x217)],L=new Uint8Array(J),M=0x0,N=0x0,O,P,Q;do if(O=I[M++],O<0x20){if(O++,N+O>J)throw Error('Output\x20buffer\x20is\x20not\x20large\x20enough');if(M+O>K)throw Error('Invalid\x20compressed\x20data');do L[N++]=I[M++];while(--O);}else{if(P=O>>0x5,Q=N-((O&0x1f)<<0x8)-0x1,M>=K||P===0x7&&(P+=I[M++],M>=K))throw Error('Invalid\x20compressed\x20data');if(Q-=I[M++],N+P+0x2>J)throw Error('Output\x20buffer\x20is\x20not\x20large\x20enough');if(Q<0x0||Q>=N)throw Error(aw(0x21e));do L[N++]=L[Q++];while(--P+0x2);}while(M<K);return L;}function y(I){const ax=d;let J={},K=new Uint8Array(I),L='',M='',N=0x0,O=!0x1,P=K['length'];for(;N<P&&O===!0x1;){let T=String['fromCharCode'](K[N++]);T==='\x0a'||T==='\x0d'?(M['trim']()['toLowerCase']()['startsWith']('data')&&(O=!0x0),M=''):M+=T,L+=T;}let Q=L['search'](/[\r\n]DATA\s(\S*)\s/i),R=/[\r\n]DATA\s(\S*)\s/i['exec'](L['slice'](Q-0x1));if(J['data']=R[0x1],J[ax(0x216)]=R[0x0]['length']+Q,J['str']=L[ax(0x21c)](0x0,J['headerLen']),J['str']=J['str']['replace'](/#.*/gi,''),J['version']=/^VERSION (.*)/im['exec'](J['str']),J['fields']=/^FIELDS (.*)/im['exec'](J[ax(0x210)]),J[ax(0x20d)]=/^SIZE (.*)/im['exec'](J[ax(0x210)]),J['type']=/^TYPE (.*)/im['exec'](J['str']),J['count']=/^COUNT (.*)/im['exec'](J['str']),J['width']=/^WIDTH (.*)/im['exec'](J['str']),J['height']=/^HEIGHT (.*)/im[ax(0x213)](J['str']),J['viewpoint']=/^VIEWPOINT (.*)/im['exec'](J['str']),J[ax(0x1fd)]=/^POINTS (.*)/im['exec'](J['str']),J['version']!==null&&(J['version']=parseFloat(J['version'][0x1])),J['fields']=J[ax(0x205)]===null?[]:J['fields'][0x1]['split']('\x20'),J['type']!==null&&(J[ax(0x1f7)]=J['type'][0x1]['split']('\x20')),J[ax(0x20c)]!==null&&(J['width']=parseInt(J['width'][0x1])),J['height']!==null&&(J[ax(0x21a)]=parseInt(J['height'][0x1])),J['viewpoint']!==null&&(J[ax(0x1fe)]=J['viewpoint'][0x1]),J['points']!==null&&(J['points']=parseInt(J['points'][0x1],0xa)),J['points']===null&&(J[ax(0x1fd)]=J['width']*J['height']),J['size']!==null&&(J['size']=J['size'][0x1]['split']('\x20')['map'](function(U){return parseInt(U,0xa);})),J['count']!==null)J['count']=J['count'][0x1]['split']('\x20')['map'](function(U){return parseInt(U,0xa);});else{J['count']=[];for(let U=0x0,V=J['fields']['length'];U<V;U++)J[ax(0x1fc)]['push'](0x1);}J['offset']={};let S=0x0;for(let W=0x0,X=J['fields']['length'];W<X;W++)J['data']==='ascii'?J['offset'][J['fields'][W]]=W:(J['offset'][J['fields'][W]]=S,S+=J['size'][W]*J['count'][W]);return J[ax(0x204)]=S,J;}let z=y(w),A=[],B=[],C=[],D=[],E=[],F=new m();if(z[ay(0x201)]==='ascii'){let I=z['offset'],J=new TextDecoder()['decode'](w)['slice'](z['headerLen'])['split']('\x0a');for(let K=0x0,L=J['length'];K<L;K++){if(J[K]==='')continue;let M=J[K][ay(0x20a)]('\x20');if(I['x']!==void 0x0&&(A[ay(0x212)](parseFloat(M[I['x']])),A[ay(0x212)](parseFloat(M[I['y']])),A['push'](parseFloat(M[I['z']]))),I['rgb']!==void 0x0){let N=z['fields'][ay(0x21b)](U=>U==='rgb'),O=z['type'][N],P=parseFloat(M[I['rgb']]),Q=P;if(O==='F'){let U=new Float32Array(0x1);U[0x0]=P,Q=new Int32Array(U['buffer'])[0x0];}let R=(Q>>0x10&0xff)/0xff,S=(Q>>0x8&0xff)/0xff,T=(Q>>0x0&0xff)/0xff;F['setRGB'](R,S,T,u),C['push'](F['r'],F['g'],F['b']);}I['normal_x']!==void 0x0&&(B['push'](parseFloat(M[I['normal_x']])),B['push'](parseFloat(M[I[ay(0x207)]])),B['push'](parseFloat(M[I['normal_z']]))),I[ay(0x20b)]!==void 0x0&&D[ay(0x212)](parseFloat(M[I['intensity']])),I['label']!==void 0x0&&E['push'](parseInt(M[I['label']]));}}if(z['data']===ay(0x200)){let V=new Uint32Array(w['slice'](z['headerLen'],z['headerLen']+0x8)),W=V[0x0],X=V[0x1],Y=x(new Uint8Array(w,z['headerLen']+0x8,W),X),Z=new DataView(Y[ay(0x1f4)]),a0=z['offset'];for(let a1=0x0;a1<z['points'];a1++){if(a0['x']!==void 0x0){let a2=z['fields']['indexOf']('x'),a3=z['fields']['indexOf']('y'),a4=z[ay(0x205)]['indexOf']('z');A['push'](this[ay(0x219)](Z,z['points']*a0['x']+z['size'][a2]*a1,z[ay(0x1f7)][a2],z['size'][a2])),A['push'](this['_getDataView'](Z,z['points']*a0['y']+z['size'][a3]*a1,z['type'][a3],z['size'][a3])),A['push'](this['_getDataView'](Z,z['points']*a0['z']+z[ay(0x20d)][a4]*a1,z['type'][a4],z['size'][a4]));}if(a0['rgb']!==void 0x0){let a5=z['fields'][ay(0x1f2)]('rgb'),a6=Z['getUint8'](z['points']*a0[ay(0x21d)]+z['size'][a5]*a1+0x2)/0xff,a7=Z['getUint8'](z['points']*a0['rgb']+z[ay(0x20d)][a5]*a1+0x1)/0xff,a8=Z['getUint8'](z['points']*a0['rgb']+z['size'][a5]*a1+0x0)/0xff;F['setRGB'](a6,a7,a8,u),C['push'](F['r'],F['g'],F['b']);}if(a0[ay(0x1f3)]!==void 0x0){let a9=z['fields']['indexOf']('normal_x'),aa=z['fields']['indexOf']('normal_y'),ab=z['fields'][ay(0x1f2)]('normal_z');B['push'](this['_getDataView'](Z,z['points']*a0['normal_x']+z['size'][a9]*a1,z[ay(0x1f7)][a9],z['size'][a9])),B[ay(0x212)](this['_getDataView'](Z,z['points']*a0[ay(0x207)]+z['size'][aa]*a1,z['type'][aa],z[ay(0x20d)][aa])),B['push'](this['_getDataView'](Z,z[ay(0x1fd)]*a0['normal_z']+z['size'][ab]*a1,z['type'][ab],z[ay(0x20d)][ab]));}if(a0['intensity']!==void 0x0){let ac=z['fields'][ay(0x1f2)]('intensity');D['push'](this['_getDataView'](Z,z['points']*a0['intensity']+z['size'][ac]*a1,z[ay(0x1f7)][ac],z['size'][ac]));}if(a0[ay(0x1f8)]!==void 0x0){let ad=z['fields'][ay(0x1f2)]('label');E['push'](this['_getDataView'](Z,z['points']*a0[ay(0x1f8)]+z['size'][ad]*a1,z['type'][ad],z['size'][ad]));}}}if(z['data']===ay(0x1f9)){let ae=new DataView(w,z['headerLen']),af=z['offset'];for(let ag=0x0,ah=0x0;ag<z['points'];ag++,ah+=z[ay(0x204)]){if(af['x']!==void 0x0){let ai=z['fields']['indexOf']('x'),aj=z['fields']['indexOf']('y'),ak=z['fields']['indexOf']('z');A['push'](this['_getDataView'](ae,ah+af['x'],z['type'][ai],z['size'][ai])),A['push'](this['_getDataView'](ae,ah+af['y'],z['type'][aj],z['size'][aj])),A[ay(0x212)](this['_getDataView'](ae,ah+af['z'],z['type'][ak],z[ay(0x20d)][ak]));}if(af['rgb']!==void 0x0){let al=ae['getUint8'](ah+af['rgb']+0x2)/0xff,am=ae['getUint8'](ah+af[ay(0x21d)]+0x1)/0xff,an=ae['getUint8'](ah+af[ay(0x21d)]+0x0)/0xff;F['setRGB'](al,am,an,u),C['push'](F['r'],F['g'],F['b']);}if(af['normal_x']!==void 0x0){let ao=z['fields']['indexOf']('normal_x'),ap=z['fields']['indexOf']('normal_y'),aq=z['fields']['indexOf']('normal_z');B['push'](this['_getDataView'](ae,ah+af['normal_x'],z['type'][ao],z['size'][ao])),B['push'](this['_getDataView'](ae,ah+af['normal_y'],z['type'][ap],z['size'][ap])),B['push'](this['_getDataView'](ae,ah+af['normal_z'],z['type'][aq],z[ay(0x20d)][aq]));}if(af[ay(0x20b)]!==void 0x0){let ar=z['fields']['indexOf']('intensity');D['push'](this['_getDataView'](ae,ah+af['intensity'],z['type'][ar],z['size'][ar]));}if(af['label']!==void 0x0){let as=z['fields'][ay(0x1f2)]('label');E['push'](this[ay(0x219)](ae,ah+af['label'],z['type'][as],z['size'][as]));}}}let G=new p();A['length']>0x0&&G['setAttribute']('position',new q(A,0x3)),B[ay(0x217)]>0x0&&G['setAttribute']('normal',new q(B,0x3)),C['length']>0x0&&G['setAttribute'](ay(0x206),new q(C,0x3)),D['length']>0x0&&G['setAttribute']('intensity',new q(D,0x1)),E['length']>0x0&&G['setAttribute']('label',new k(E,0x1)),G['computeBoundingSphere']();let H=new h({'size':0.005});return C[ay(0x217)]>0x0&&(H['vertexColors']=!0x0),new j(G,H);}};export{l as PCDLoader};
@@ -1 +1 @@
1
- const a2=d;function b(){const ag=['8120540enkeGi','propertyNameMapping','arraybuffer','size','arr','empty','1644561cEJAvp','join','properties','attrX','1356696vvQYFr','427863BkHwuV','elements','manager','name','faceVertexUvs','uint','getFloat64','22emHtrJ','fromCharCode','attrG','72PpyPoJ','objInfo','int16','normaly','setPropertyNameMapping','faceVertexColors','texture_v','2566571bKZARj','attrNX','length','push','normal','indices','count','attrT','char','1456033NwyBVU','next','format','attrB','customPropertyMapping','normals','path','itemType','uint8','attrZ','headerLength','ushort','getInt8','split','itemError','71010480vrAYet','6Ybmkbd'];b=function(){return ag;};return b();}(function(m,p){const Y=d,q=m();while(!![]){try{const u=-parseInt(Y(0x97))/0x1+parseInt(Y(0x84))/0x2*(-parseInt(Y(0xb3))/0x3)+-parseInt(Y(0xb2))/0x4+-parseInt(Y(0xa8))/0x5*(parseInt(Y(0xa7))/0x6)+parseInt(Y(0x8e))/0x7+-parseInt(Y(0x87))/0x8*(parseInt(Y(0xae))/0x9)+parseInt(Y(0xa6))/0xa;if(u===p)break;else q['push'](q['shift']());}catch(v){q['push'](q['shift']());}}}(b,0xcbdb2));import{C as f,K as g,p as h,u as j,w as k,wt as l}from'./three.module.js';function d(a,c){a=a-0x82;const e=b();let f=e[a];return f;}var o=new h(),s=class extends g{constructor(m){const Z=d;super(m),this[Z(0xa9)]={},this['customPropertyMapping']={};}['load'](m,p,q,u){const a0=d;let v=this,w=new f(this[a0(0xb5)]);w['setPath'](this[a0(0x9d)]),w['setResponseType'](a0(0xaa)),w['setRequestHeader'](this['requestHeader']),w['setWithCredentials'](this['withCredentials']),w['load'](m,function(x){const a1=a0;try{p(v['parse'](x));}catch(y){u?u(y):console['error'](y),v['manager'][a1(0xa5)](m);}},q,u);}[a2(0x8b)](m){this['propertyNameMapping']=m;}['setCustomPropertyNameMapping'](m){this['customPropertyMapping']=m;}['parse'](q){function w(L,M=0x0){const a3=d;let N=/^ply([\s\S]*)end_header(\r\n|\r|\n)/,O='',P=N['exec'](L);P!==null&&(O=P[0x1]);let Q={'comments':[],'elements':[],'headerLength':M,'objInfo':''},R=O[a3(0xa4)](/\r\n|\r|\n/),S;function T(U,V){const a4=a3;let W={'type':U[0x0]};return W['type']==='list'?(W[a4(0xb6)]=U[0x3],W['countType']=U[0x1],W[a4(0x9e)]=U[0x2]):W['name']=U[0x1],W['name']in V&&(W[a4(0xb6)]=V[W['name']]),W;}for(let U=0x0;U<R['length'];U++){let V=R[U];if(V=V['trim'](),V==='')continue;let W=V['split'](/\s+/),X=W['shift']();switch(V=W['join']('\x20'),X){case'format':Q['format']=W[0x0],Q['version']=W[0x1];break;case'comment':Q['comments']['push'](V);break;case'element':S!==void 0x0&&Q[a3(0xb4)][a3(0x91)](S),S={},S['name']=W[0x0],S['count']=parseInt(W[0x1]),S['properties']=[];break;case'property':S['properties']['push'](T(W,K['propertyNameMapping']));break;case'obj_info':Q[a3(0x88)]=V;break;default:console['log']('unhandled',X,W);}}return S!==void 0x0&&Q['elements']['push'](S),Q;}function x(L,M){const a5=d;switch(M){case'char':case'uchar':case'short':case a5(0xa2):case'int':case a5(0x82):case'int8':case a5(0x9f):case'int16':case'uint16':case'int32':case'uint32':return parseInt(L);case'float':case'double':case'float32':case'float64':return parseFloat(L);}}function z(L,M){const a6=d;let N={};for(let O=0x0;O<L['length'];O++){if(M[a6(0xad)]())return null;if(L[O]['type']==='list'){let P=[],Q=x(M[a6(0x98)](),L[O]['countType']);for(let R=0x0;R<Q;R++){if(M['empty']())return null;P[a6(0x91)](x(M['next'](),L[O]['itemType']));}N[L[O]['name']]=P;}else N[L[O]['name']]=x(M[a6(0x98)](),L[O]['type']);}return N;}function A(){let L={'indices':[],'vertices':[],'normals':[],'uvs':[],'faceVertexUvs':[],'colors':[],'faceVertexColors':[]};for(let M of Object['keys'](K['customPropertyMapping']))L[M]=[];return L;}function B(L){const a7=d;let M=L['map'](O=>O['name']);function N(O){for(let P=0x0,Q=O['length'];P<Q;P++){let R=O[P];if(M['includes'](R))return R;}return null;}return{'attrX':N(['x','px','posx'])||'x','attrY':N(['y','py','posy'])||'y','attrZ':N(['z','pz','posz'])||'z','attrNX':N(['nx','normalx']),'attrNY':N(['ny',a7(0x8a)]),'attrNZ':N(['nz','normalz']),'attrS':N(['s','u','texture_u','tx']),'attrT':N(['t','v',a7(0x8d),'ty']),'attrR':N(['red','diffuse_red','r','diffuse_r']),'attrG':N(['green','diffuse_green','g','diffuse_g']),'attrB':N(['blue','diffuse_blue','b','diffuse_b'])};}function C(L,M){const a8=d;let N=A(),O=/end_header\s+(\S[\s\S]*\S|\S)\s*$/,P,Q;P=(Q=O['exec'](L))===null?[]:Q[0x1]['split'](/\s+/);let R=new c(P);X:for(let S=0x0;S<M['elements'][a8(0x90)];S++){let T=M['elements'][S],U=B(T[a8(0xb0)]);for(let V=0x0;V<T[a8(0x94)];V++){let W=z(T['properties'],R);if(!W)break X;E(N,T['name'],W,U);}}return D(N);}function D(L){const a9=d;let M=new j();L[a9(0x93)][a9(0x90)]>0x0&&M['setIndex'](L['indices']),M['setAttribute']('position',new k(L['vertices'],0x3)),L['normals']['length']>0x0&&M['setAttribute'](a9(0x92),new k(L[a9(0x9c)],0x3)),L['uvs'][a9(0x90)]>0x0&&M['setAttribute']('uv',new k(L['uvs'],0x2)),L['colors'][a9(0x90)]>0x0&&M['setAttribute']('color',new k(L['colors'],0x3)),(L['faceVertexUvs'][a9(0x90)]>0x0||L[a9(0x8c)]['length']>0x0)&&(M=M['toNonIndexed'](),L['faceVertexUvs']['length']>0x0&&M['setAttribute']('uv',new k(L[a9(0xb7)],0x2)),L['faceVertexColors']['length']>0x0&&M['setAttribute']('color',new k(L['faceVertexColors'],0x3)));for(let N of Object['keys'](K['customPropertyMapping']))L[N][a9(0x90)]>0x0&&M['setAttribute'](N,new k(L[N],K['customPropertyMapping'][N][a9(0x90)]));return M['computeBoundingSphere'](),M;}function E(L,M,N,O){const aa=d;if(M==='vertex'){L['vertices'][aa(0x91)](N[O[aa(0xb1)]],N[O['attrY']],N[O[aa(0xa0)]]),O[aa(0x8f)]!==null&&O['attrNY']!==null&&O['attrNZ']!==null&&L['normals']['push'](N[O['attrNX']],N[O['attrNY']],N[O['attrNZ']]),O['attrS']!==null&&O[aa(0x95)]!==null&&L['uvs']['push'](N[O['attrS']],N[O['attrT']]),O['attrR']!==null&&O['attrG']!==null&&O[aa(0x9a)]!==null&&(o['setRGB'](N[O['attrR']]/0xff,N[O[aa(0x86)]]/0xff,N[O['attrB']]/0xff,l),L['colors'][aa(0x91)](o['r'],o['g'],o['b']));for(let P of Object['keys'](K[aa(0x9b)]))for(let Q of K[aa(0x9b)][P])L[P][aa(0x91)](N[Q]);}else{if(M==='face'){let R=N['vertex_indices']||N['vertex_index'],S=N['texcoord'];R['length']===0x3?(L[aa(0x93)][aa(0x91)](R[0x0],R[0x1],R[0x2]),S&&S['length']===0x6&&(L['faceVertexUvs']['push'](S[0x0],S[0x1]),L[aa(0xb7)]['push'](S[0x2],S[0x3]),L['faceVertexUvs']['push'](S[0x4],S[0x5]))):R['length']===0x4&&(L['indices']['push'](R[0x0],R[0x1],R[0x3]),L['indices']['push'](R[0x1],R[0x2],R[0x3])),O['attrR']!==null&&O['attrG']!==null&&O['attrB']!==null&&(o['setRGB'](N[O['attrR']]/0xff,N[O['attrG']]/0xff,N[O['attrB']]/0xff,l),L[aa(0x8c)]['push'](o['r'],o['g'],o['b']),L['faceVertexColors'][aa(0x91)](o['r'],o['g'],o['b']),L['faceVertexColors'][aa(0x91)](o['r'],o['g'],o['b']));}}}function F(L,M){const ab=d;let N={},O=0x0;for(let P=0x0;P<M['length'];P++){let Q=M[P],R=Q['valueReader'];if(Q['type']==='list'){let S=[],T=Q['countReader']['read'](L+O);O+=Q['countReader'][ab(0xab)];for(let U=0x0;U<T;U++)S['push'](R['read'](L+O)),O+=R[ab(0xab)];N[Q['name']]=S;}else N[Q['name']]=R['read'](L+O),O+=R['size'];}return[N,O];}function G(L,M,N){function O(P,Q,R){const ac=d;switch(Q){case'int8':case ac(0x96):return{'read':S=>P[ac(0xa3)](S),'size':0x1};case'uint8':case'uchar':return{'read':S=>P['getUint8'](S),'size':0x1};case ac(0x89):case'short':return{'read':S=>P['getInt16'](S,R),'size':0x2};case'uint16':case ac(0xa2):return{'read':S=>P['getUint16'](S,R),'size':0x2};case'int32':case'int':return{'read':S=>P['getInt32'](S,R),'size':0x4};case'uint32':case'uint':return{'read':S=>P['getUint32'](S,R),'size':0x4};case'float32':case'float':return{'read':S=>P['getFloat32'](S,R),'size':0x4};case'float64':case'double':return{'read':S=>P[ac(0x83)](S,R),'size':0x8};}}for(let P=0x0,Q=L['length'];P<Q;P++){let R=L[P];R['type']==='list'?(R['countReader']=O(M,R['countType'],N),R['valueReader']=O(M,R['itemType'],N)):R['valueReader']=O(M,R['type'],N);}}function H(L,M){const ad=d;let N=A(),O=M[ad(0x99)]==='binary_little_endian',P=new DataView(L,M[ad(0xa1)]),Q,R=0x0;for(let S=0x0;S<M['elements'][ad(0x90)];S++){let T=M['elements'][S],U=T['properties'],V=B(U);G(U,P,O);for(let W=0x0;W<T['count'];W++){Q=F(R,U),R+=Q[0x1];let X=Q[0x0];E(N,T['name'],X,V);}}return D(N);}function I(L){const ae=d;let M=0x0,N=!0x0,O='',P=[],Q=new TextDecoder()['decode'](L['subarray'](0x0,0x5)),R=/^ply\r\n/['test'](Q);do{let S=String[ae(0x85)](L[M++]);S!=='\x0a'&&S!=='\x0d'?O+=S:(O==='end_header'&&(N=!0x1),O!==''&&(P['push'](O),O=''));}while(N&&M<L['length']);return R===!0x0&&M++,{'headerText':P[ae(0xaf)]('\x0d')+'\x0d','headerLength':M};}let J,K=this;if(q instanceof ArrayBuffer){let L=new Uint8Array(q),{headerText:M,headerLength:N}=I(L),O=w(M,N);J=O['format']==='ascii'?C(new TextDecoder()['decode'](L),O):H(q,O);}else J=C(q,w(q));return J;}},c=class{constructor(m){this['arr']=m,this['i']=0x0;}['empty'](){const af=a2;return this['i']>=this[af(0xac)]['length'];}['next'](){return this['arr'][this['i']++];}};export{s as PLYLoader};
1
+ function b(){const ai=['7147830jPsAUe','elements','float32','attrX','arr','format','float64','itemError','exec','7607740YMQlai','setAttribute','unhandled','count','uint16','customPropertyMapping','shift','faceVertexColors','2207198PAnPPJ','attrG','name','getInt8','countType','2076291jFucsI','5663oLxhaA','manager','empty','length','uchar','18188hBwVAI','753BiKfHQ','setRGB','type','faceVertexUvs','normals','attrR','int','425170RLnNfd','element','property','error','valueReader','withCredentials','attrNX','parse','push','headerLength','attrNZ','ushort','2592sqEsPe'];b=function(){return ai;};return b();}const a1=d;(function(m,p){const Y=d,q=m();while(!![]){try{const u=parseInt(Y(0x130))/0x1+-parseInt(Y(0x11d))/0x2+parseInt(Y(0x129))/0x3*(-parseInt(Y(0x128))/0x4)+parseInt(Y(0x115))/0x5+parseInt(Y(0x13d))/0x6+parseInt(Y(0x123))/0x7*(-parseInt(Y(0x13c))/0x8)+parseInt(Y(0x122))/0x9;if(u===p)break;else q['push'](q['shift']());}catch(v){q['push'](q['shift']());}}}(b,0xd260e));import{C as f,K as g,p as h,u as j,w as k,wt as l}from'./three.module.js';var o=new h(),s=class extends g{constructor(m){super(m),this['propertyNameMapping']={},this['customPropertyMapping']={};}['load'](m,p,q,u){const Z=d;let v=this,w=new f(this['manager']);w['setPath'](this['path']),w['setResponseType']('arraybuffer'),w['setRequestHeader'](this['requestHeader']),w['setWithCredentials'](this[Z(0x135)]),w['load'](m,function(x){const a0=Z;try{p(v['parse'](x));}catch(y){u?u(y):console[a0(0x133)](y),v[a0(0x124)][a0(0x113)](m);}},q,u);}['setPropertyNameMapping'](m){this['propertyNameMapping']=m;}['setCustomPropertyNameMapping'](m){this['customPropertyMapping']=m;}[a1(0x137)](q){const ag=a1;function w(L,M=0x0){const a3=d;let N=/^ply([\s\S]*)end_header(\r\n|\r|\n)/,O='',P=N['exec'](L);P!==null&&(O=P[0x1]);let Q={'comments':[],'elements':[],'headerLength':M,'objInfo':''},R=O['split'](/\r\n|\r|\n/),S;function T(U,V){const a2=d;let W={'type':U[0x0]};return W['type']==='list'?(W[a2(0x11f)]=U[0x3],W['countType']=U[0x1],W['itemType']=U[0x2]):W['name']=U[0x1],W['name']in V&&(W['name']=V[W['name']]),W;}for(let U=0x0;U<R['length'];U++){let V=R[U];if(V=V['trim'](),V==='')continue;let W=V['split'](/\s+/),X=W[a3(0x11b)]();switch(V=W['join']('\x20'),X){case'format':Q['format']=W[0x0],Q['version']=W[0x1];break;case'comment':Q['comments']['push'](V);break;case a3(0x131):S!==void 0x0&&Q[a3(0x13e)]['push'](S),S={},S['name']=W[0x0],S[a3(0x118)]=parseInt(W[0x1]),S['properties']=[];break;case a3(0x132):S['properties']['push'](T(W,K['propertyNameMapping']));break;case'obj_info':Q['objInfo']=V;break;default:console['log'](a3(0x117),X,W);}}return S!==void 0x0&&Q['elements']['push'](S),Q;}function x(L,M){const a4=d;switch(M){case'char':case a4(0x127):case'short':case a4(0x13b):case'int':case'uint':case'int8':case'uint8':case'int16':case a4(0x119):case'int32':case'uint32':return parseInt(L);case'float':case'double':case a4(0x13f):case a4(0x143):return parseFloat(L);}}function z(L,M){const a5=d;let N={};for(let O=0x0;O<L['length'];O++){if(M[a5(0x125)]())return null;if(L[O]['type']==='list'){let P=[],Q=x(M['next'](),L[O][a5(0x121)]);for(let R=0x0;R<Q;R++){if(M['empty']())return null;P['push'](x(M['next'](),L[O]['itemType']));}N[L[O]['name']]=P;}else N[L[O]['name']]=x(M['next'](),L[O]['type']);}return N;}function A(){const a6=d;let L={'indices':[],'vertices':[],'normals':[],'uvs':[],'faceVertexUvs':[],'colors':[],'faceVertexColors':[]};for(let M of Object['keys'](K[a6(0x11a)]))L[M]=[];return L;}function B(L){const a7=d;let M=L['map'](O=>O[a7(0x11f)]);function N(O){for(let P=0x0,Q=O['length'];P<Q;P++){let R=O[P];if(M['includes'](R))return R;}return null;}return{'attrX':N(['x','px','posx'])||'x','attrY':N(['y','py','posy'])||'y','attrZ':N(['z','pz','posz'])||'z','attrNX':N(['nx','normalx']),'attrNY':N(['ny','normaly']),'attrNZ':N(['nz','normalz']),'attrS':N(['s','u','texture_u','tx']),'attrT':N(['t','v','texture_v','ty']),'attrR':N(['red','diffuse_red','r','diffuse_r']),'attrG':N(['green','diffuse_green','g','diffuse_g']),'attrB':N(['blue','diffuse_blue','b','diffuse_b'])};}function C(L,M){const a8=d;let N=A(),O=/end_header\s+(\S[\s\S]*\S|\S)\s*$/,P,Q;P=(Q=O[a8(0x114)](L))===null?[]:Q[0x1]['split'](/\s+/);let R=new c(P);X:for(let S=0x0;S<M['elements']['length'];S++){let T=M['elements'][S],U=B(T['properties']);for(let V=0x0;V<T['count'];V++){let W=z(T['properties'],R);if(!W)break X;E(N,T['name'],W,U);}}return D(N);}function D(L){const a9=d;let M=new j();L['indices']['length']>0x0&&M['setIndex'](L['indices']),M[a9(0x116)]('position',new k(L['vertices'],0x3)),L[a9(0x12d)]['length']>0x0&&M['setAttribute']('normal',new k(L[a9(0x12d)],0x3)),L['uvs']['length']>0x0&&M['setAttribute']('uv',new k(L['uvs'],0x2)),L['colors']['length']>0x0&&M['setAttribute']('color',new k(L['colors'],0x3)),(L['faceVertexUvs']['length']>0x0||L[a9(0x11c)]['length']>0x0)&&(M=M['toNonIndexed'](),L[a9(0x12c)]['length']>0x0&&M['setAttribute']('uv',new k(L['faceVertexUvs'],0x2)),L['faceVertexColors']['length']>0x0&&M['setAttribute']('color',new k(L['faceVertexColors'],0x3)));for(let N of Object['keys'](K['customPropertyMapping']))L[N]['length']>0x0&&M['setAttribute'](N,new k(L[N],K['customPropertyMapping'][N]['length']));return M['computeBoundingSphere'](),M;}function E(L,M,N,O){const aa=d;if(M==='vertex'){L['vertices'][aa(0x138)](N[O[aa(0x140)]],N[O['attrY']],N[O['attrZ']]),O['attrNX']!==null&&O['attrNY']!==null&&O[aa(0x13a)]!==null&&L[aa(0x12d)]['push'](N[O[aa(0x136)]],N[O['attrNY']],N[O['attrNZ']]),O['attrS']!==null&&O['attrT']!==null&&L['uvs']['push'](N[O['attrS']],N[O['attrT']]),O[aa(0x12e)]!==null&&O[aa(0x11e)]!==null&&O['attrB']!==null&&(o['setRGB'](N[O[aa(0x12e)]]/0xff,N[O[aa(0x11e)]]/0xff,N[O['attrB']]/0xff,l),L['colors']['push'](o['r'],o['g'],o['b']));for(let P of Object['keys'](K['customPropertyMapping']))for(let Q of K['customPropertyMapping'][P])L[P]['push'](N[Q]);}else{if(M==='face'){let R=N['vertex_indices']||N['vertex_index'],S=N['texcoord'];R['length']===0x3?(L['indices'][aa(0x138)](R[0x0],R[0x1],R[0x2]),S&&S['length']===0x6&&(L['faceVertexUvs']['push'](S[0x0],S[0x1]),L['faceVertexUvs']['push'](S[0x2],S[0x3]),L['faceVertexUvs'][aa(0x138)](S[0x4],S[0x5]))):R[aa(0x126)]===0x4&&(L['indices']['push'](R[0x0],R[0x1],R[0x3]),L['indices']['push'](R[0x1],R[0x2],R[0x3])),O['attrR']!==null&&O['attrG']!==null&&O['attrB']!==null&&(o[aa(0x12a)](N[O['attrR']]/0xff,N[O['attrG']]/0xff,N[O['attrB']]/0xff,l),L[aa(0x11c)]['push'](o['r'],o['g'],o['b']),L['faceVertexColors']['push'](o['r'],o['g'],o['b']),L['faceVertexColors'][aa(0x138)](o['r'],o['g'],o['b']));}}}function F(L,M){const ab=d;let N={},O=0x0;for(let P=0x0;P<M['length'];P++){let Q=M[P],R=Q['valueReader'];if(Q[ab(0x12b)]==='list'){let S=[],T=Q['countReader']['read'](L+O);O+=Q['countReader']['size'];for(let U=0x0;U<T;U++)S['push'](R['read'](L+O)),O+=R['size'];N[Q['name']]=S;}else N[Q['name']]=R['read'](L+O),O+=R['size'];}return[N,O];}function G(L,M,N){const ad=d;function O(P,Q,R){const ac=d;switch(Q){case'int8':case'char':return{'read':S=>P[ac(0x120)](S),'size':0x1};case'uint8':case'uchar':return{'read':S=>P['getUint8'](S),'size':0x1};case'int16':case'short':return{'read':S=>P['getInt16'](S,R),'size':0x2};case'uint16':case'ushort':return{'read':S=>P['getUint16'](S,R),'size':0x2};case'int32':case ac(0x12f):return{'read':S=>P['getInt32'](S,R),'size':0x4};case'uint32':case'uint':return{'read':S=>P['getUint32'](S,R),'size':0x4};case'float32':case'float':return{'read':S=>P['getFloat32'](S,R),'size':0x4};case'float64':case'double':return{'read':S=>P['getFloat64'](S,R),'size':0x8};}}for(let P=0x0,Q=L[ad(0x126)];P<Q;P++){let R=L[P];R['type']==='list'?(R['countReader']=O(M,R[ad(0x121)],N),R[ad(0x134)]=O(M,R['itemType'],N)):R['valueReader']=O(M,R['type'],N);}}function H(L,M){const ae=d;let N=A(),O=M['format']==='binary_little_endian',P=new DataView(L,M[ae(0x139)]),Q,R=0x0;for(let S=0x0;S<M['elements']['length'];S++){let T=M['elements'][S],U=T['properties'],V=B(U);G(U,P,O);for(let W=0x0;W<T['count'];W++){Q=F(R,U),R+=Q[0x1];let X=Q[0x0];E(N,T['name'],X,V);}}return D(N);}function I(L){const af=d;let M=0x0,N=!0x0,O='',P=[],Q=new TextDecoder()['decode'](L['subarray'](0x0,0x5)),R=/^ply\r\n/['test'](Q);do{let S=String['fromCharCode'](L[M++]);S!=='\x0a'&&S!=='\x0d'?O+=S:(O==='end_header'&&(N=!0x1),O!==''&&(P[af(0x138)](O),O=''));}while(N&&M<L['length']);return R===!0x0&&M++,{'headerText':P['join']('\x0d')+'\x0d','headerLength':M};}let J,K=this;if(q instanceof ArrayBuffer){let L=new Uint8Array(q),{headerText:M,headerLength:N}=I(L),O=w(M,N);J=O[ag(0x142)]==='ascii'?C(new TextDecoder()['decode'](L),O):H(q,O);}else J=C(q,w(q));return J;}},c=class{constructor(m){this['arr']=m,this['i']=0x0;}['empty'](){const ah=a1;return this['i']>=this[ah(0x141)]['length'];}['next'](){return this['arr'][this['i']++];}};function d(a,c){a=a-0x113;const e=b();let f=e[a];return f;}export{s as PLYLoader};