@flyfish-group/file-viewer3 1.0.15 → 1.0.17
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.
- package/README.md +16 -14
- package/dist/components/3MFLoader.js +1 -1
- package/dist/components/AMFLoader.js +1 -1
- package/dist/components/AudioViewer.js +1 -1
- package/dist/components/CadViewer.js +1 -1
- package/dist/components/CodeViewer.js +1 -1
- package/dist/components/ColladaLoader.js +1 -1
- package/dist/components/DrawingViewer.js +1 -1
- package/dist/components/EdaViewer.js +1 -1
- package/dist/components/EmailViewer.js +1 -1
- package/dist/components/EpubViewer.js +1 -1
- package/dist/components/FBXLoader.js +1 -1
- package/dist/components/GLTFLoader.js +1 -1
- package/dist/components/ImageViewer.js +1 -1
- package/dist/components/KMZLoader.js +1 -1
- package/dist/components/MarkdownViewer.js +1 -1
- package/dist/components/ModelViewer.js +1 -1
- package/dist/components/OBJLoader.js +1 -1
- package/dist/components/OfdViewer.js +1 -1
- package/dist/components/PCDLoader.js +1 -1
- package/dist/components/PLYLoader.js +1 -1
- package/dist/components/PdfView.js +4591 -4497
- package/dist/components/PptxRender.js +1 -1
- package/dist/components/STLLoader.js +1 -1
- package/dist/components/TDSLoader.js +1 -1
- package/dist/components/USDLoader.js +1 -1
- package/dist/components/UmdViewer.js +1 -1
- package/dist/components/VRMLLoader.js +1 -1
- package/dist/components/VTKLoader.js +1 -1
- package/dist/components/XYZLoader.js +1 -1
- package/dist/components/XlsxTable.js +1 -1
- package/dist/components/__vite-browser-external.js +1 -1
- package/dist/components/_plugin-vue_export-helper.js +1 -1
- package/dist/components/ar-SA-G6X2FPQ2.js +1 -1
- package/dist/components/arc.js +1 -1
- package/dist/components/architecture-7EHR7CIX.js +1 -1
- package/dist/components/architectureDiagram-3BPJPVTR.js +1 -1
- package/dist/components/archive.js +1 -1
- package/dist/components/asyncToGenerator.js +1 -1
- package/dist/components/audio.js +1 -1
- package/dist/components/az-AZ-76LH7QW2.js +1 -1
- package/dist/components/bash.js +1 -1
- package/dist/components/bg-BG-XCXSNQG7.js +1 -1
- package/dist/components/blockDiagram-GPEHLZMM.js +1 -1
- package/dist/components/bn-BD-2XOGV67Q.js +1 -1
- package/dist/components/c4Diagram-AAUBKEIU.js +1 -1
- package/dist/components/ca-ES-6MX7JW3Y.js +1 -1
- package/dist/components/cad.js +1 -1
- package/dist/components/cfb.js +1 -1
- package/dist/components/channel.js +1 -1
- package/dist/components/chunk-2J33WTMH.js +1 -1
- package/dist/components/chunk-3OPIFGDE.js +1 -1
- package/dist/components/chunk-4BX2VUAB.js +1 -1
- package/dist/components/chunk-55IACEB6.js +1 -1
- package/dist/components/chunk-5ZQYHXKU.js +1 -1
- package/dist/components/chunk-6U3AYISY.js +1 -1
- package/dist/components/chunk-727SXJPM.js +1 -1
- package/dist/components/chunk-AGHRB4JF.js +1 -1
- package/dist/components/chunk-AQP2D5EJ.js +1 -1
- package/dist/components/chunk-BSJP7CBP.js +1 -1
- package/dist/components/chunk-CSCIHK7Q.js +1 -1
- package/dist/components/chunk-FMBD7UC4.js +1 -1
- package/dist/components/chunk-K2UTITRG.js +1 -1
- package/dist/components/chunk-KSCS5N6A.js +1 -1
- package/dist/components/chunk-L5ZTLDWV.js +1 -1
- package/dist/components/chunk-LZXEDZCA.js +1 -1
- package/dist/components/chunk-ND2GUHAM.js +1 -1
- package/dist/components/chunk-NZK2D7GU.js +1 -1
- package/dist/components/chunk-O5CBEL6O.js +1 -1
- package/dist/components/chunk-QZHKN3VN.js +1 -1
- package/dist/components/chunk-SRAX5OIU.js +1 -1
- package/dist/components/chunk-WU5MYG2G.js +1 -1
- package/dist/components/chunk-XPW4576I.js +1 -1
- package/dist/components/chunk-Z3N5DIM6.js +1 -1
- package/dist/components/chunk-ZUYEQ4TG.js +1 -1
- package/dist/components/chunk.js +1 -1
- package/dist/components/classDiagram-4FO5ZUOK.js +1 -1
- package/dist/components/classDiagram-v2-Q7XG4LA2.js +1 -1
- package/dist/components/core.js +1 -1
- package/dist/components/cose-bilkent-S5V4N54A.js +1 -1
- package/dist/components/cpp.js +1 -1
- package/dist/components/cs-CZ-2BRQDIVT.js +1 -1
- package/dist/components/csharp.js +1 -1
- package/dist/components/css.js +1 -1
- package/dist/components/cytoscape.esm.js +1 -1
- package/dist/components/da-DK-5WZEPLOC.js +1 -1
- package/dist/components/dagre-BM42HDAG.js +1 -1
- package/dist/components/dagre.js +1 -1
- package/dist/components/de-DE-XR44H4JA.js +1 -1
- package/dist/components/defaultLocale.js +1 -1
- package/dist/components/defineProperty.js +1 -1
- package/dist/components/diagram-2AECGRRQ.js +1 -1
- package/dist/components/diagram-5GNKFQAL.js +1 -1
- package/dist/components/diagram-KO2AKTUF.js +1 -1
- package/dist/components/diagram-LMA3HP47.js +1 -1
- package/dist/components/diagram-OG6HWLK6.js +1 -1
- package/dist/components/diff.js +1 -1
- package/dist/components/directory-open-01563666.js +1 -1
- package/dist/components/directory-open-4ed118d0.js +1 -1
- package/dist/components/dist.js +1 -1
- package/dist/components/dist2.js +1 -1
- package/dist/components/dist3.js +1 -1
- package/dist/components/docx-preview.js +1 -1
- package/dist/components/drawing.js +1 -1
- package/dist/components/ebook.js +1 -1
- package/dist/components/eda.js +1 -1
- package/dist/components/el-GR-BZB4AONW.js +1 -1
- package/dist/components/email.js +1 -1
- package/dist/components/en-B4ZKOASM.js +1 -1
- package/dist/components/erDiagram-TEJ5UH35.js +1 -1
- package/dist/components/es-ES-U4NZUMDT.js +1 -1
- package/dist/components/eu-ES-A7QVB2H4.js +1 -1
- package/dist/components/eventmodeling-FCH6USID.js +1 -1
- package/dist/components/fa-IR-HGAKTJCU.js +1 -1
- package/dist/components/fflate.module.js +1 -1
- package/dist/components/fi-FI-Z5N7JZ37.js +1 -1
- package/dist/components/file-open-002ab408.js +1 -1
- package/dist/components/file-open-7c801643.js +1 -1
- package/dist/components/file-save-3189631c.js +1 -1
- package/dist/components/file-save-745eba88.js +1 -1
- package/dist/components/flowDiagram-I6XJVG4X.js +1 -1
- package/dist/components/fr-FR-RHASNOE6.js +1 -1
- package/dist/components/ganttDiagram-6RSMTGT7.js +1 -1
- package/dist/components/gitGraph-WXDBUCRP.js +1 -1
- package/dist/components/gitGraphDiagram-PVQCEYII.js +1 -1
- package/dist/components/gl-ES-HMX3MZ6V.js +1 -1
- package/dist/components/go.js +1 -1
- package/dist/components/graphlib.js +1 -1
- package/dist/components/he-IL-6SHJWFNN.js +1 -1
- package/dist/components/hi-IN-IWLTKZ5I.js +1 -1
- package/dist/components/hu-HU-A5ZG7DT2.js +1 -1
- package/dist/components/id-ID-SAP4L64H.js +1 -1
- package/dist/components/image-GAAHSSAO.js +1 -1
- package/dist/components/image-blob-reduce.esm.js +1 -1
- package/dist/components/image.js +1 -1
- package/dist/components/info-J43DQDTF.js +1 -1
- package/dist/components/infoDiagram-5YYISTIA.js +1 -1
- package/dist/components/ini.js +1 -1
- package/dist/components/init.js +1 -1
- package/dist/components/ishikawaDiagram-YF4QCWOH.js +1 -1
- package/dist/components/it-IT-JPQ66NNP.js +1 -1
- package/dist/components/ja-JP-DBVTYXUO.js +1 -1
- package/dist/components/java.js +1 -1
- package/dist/components/javascript.js +1 -1
- package/dist/components/journeyDiagram-JHISSGLW.js +1 -1
- package/dist/components/json.js +1 -1
- package/dist/components/jszip.min.js +1 -1
- package/dist/components/kaa-6HZHGXH3.js +1 -1
- package/dist/components/kab-KAB-ZGHBKWFO.js +1 -1
- package/dist/components/kanban-definition-UN3LZRKU.js +1 -1
- package/dist/components/katex.js +1 -1
- package/dist/components/kk-KZ-P5N5QNE5.js +1 -1
- package/dist/components/km-KH-HSX4SM5Z.js +1 -1
- package/dist/components/ko-KR-MTYHY66A.js +1 -1
- package/dist/components/ku-TR-6OUDTVRD.js +1 -1
- package/dist/components/lib.js +1 -1
- package/dist/components/libarchive.js +1 -1
- package/dist/components/linear.js +1 -1
- package/dist/components/lt-LT-XHIRWOB4.js +1 -1
- package/dist/components/lv-LV-5QDEKY6T.js +1 -1
- package/dist/components/markdown.js +1 -1
- package/dist/components/md.js +1 -1
- package/dist/components/mermaid-parser.core.js +1 -1
- package/dist/components/mindmap-definition-RKZ34NQL.js +1 -1
- package/dist/components/model.js +1 -1
- package/dist/components/mp4.js +1 -1
- package/dist/components/mr-IN-CRQNXWMA.js +1 -1
- package/dist/components/my-MM-5M5IBNSE.js +1 -1
- package/dist/components/nb-NO-T6EIAALU.js +1 -1
- package/dist/components/nestedRender.js +1 -1
- package/dist/components/nl-NL-IS3SIHDZ.js +1 -1
- package/dist/components/nn-NO-6E72VCQL.js +1 -1
- package/dist/components/objectSpread2.js +1 -1
- package/dist/components/objectWithoutProperties.js +1 -1
- package/dist/components/oc-FR-POXYY2M6.js +1 -1
- package/dist/components/ofd.js +1 -1
- package/dist/components/ofd2.js +1 -1
- package/dist/components/ordinal.js +1 -1
- package/dist/components/pa-IN-N4M65BXN.js +1 -1
- package/dist/components/packet-YPE3B663.js +1 -1
- package/dist/components/pdf.js +1 -1
- package/dist/components/percentages-BXMCSKIN.js +1 -1
- package/dist/components/php.js +1 -1
- package/dist/components/pica.js +1 -1
- package/dist/components/pie-LRSECV5Y.js +1 -1
- package/dist/components/pie.js +1 -1
- package/dist/components/pieDiagram-4H26LBE5.js +1 -1
- package/dist/components/pl-PL-T2D74RX3.js +1 -1
- package/dist/components/postal-mime.js +1 -1
- package/dist/components/pptx.js +1 -1
- package/dist/components/prod.js +1 -1
- package/dist/components/pt-BR-5N22H2LF.js +1 -1
- package/dist/components/pt-PT-UZXXM6DQ.js +1 -1
- package/dist/components/python.js +1 -1
- package/dist/components/quadrantDiagram-W4KKPZXB.js +1 -1
- package/dist/components/radar-GUYGQ44K.js +1 -1
- package/dist/components/requirementDiagram-4Y6WPE33.js +1 -1
- package/dist/components/ro-RO-JPDTUUEW.js +1 -1
- package/dist/components/rough.esm.js +1 -1
- package/dist/components/roundRect.js +1 -1
- package/dist/components/ru-RU-B4JR7IUQ.js +1 -1
- package/dist/components/rust.js +1 -1
- package/dist/components/sankeyDiagram-5OEKKPKP.js +1 -1
- package/dist/components/sequenceDiagram-3UESZ5HK.js +1 -1
- package/dist/components/shared.js +1 -1
- package/dist/components/shared2.js +1 -1
- package/dist/components/si-LK-N5RQ5JYF.js +1 -1
- package/dist/components/sk-SK-C5VTKIMK.js +1 -1
- package/dist/components/sl-SI-NN7IZMDC.js +1 -1
- package/dist/components/sql.js +1 -1
- package/dist/components/src.js +1 -1
- package/dist/components/src2.js +1 -1
- package/dist/components/stateDiagram-AJRCARHV.js +1 -1
- package/dist/components/stateDiagram-v2-BHNVJYJU.js +1 -1
- package/dist/components/subset-shared.chunk.js +1 -1
- package/dist/components/subset-worker.chunk.js +1 -1
- package/dist/components/sv-SE-XGPEYMSR.js +1 -1
- package/dist/components/ta-IN-2NMHFXQM.js +1 -1
- package/dist/components/text.js +1 -1
- package/dist/components/th-TH-HPSO5L25.js +1 -1
- package/dist/components/three.module.js +1 -1
- package/dist/components/time.js +1 -1
- package/dist/components/timeline-definition-PNZ67QCA.js +1 -1
- package/dist/components/tr-TR-DEFEU3FU.js +1 -1
- package/dist/components/treeView-BLDUP644.js +1 -1
- package/dist/components/treemap-LRROVOQU.js +1 -1
- package/dist/components/typescript.js +1 -1
- package/dist/components/uk-UA-QMV73CPH.js +1 -1
- package/dist/components/umd.js +1 -1
- package/dist/components/use.js +1 -1
- package/dist/components/util.js +1 -1
- package/dist/components/vennDiagram-CIIHVFJN.js +1 -1
- package/dist/components/vi-VN-M7AON7JQ.js +1 -1
- package/dist/components/wardley-L42UT6IY.js +1 -1
- package/dist/components/wardleyDiagram-YWT4CUSO.js +1 -1
- package/dist/components/word.js +1 -1
- package/dist/components/worker-ref.js +1 -1
- package/dist/components/wrapAsyncGenerator.js +1 -1
- package/dist/components/xlsx.js +1 -1
- package/dist/components/xml.js +1 -1
- package/dist/components/xychartDiagram-2RQKCTM6.js +1 -1
- package/dist/components/yaml.js +1 -1
- package/dist/components/zh-CN-LNUGB5OW.js +1 -1
- package/dist/components/zh-HK-E62DVLB3.js +1 -1
- package/dist/components/zh-TW-RAJ6MFWO.js +1 -1
- package/dist/file-viewer3.css +1 -1
- package/dist/index.mjs +1 -1
- package/dist/src/package/common/printCapability.d.ts +27 -0
- package/dist/src/package/common/type.d.ts +70 -0
- package/dist/src/package/components/FileViewer/FileViewer.vue.d.ts +27 -2
- package/dist/src/package/index.d.ts +1 -1
- package/dist/src/package/vendors/word/doc.d.ts +2 -2
- package/dist/src/package/vendors/word/docx.d.ts +2 -2
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
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
|
+
const bS=X;(function(aD,aE){const bR=X,aF=aD();while(!![]){try{const aG=parseInt(bR(0x1e9))/0x1+parseInt(bR(0x221))/0x2+-parseInt(bR(0x25c))/0x3*(-parseInt(bR(0x1fd))/0x4)+-parseInt(bR(0x22f))/0x5*(-parseInt(bR(0x1f5))/0x6)+-parseInt(bR(0x1d6))/0x7*(-parseInt(bR(0x22b))/0x8)+-parseInt(bR(0x1f4))/0x9*(-parseInt(bR(0x216))/0xa)+parseInt(bR(0x276))/0xb*(-parseInt(bR(0x1e1))/0xc);if(aG===aE)break;else aF['push'](aF['shift']());}catch(aH){aF['push'](aF['shift']());}}}(Q,0x6e556));import{n as Y,t}from'./asyncToGenerator.js';function Q(){const d3=['_quatInverse','enableDamping','vrml','clientWidth','height','2640zQtIXh','pageX','span','minPolarAngle','1045595aNNjkH','canvas','value','ownerDocument','grab','clone','href','_handleTouchStartDolly','visible','_clampDistance','keyup','clientX','ROTATE','_removePointer','zoom0','usd','removeEventListener','_getSecondPointerPosition','length','slice','LEFT','keydown','_pan','dot','material','multiplyScalar','isOrthographicCamera','theta','_controlActive','_updateZoomParameters','push','ply','keys','WARNING:\x20OrbitControls.js\x20encountered\x20an\x20unknown\x20camera\x20type\x20-\x20dolly/zoom\x20disabled.','cos','add','deltaY','scale','_lastQuaternion','_pointerPositions','auto','enableZoom','keyPanSpeed','width','MIDDLE','390JoixCZ','intersectPlane','copy','sourceUrl','\x20模型格式','button','_lastPosition','render','_rotateDelta','_rotateEnd','far','computeVertexNormals','getCenter','autoRotateSpeed','_quat','setFromObject','_handleTouchStartRotate','clampLength','_handleMouseMoveRotate','_scale','_dollyDelta','igs','enablePan','_handleTouchStartPan','_handleMouseWheel','_interceptControlUp','33DTSiJM','_onPointerUp','warn','position','top','addEventListener','set','target0','_dollyEnd','domElement','ifc','16884kXiwAP','style','getRootNode','updateMatrixWorld','bind','dampingFactor','clientY','pageY','disconnect','shiftKey','connect','12568476NWptwa','state','max','model-toolbar','maxZoom','pointerType','dispatchEvent','pow','859039EMeFvL','pan','_spherical','cursor','_onContextMenu','pointerdown','_rotateLeft','div','mouseButtons','pcd','ctrlKey','68553uMENot','6kiPQUU','_mouse','_sphericalDelta','isPerspectiveCamera','isMesh','zoom','\x20模型解析失败','touchAction','10596YenFIS','traverse','zoomToCursor','sub','data','min','abs','wheel','update','deltaMode','apply','clientHeight','message','_panOffset','_getZoomScale','_customWheelEvent','__scopeId','object','scene','NONE','target','_isTrackingPointer','ONE','ArrowDown','enableRotate','1010uJoshS','parse','RIGHT','pointerId','_onMouseMove','_pointers','Control','getBoundingClientRect','left','subVectors','_dollyStart','1232480BzroOn','phi','setFromMatrixColumn','_rotateStart','_handleMouseDownPan'];Q=function(){return d3;};return Q();}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[bS(0x251)](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 bT=bS;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[bT(0x1e5)]=Infinity,this['minTargetRadius']=0x0,this['maxTargetRadius']=Infinity,this['minPolarAngle']=0x0,this['maxPolarAngle']=Math['PI'],this['minAzimuthAngle']=-Infinity,this['maxAzimuthAngle']=Infinity,this[bT(0x227)]=!0x1,this['dampingFactor']=0.05,this['enableZoom']=!0x0,this['zoomSpeed']=0x1,this[bT(0x215)]=!0x0,this['rotateSpeed']=0x1,this['keyRotateSpeed']=0x1,this[bT(0x272)]=!0x0,this['panSpeed']=0x1,this['screenSpacePanning']=!0x0,this['keyPanSpeed']=0x7,this[bT(0x1ff)]=!0x1,this['autoRotate']=!0x1,this[bT(0x269)]=0x2,this['keys']={'LEFT':'ArrowLeft','UP':'ArrowUp','RIGHT':'ArrowRight','BOTTOM':bT(0x214)},this[bT(0x1f1)]={'LEFT':a6[bT(0x23b)],'MIDDLE':a6['DOLLY'],'RIGHT':a6['PAN']},this['touches']={'ONE':a3['ROTATE'],'TWO':a3['DOLLY_PAN']},this['target0']=this[bT(0x211)][bT(0x234)](),this['position0']=this['object']['position']['clone'](),this[bT(0x23d)]=this[bT(0x20e)]['zoom'],this['_cursorStyle']=bT(0x257),this['_domElementKeyEvents']=null,this['_lastPosition']=new a0(),this[bT(0x255)]=new ap(),this['_lastTargetPosition']=new a0(),this['_quat']=new ap()['setFromUnitVectors'](aD['up'],new a0(0x0,0x1,0x0)),this[bT(0x226)]=this['_quat'][bT(0x234)]()['invert'](),this['_spherical']=new ag(),this['_sphericalDelta']=new ag(),this[bT(0x26f)]=0x1,this['_panOffset']=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[bT(0x220)]=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['bind'](this),this['_onPointerDown']=I['bind'](this),this['_onPointerUp']=R['bind'](this),this[bT(0x1ed)]=G['bind'](this),this['_onMouseWheel']=V[bT(0x1da)](this),this['_onKeyDown']=H['bind'](this),this['_onTouchStart']=U['bind'](this),this['_onTouchMove']=W['bind'](this),this['_onMouseDown']=z['bind'](this),this[bT(0x21a)]=B[bT(0x1da)](this),this['_interceptControlDown']=K['bind'](this),this['_interceptControlUp']=q[bT(0x1da)](this),this[bT(0x1d4)]!==null&&this[bT(0x1e0)](this['domElement']),this['update']();}set['cursorStyle'](aD){const bU=bS;this['_cursorStyle']=aD,aD==='grab'?this['domElement']['style']['cursor']='grab':this['domElement']['style'][bU(0x1ec)]='auto';}get['cursorStyle'](){return this['_cursorStyle'];}['connect'](aD){const bV=bS;super['connect'](aD),this['domElement'][bV(0x1d0)](bV(0x1ee),this['_onPointerDown']),this[bV(0x1d4)]['addEventListener']('pointercancel',this['_onPointerUp']),this['domElement']['addEventListener']('contextmenu',this['_onContextMenu']),this['domElement']['addEventListener'](bV(0x204),this['_onMouseWheel'],{'passive':!0x1}),this['domElement']['getRootNode']()['addEventListener'](bV(0x244),this['_interceptControlDown'],{'passive':!0x0,'capture':!0x0}),this['domElement']['style'][bV(0x1fc)]='none';}[bS(0x1de)](){const bW=bS;this['domElement']['removeEventListener'](bW(0x1ee),this['_onPointerDown']),this[bW(0x1d4)][bW(0x232)]['removeEventListener']('pointermove',this['_onPointerMove']),this['domElement']['ownerDocument']['removeEventListener']('pointerup',this[bW(0x277)]),this['domElement']['removeEventListener']('pointercancel',this['_onPointerUp']),this['domElement']['removeEventListener']('wheel',this['_onMouseWheel']),this['domElement']['removeEventListener']('contextmenu',this['_onContextMenu']),this['stopListenToKeyEvents'](),this[bW(0x1d4)]['getRootNode']()['removeEventListener']('keydown',this['_interceptControlDown'],{'capture':!0x0}),this['domElement'][bW(0x1d7)][bW(0x1fc)]='';}['dispose'](){this['disconnect']();}['getPolarAngle'](){return this['_spherical']['phi'];}['getAzimuthalAngle'](){return this['_spherical']['theta'];}['getDistance'](){const bX=bS;return this[bX(0x20e)]['position']['distanceTo'](this['target']);}['listenToKeyEvents'](aD){aD['addEventListener']('keydown',this['_onKeyDown']),this['_domElementKeyEvents']=aD;}['stopListenToKeyEvents'](){this['_domElementKeyEvents']!==null&&(this['_domElementKeyEvents']['removeEventListener']('keydown',this['_onKeyDown']),this['_domElementKeyEvents']=null);}['saveState'](){const bY=bS;this[bY(0x1d2)]['copy'](this['target']),this['position0']['copy'](this['object']['position']),this['zoom0']=this['object']['zoom'];}['reset'](){const bZ=bS;this['target'][bZ(0x25e)](this['target0']),this['object'][bZ(0x1ce)][bZ(0x25e)](this['position0']),this['object'][bZ(0x1fa)]=this['zoom0'],this['object']['updateProjectionMatrix'](),this[bZ(0x1e7)](E),this['update'](),this[bZ(0x1e2)]=P['NONE'];}[bS(0x1ea)](aD,aE){this['_pan'](aD,aE),this['update']();}['dollyIn'](aD){this['_dollyIn'](aD),this['update']();}['dollyOut'](aD){this['_dollyOut'](aD),this['update']();}['rotateLeft'](aD){const c0=bS;this[c0(0x1ef)](aD),this['update']();}['rotateUp'](aD){this['_rotateUp'](aD),this['update']();}['update'](aD=null){const c1=bS;let aE=this['object']['position'];M[c1(0x25e)](aE)['sub'](this[c1(0x211)]),M['applyQuaternion'](this[c1(0x26a)]),this['_spherical']['setFromVector3'](M),this['autoRotate']&&this[c1(0x1e2)]===P['NONE']&&this['_rotateLeft'](this['_getAutoRotationAngle'](aD)),this['enableDamping']?(this[c1(0x1eb)]['theta']+=this['_sphericalDelta']['theta']*this['dampingFactor'],this['_spherical']['phi']+=this['_sphericalDelta']['phi']*this[c1(0x1db)]):(this['_spherical'][c1(0x24a)]+=this['_sphericalDelta']['theta'],this[c1(0x1eb)]['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(0x24a)]=Math['max'](aF,Math['min'](aG,this['_spherical']['theta'])):this[c1(0x1eb)]['theta']=this['_spherical']['theta']>(aF+aG)/0x2?Math['max'](aF,this['_spherical']['theta']):Math['min'](aG,this['_spherical']['theta'])),this['_spherical']['phi']=Math['max'](this[c1(0x22e)],Math['min'](this['maxPolarAngle'],this['_spherical']['phi'])),this['_spherical']['makeSafe'](),this['enableDamping']===!0x0?this[c1(0x211)]['addScaledVector'](this['_panOffset'],this['dampingFactor']):this['target'][c1(0x252)](this['_panOffset']),this['target']['sub'](this['cursor']),this['target'][c1(0x26d)](this['minTargetRadius'],this['maxTargetRadius']),this['target']['add'](this[c1(0x1ec)]);let aH=!0x1;if(this['zoomToCursor']&&this['_performCursorZoom']||this[c1(0x20e)]['isOrthographicCamera'])this['_spherical']['radius']=this['_clampDistance'](this[c1(0x1eb)]['radius']);else{let aI=this[c1(0x1eb)]['radius'];this[c1(0x1eb)]['radius']=this[c1(0x238)](this['_spherical']['radius']*this[c1(0x26f)]),aH=aI!=this[c1(0x1eb)]['radius'];}if(M['setFromSpherical'](this['_spherical']),M['applyQuaternion'](this['_quatInverse']),aE['copy'](this['target'])['add'](M),this[c1(0x20e)]['lookAt'](this['target']),this['enableDamping']===!0x0?(this['_sphericalDelta']['theta']*=0x1-this['dampingFactor'],this['_sphericalDelta']['phi']*=0x1-this['dampingFactor'],this[c1(0x20a)][c1(0x248)](0x1-this['dampingFactor'])):(this['_sphericalDelta'][c1(0x1d1)](0x0,0x0,0x0),this['_panOffset'][c1(0x1d1)](0x0,0x0,0x0)),this['zoomToCursor']&&this['_performCursorZoom']){let aJ=null;if(this['object']['isPerspectiveCamera']){let aK=M['length']();aJ=this['_clampDistance'](aK*this[c1(0x26f)]);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[c1(0x1f6)]['x'],this['_mouse']['y'],0x0);aM['unproject'](this['object']);let aN=this['object']['zoom'];this['object']['zoom']=Math['max'](this['minZoom'],Math['min'](this['maxZoom'],this[c1(0x20e)]['zoom']/this['_scale'])),this[c1(0x20e)]['updateProjectionMatrix'](),aH=aN!==this[c1(0x20e)]['zoom'];let aO=new a0(this['_mouse']['x'],this['_mouse']['y'],0x0);aO['unproject'](this['object']),this[c1(0x20e)][c1(0x1ce)]['sub'](aO)['add'](aM),this['object'][c1(0x1d9)](),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[c1(0x20e)]['matrix'])['multiplyScalar'](aJ)['add'](this[c1(0x20e)]['position']):(k['origin']['copy'](this['object']['position']),k['direction']['set'](0x0,0x0,-0x1)['transformDirection'](this['object']['matrix']),Math[c1(0x203)](this[c1(0x20e)]['up']['dot'](k['direction']))<j?this['object']['lookAt'](this['target']):(A['setFromNormalAndCoplanarPoint'](this['object']['up'],this[c1(0x211)]),k[c1(0x25d)](A,this['target']))));}else{if(this['object']['isOrthographicCamera']){let aP=this['object'][c1(0x1fa)];this['object']['zoom']=Math['max'](this['minZoom'],Math['min'](this['maxZoom'],this['object']['zoom']/this['_scale'])),aP!==this['object']['zoom']&&(this['object']['updateProjectionMatrix'](),aH=!0x0);}}return this['_scale']=0x1,this['_performCursorZoom']=!0x1,aH||this[c1(0x262)]['distanceToSquared'](this['object']['position'])>F||0x8*(0x1-this['_lastQuaternion'][c1(0x246)](this['object']['quaternion']))>F||this['_lastTargetPosition']['distanceToSquared'](this['target'])>F?(this['dispatchEvent'](E),this[c1(0x262)]['copy'](this['object']['position']),this['_lastQuaternion']['copy'](this[c1(0x20e)]['quaternion']),this['_lastTargetPosition']['copy'](this['target']),!0x0):!0x1;}['_getAutoRotationAngle'](aD){return aD===null?N/0x3c/0x3c*this['autoRotateSpeed']:N/0x3c*this['autoRotateSpeed']*aD;}[bS(0x20b)](aD){const c2=bS;let aE=Math[c2(0x203)](aD*0.01);return Math[c2(0x1e8)](0.95,this['zoomSpeed']*aE);}['_rotateLeft'](aD){const c3=bS;this[c3(0x1f7)]['theta']-=aD;}['_rotateUp'](aD){const c4=bS;this['_sphericalDelta'][c4(0x222)]-=aD;}['_panLeft'](aD,aE){const c5=bS;M['setFromMatrixColumn'](aE,0x0),M[c5(0x248)](-aD),this['_panOffset']['add'](M);}['_panUp'](aD,aE){const c6=bS;this['screenSpacePanning']===!0x0?M['setFromMatrixColumn'](aE,0x1):(M[c6(0x223)](aE,0x0),M['crossVectors'](this['object']['up'],M)),M['multiplyScalar'](aD),this['_panOffset']['add'](M);}['_pan'](aD,aE){const c7=bS;let aF=this['domElement'];if(this['object']['isPerspectiveCamera']){let aG=this['object'][c7(0x1ce)];M['copy'](aG)[c7(0x200)](this['target']);let aH=M['length']();aH*=Math['tan'](this['object']['fov']/0x2*Math['PI']/0xb4),this['_panLeft'](0x2*aD*aH/aF['clientHeight'],this['object']['matrix']),this['_panUp'](0x2*aE*aH/aF[c7(0x208)],this['object']['matrix']);}else this['object']['isOrthographicCamera']?(this['_panLeft'](aD*(this['object']['right']-this['object'][c7(0x21e)])/this['object']['zoom']/aF[c7(0x229)],this['object']['matrix']),this['_panUp'](aE*(this['object'][c7(0x1cf)]-this['object']['bottom'])/this[c7(0x20e)]['zoom']/aF['clientHeight'],this['object']['matrix'])):(console['warn']('WARNING:\x20OrbitControls.js\x20encountered\x20an\x20unknown\x20camera\x20type\x20-\x20pan\x20disabled.'),this['enablePan']=!0x1);}['_dollyOut'](aD){const c8=bS;this['object']['isPerspectiveCamera']||this[c8(0x20e)][c8(0x249)]?this['_scale']/=aD:(console[c8(0x278)]('WARNING:\x20OrbitControls.js\x20encountered\x20an\x20unknown\x20camera\x20type\x20-\x20dolly/zoom\x20disabled.'),this['enableZoom']=!0x1);}['_dollyIn'](aD){const c9=bS;this['object'][c9(0x1f8)]||this['object']['isOrthographicCamera']?this['_scale']*=aD:(console['warn'](c9(0x250)),this[c9(0x258)]=!0x1);}[bS(0x24c)](aD,aE){const ca=bS;if(!this['zoomToCursor'])return;this['_performCursorZoom']=!0x0;let aF=this['domElement'][ca(0x21d)](),aG=aD-aF[ca(0x21e)],aH=aE-aF[ca(0x1cf)],aI=aF[ca(0x25a)],aJ=aF['height'];this[ca(0x1f6)]['x']=aG/aI*0x2-0x1,this['_mouse']['y']=-(aH/aJ)*0x2+0x1,this['_dollyDirection']['set'](this['_mouse']['x'],this[ca(0x1f6)]['y'],0x1)['unproject'](this['object'])['sub'](this['object'][ca(0x1ce)])['normalize']();}['_clampDistance'](aD){const cb=bS;return Math[cb(0x1e3)](this['minDistance'],Math['min'](this['maxDistance'],aD));}['_handleMouseDownRotate'](aD){const cc=bS;this[cc(0x224)]['set'](aD['clientX'],aD['clientY']);}['_handleMouseDownDolly'](aD){const cd=bS;this[cd(0x24c)](aD['clientX'],aD['clientX']),this['_dollyStart']['set'](aD['clientX'],aD['clientY']);}['_handleMouseDownPan'](aD){this['_panStart']['set'](aD['clientX'],aD['clientY']);}[bS(0x26e)](aD){const cf=bS;this['_rotateEnd']['set'](aD['clientX'],aD['clientY']),this[cf(0x264)][cf(0x21f)](this['_rotateEnd'],this[cf(0x224)])['multiplyScalar'](this['rotateSpeed']);let aE=this['domElement'];this['_rotateLeft'](N*this['_rotateDelta']['x']/aE[cf(0x208)]),this['_rotateUp'](N*this['_rotateDelta']['y']/aE['clientHeight']),this['_rotateStart']['copy'](this[cf(0x265)]),this['update']();}['_handleMouseMoveDolly'](aD){const cg=bS;this['_dollyEnd'][cg(0x1d1)](aD['clientX'],aD['clientY']),this['_dollyDelta']['subVectors'](this['_dollyEnd'],this['_dollyStart']),this['_dollyDelta']['y']>0x0?this['_dollyOut'](this['_getZoomScale'](this[cg(0x270)]['y'])):this['_dollyDelta']['y']<0x0&&this['_dollyIn'](this['_getZoomScale'](this['_dollyDelta']['y'])),this['_dollyStart']['copy'](this['_dollyEnd']),this['update']();}['_handleMouseMovePan'](aD){const ch=bS;this['_panEnd']['set'](aD['clientX'],aD[ch(0x1dc)]),this['_panDelta']['subVectors'](this['_panEnd'],this['_panStart'])['multiplyScalar'](this['panSpeed']),this['_pan'](this['_panDelta']['x'],this['_panDelta']['y']),this['_panStart']['copy'](this['_panEnd']),this['update']();}[bS(0x274)](aD){const ci=bS;this['_updateZoomParameters'](aD[ci(0x23a)],aD['clientY']),aD['deltaY']<0x0?this['_dollyIn'](this['_getZoomScale'](aD['deltaY'])):aD['deltaY']>0x0&&this['_dollyOut'](this['_getZoomScale'](aD[ci(0x253)])),this['update']();}['_handleKeyDown'](aD){const cj=bS;let aE=!0x1;switch(aD['code']){case this[cj(0x24f)]['UP']:aD[cj(0x1f3)]||aD['metaKey']||aD[cj(0x1df)]?this['enableRotate']&&this['_rotateUp'](N*this['keyRotateSpeed']/this['domElement']['clientHeight']):this['enablePan']&&this[cj(0x245)](0x0,this['keyPanSpeed']),aE=!0x0;break;case this['keys']['BOTTOM']:aD['ctrlKey']||aD['metaKey']||aD['shiftKey']?this[cj(0x215)]&&this['_rotateUp'](-N*this['keyRotateSpeed']/this[cj(0x1d4)]['clientHeight']):this['enablePan']&&this['_pan'](0x0,-this[cj(0x259)]),aE=!0x0;break;case this['keys'][cj(0x243)]:aD['ctrlKey']||aD['metaKey']||aD[cj(0x1df)]?this['enableRotate']&&this['_rotateLeft'](N*this['keyRotateSpeed']/this['domElement'][cj(0x208)]):this['enablePan']&&this[cj(0x245)](this['keyPanSpeed'],0x0),aE=!0x0;break;case this['keys']['RIGHT']:aD['ctrlKey']||aD['metaKey']||aD['shiftKey']?this['enableRotate']&&this[cj(0x1ef)](-N*this['keyRotateSpeed']/this['domElement']['clientHeight']):this['enablePan']&&this['_pan'](-this[cj(0x259)],0x0),aE=!0x0;break;}aE&&(aD['preventDefault'](),this['update']());}[bS(0x26c)](aD){const ck=bS;if(this['_pointers'][ck(0x241)]===0x1)this['_rotateStart']['set'](aD['pageX'],aD['pageY']);else{let aE=this['_getSecondPointerPosition'](aD),aF=0.5*(aD[ck(0x22c)]+aE['x']),aG=0.5*(aD['pageY']+aE['y']);this['_rotateStart']['set'](aF,aG);}}['_handleTouchStartPan'](aD){if(this['_pointers']['length']===0x1)this['_panStart']['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['_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 cl=bS;this['enableZoom']&&this[cl(0x236)](aD),this['enableRotate']&&this['_handleTouchStartRotate'](aD);}['_handleTouchMoveRotate'](aD){const cm=bS;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['_rotateEnd']['set'](aG,aH);}this[cm(0x264)]['subVectors'](this['_rotateEnd'],this['_rotateStart'])['multiplyScalar'](this['rotateSpeed']);let aE=this['domElement'];this[cm(0x1ef)](N*this['_rotateDelta']['x']/aE['clientHeight']),this['_rotateUp'](N*this[cm(0x264)]['y']/aE['clientHeight']),this[cm(0x224)]['copy'](this['_rotateEnd']);}['_handleTouchMovePan'](aD){const cn=bS;if(this['_pointers']['length']===0x1)this['_panEnd']['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['_panEnd']['set'](aF,aG);}this['_panDelta']['subVectors'](this['_panEnd'],this['_panStart'])[cn(0x248)](this['panSpeed']),this[cn(0x245)](this['_panDelta']['x'],this['_panDelta']['y']),this['_panStart']['copy'](this['_panEnd']);}['_handleTouchMoveDolly'](aD){const co=bS;let aE=this[co(0x240)](aD),aF=aD['pageX']-aE['x'],aG=aD['pageY']-aE['y'],aH=Math['sqrt'](aF*aF+aG*aG);this[co(0x1d3)]['set'](0x0,aH),this[co(0x270)]['set'](0x0,Math[co(0x1e8)](this['_dollyEnd']['y']/this[co(0x220)]['y'],this['zoomSpeed'])),this['_dollyOut'](this[co(0x270)]['y']),this['_dollyStart']['copy'](this['_dollyEnd']);let aI=(aD['pageX']+aE['x'])*0.5,aJ=(aD['pageY']+aE['y'])*0.5;this['_updateZoomParameters'](aI,aJ);}['_handleTouchMoveDollyPan'](aD){this['enableZoom']&&this['_handleTouchMoveDolly'](aD),this['enablePan']&&this['_handleTouchMovePan'](aD);}['_handleTouchMoveDollyRotate'](aD){const cp=bS;this['enableZoom']&&this['_handleTouchMoveDolly'](aD),this[cp(0x215)]&&this['_handleTouchMoveRotate'](aD);}['_addPointer'](aD){const cq=bS;this['_pointers']['push'](aD[cq(0x219)]);}[bS(0x23c)](aD){const cr=bS;delete this['_pointerPositions'][aD[cr(0x219)]];for(let aE=0x0;aE<this[cr(0x21b)]['length'];aE++)if(this['_pointers'][aE]==aD['pointerId']){this['_pointers']['splice'](aE,0x1);return;}}['_isTrackingPointer'](aD){for(let aE=0x0;aE<this['_pointers']['length'];aE++)if(this['_pointers'][aE]==aD['pointerId'])return!0x0;return!0x1;}['_trackPointer'](aD){const cs=bS;let aE=this['_pointerPositions'][aD['pointerId']];aE===void 0x0&&(aE=new aq(),this[cs(0x256)][aD['pointerId']]=aE),aE[cs(0x1d1)](aD['pageX'],aD[cs(0x1dd)]);}['_getSecondPointerPosition'](aD){let aE=aD['pointerId']===this['_pointers'][0x0]?this['_pointers'][0x1]:this['_pointers'][0x0];return this['_pointerPositions'][aE];}['_customWheelEvent'](aD){const ct=bS;let aE=aD[ct(0x206)],aF={'clientX':aD[ct(0x23a)],'clientY':aD['clientY'],'deltaY':aD['deltaY']};switch(aE){case 0x1:aF['deltaY']*=0x10;break;case 0x2:aF[ct(0x253)]*=0x64;break;}return aD[ct(0x1f3)]&&!this['_controlActive']&&(aF['deltaY']*=0xa),aF;}};function I(aD){const cu=bS;this['enabled']!==!0x1&&(this[cu(0x21b)][cu(0x241)]===0x0&&(this['domElement']['setPointerCapture'](aD['pointerId']),this[cu(0x1d4)]['ownerDocument']['addEventListener']('pointermove',this['_onPointerMove']),this['domElement']['ownerDocument']['addEventListener']('pointerup',this['_onPointerUp'])),!this[cu(0x212)](aD)&&(this['_addPointer'](aD),aD['pointerType']==='touch'?this['_onTouchStart'](aD):this['_onMouseDown'](aD),this['_cursorStyle']==='grab'&&(this['domElement'][cu(0x1d7)]['cursor']='grabbing')));}function L(aD){const cv=bS;this['enabled']!==!0x1&&(aD[cv(0x1e6)]==='touch'?this['_onTouchMove'](aD):this['_onMouseMove'](aD));}function R(aD){const cw=bS;switch(this['_removePointer'](aD),this['_pointers']['length']){case 0x0:this[cw(0x1d4)]['releasePointerCapture'](aD['pointerId']),this['domElement']['ownerDocument']['removeEventListener']('pointermove',this['_onPointerMove']),this['domElement']['ownerDocument'][cw(0x23f)]('pointerup',this['_onPointerUp']),this['dispatchEvent'](O),this['state']=P[cw(0x210)],this['_cursorStyle']===cw(0x233)&&(this['domElement']['style']['cursor']=cw(0x233));break;case 0x1:let aE=this['_pointers'][0x0],aF=this[cw(0x256)][aE];this['_onTouchStart']({'pointerId':aE,'pageX':aF['x'],'pageY':aF['y']});break;}}function z(aD){const cx=bS;let aE;switch(aD['button']){case 0x0:aE=this['mouseButtons']['LEFT'];break;case 0x1:aE=this['mouseButtons'][cx(0x25b)];break;case 0x2:aE=this['mouseButtons'][cx(0x218)];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[cx(0x1f3)]||aD['metaKey']||aD[cx(0x1df)]){if(this['enablePan']===!0x1)return;this['_handleMouseDownPan'](aD),this['state']=P['PAN'];}else{if(this['enableRotate']===!0x1)return;this['_handleMouseDownRotate'](aD),this['state']=P[cx(0x23b)];}break;case a6['PAN']:if(aD['ctrlKey']||aD['metaKey']||aD['shiftKey']){if(this['enableRotate']===!0x1)return;this['_handleMouseDownRotate'](aD),this['state']=P['ROTATE'];}else{if(this['enablePan']===!0x1)return;this[cx(0x225)](aD),this['state']=P['PAN'];}break;default:this['state']=P['NONE'];}this['state']!==P[cx(0x210)]&&this['dispatchEvent'](D);}function B(aD){const cy=bS;switch(this['state']){case P['ROTATE']:if(this['enableRotate']===!0x1)return;this['_handleMouseMoveRotate'](aD);break;case P['DOLLY']:if(this['enableZoom']===!0x1)return;this['_handleMouseMoveDolly'](aD);break;case P['PAN']:if(this[cy(0x272)]===!0x1)return;this['_handleMouseMovePan'](aD);break;}}function V(aD){const cz=bS;this['enabled']===!0x1||this['enableZoom']===!0x1||this['state']!==P['NONE']||(aD['preventDefault'](),this['dispatchEvent'](D),this[cz(0x274)](this[cz(0x20c)](aD)),this['dispatchEvent'](O));}function H(aD){this['enabled']!==!0x1&&this['_handleKeyDown'](aD);}function U(aD){const cA=bS;switch(this['_trackPointer'](aD),this['_pointers']['length']){case 0x1:switch(this['touches'][cA(0x213)]){case a3['ROTATE']:if(this['enableRotate']===!0x1)return;this['_handleTouchStartRotate'](aD),this['state']=P['TOUCH_ROTATE'];break;case a3['PAN']:if(this[cA(0x272)]===!0x1)return;this[cA(0x273)](aD),this['state']=P['TOUCH_PAN'];break;default:this['state']=P[cA(0x210)];}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[cA(0x258)]===!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[cA(0x210)];}this[cA(0x1e2)]!==P['NONE']&&this['dispatchEvent'](D);}function X(a,b){a=a-0x1ce;const c=Q();let d=c[a];return d;}function W(aD){switch(this['_trackPointer'](aD),this['state']){case P['TOUCH_ROTATE']:if(this['enableRotate']===!0x1)return;this['_handleTouchMoveRotate'](aD),this['update']();break;case P['TOUCH_PAN']: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['update']();break;case P['TOUCH_DOLLY_ROTATE']:if(this['enableZoom']===!0x1&&this['enableRotate']===!0x1)return;this['_handleTouchMoveDollyRotate'](aD),this['update']();break;default:this['state']=P['NONE'];}}function G(aD){this['enabled']!==!0x1&&aD['preventDefault']();}function K(aD){const cB=bS;aD['key']===cB(0x21c)&&(this[cB(0x24b)]=!0x0,this['domElement']['getRootNode']()[cB(0x1d0)](cB(0x239),this[cB(0x275)],{'passive':!0x0,'capture':!0x0}));}function q(aD){const cC=bS;aD['key']==='Control'&&(this['_controlActive']=!0x1,this['domElement'][cC(0x1d8)]()['removeEventListener']('keyup',this['_interceptControlUp'],{'passive':!0x0,'capture':!0x0}));}var ge={'class':'model-viewer'},_e={'class':bS(0x1e4)},ve={'class':'model-actions'},ye={'class':'model-meta'},be={'class':'model-stage'},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 cE=bS;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 cD=X;if(!aE[cD(0x25f)])return'';try{return new URL('.',aE[cD(0x25f)])[cD(0x235)];}catch(bH){let bI=aE['sourceUrl']['split'](/[?#]/)[0x0]||aE['sourceUrl'],bJ=bI['lastIndexOf']('/');return bJ>=0x0?bI[cD(0x242)](0x0,bJ+0x1):'';}},b3=bH=>bH instanceof Error?bH[cE(0x209)]:typeof bH=='string'?bH:JSON['stringify'](bH),b4=()=>{const cF=cE;let bH=aF[cF(0x231)];if(!bH)return!0x1;if(aN||(aN=new al({'antialias':!0x0,'alpha':!0x1,'canvas':bH,'powerPreference':'high-performance'}),aN['setPixelRatio'](Math[cF(0x202)](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']['set'](0x8,0xa,0x8),aO['add'](bJ);let bK=new an(0xffffff,0.9);bK[cF(0x1ce)]['set'](-0x7,0x5,-0x4),aO[cF(0x252)](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[cF(0x1ce)]['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=>{let bJ=bI,bK=bI;bJ['geometry']&&bJ['geometry']['dispose'](),bJ['material']&&b5(bJ['material']),bK['material']&&b5(bK['material']);});},b7=()=>{aR&&aO&&(aO['remove'](aR),b6(aR)),aR=null,aX=null;},b8=()=>aZ['decode'](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 cG=X;var bP;(bP=bO['animations'])!=null&&bP['length']&&(aX=new af(bO['scene']),bO['animations']['forEach'](bQ=>aX==null?void 0x0:aX['clipAction'](bQ)['play']())),bM(bO[cG(0x20f)]);},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 cH=X;return bH[cH(0x207)](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*(){const cI=X;let {PLYLoader:bI}=yield import('./PLYLoader.js'),bJ=new bI()['parse'](aE['data']);return bJ[cI(0x267)](),new ab(bJ,bq());});return function(){const cJ=X;return bH[cJ(0x207)](this,arguments);};}()),bd=(function(){var bH=t(function*(){const cK=X;var bI;let {FBXLoader:bJ}=yield import('./FBXLoader.js'),bK=new bJ()['parse'](aE['data'],b2());return(bI=bK['animations'])!=null&&bI[cK(0x241)]&&(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*(){let {ColladaLoader:bI}=yield import('./ColladaLoader.js');return new bI()['parse'](b8(),b2())['scene'];});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(){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 cL=X;let {USDLoader:bI}=yield import('./USDLoader.js');return new bI()['parse'](aE[cL(0x201)]);});return function(){return bH['apply'](this,arguments);};}()),bk=(function(){var bH=t(function*(){const cM=X;let {KMZLoader:bI}=yield import('./KMZLoader.js');return new bI()[cM(0x217)](aE[cM(0x201)])['scene'];});return function(){return bH['apply'](this,arguments);};}()),bl=bH=>{const cN=cE;let bI=bH['toUpperCase']();throw bH===cN(0x1d5)?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*(){let {PCDLoader:bI}=yield import('./PCDLoader.js');return new bI()['parse'](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 cO=X;let {VTKLoader:bI}=yield import('./VTKLoader.js'),bJ=new bI()['parse'](aE[cO(0x201)]);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 cP=X;let bJ=bI;bJ[cP(0x1f9)]&&!bJ['material']&&(bJ['material']=bq()),bJ['isMesh']&&bJ['material']&&(Array['isArray'](bJ['material'])?bJ['material']:[bJ[cP(0x247)]])['forEach'](bK=>{'wireframe'in bK&&(bK['wireframe']=aK['value']),bK['needsUpdate']=!0x0;});});},bt=bH=>{const cQ=cE;let bI=0x0,bJ=0x0;return bH[cQ(0x1fe)](bK=>{bK['isMesh']&&(bI+=0x1),bK['isPoints']&&(bJ+=0x1);}),{'meshes':bI,'points':bJ};},bu=bH=>{const cR=cE;let {meshes:bI,points:bJ}=bt(bH),bK=[];bI&&bK[cR(0x24d)](bI+'\x20个网格'),bJ&&bK['push'](bJ+'\x20个点云'),aI['value']=bK['length']?bK['join'](','):'模型已加载';},bv=bH=>{const cS=cE;let bI=new ak()[cS(0x26b)](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[cS(0x1ce)]['sub'](bJ),{'center':new a0(),'size':bK};},bw=()=>{const cT=cE;if(!aR||!aP||!aQ)return;let bH=new ak()[cT(0x26b)](aR),bI=bH['getSize'](new a0()),bJ=bH[cT(0x268)](new a0()),bK=Math['max'](bI['x'],bI['y'],bI['z'],0x1)/(0x2*Math['tan'](a7['degToRad'](aP['fov']/0x2)))*1.65;aP['near']=Math['max'](bK/0x3e8,0.01),aP[cT(0x266)]=Math[cT(0x1e3)](bK*0x3e8,0x3e8),aP['position']['copy'](bJ)['add'](new a0(bK,bK*0.62,bK)),aP['updateProjectionMatrix'](),aQ['target']['copy'](bJ),aQ['update']();},bx=(function(){var bH=t(function*(bI){const cU=X;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[cU(0x254)]['setScalar'](Math['max'](bK/0xa,0x1));});return function(bI){const cV=X;return bH[cV(0x207)](this,arguments);};}()),by=(function(){var bH=t(function*(){const cW=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['error'](bK),aG['value']='error',aH['value']=b3(bK)||aE['type']['toUpperCase']()+cW(0x1fb);}});return function(){return bH['apply'](this,arguments);};}()),bz=bH=>{const cX=cE;switch(bH){case'glb':case'gltf':return b9();case'obj':return ba();case'stl':return bb();case cX(0x24e):return bc();case'fbx':return bd();case'dae':return bf();case'3ds':return bg();case'3mf':return bh();case'amf':return bi();case cX(0x23e):case'usda':case'usdc':case'usdz':return bj();case'kmz':return bk();case'step':case'stp':case'iges':case cX(0x271):case'ifc':case'3dm':return bl(bH);case cX(0x1f2):return bm();case'wrl':case cX(0x228):return bn();case'xyz':return bo();case'vtk':case'vtp':return bp();default:throw Error('暂不支持\x20.'+bH+cX(0x260));}},bA=()=>{const cY=cE;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[cY(0x22a)]));aN['setSize'](bJ,bK,!0x1),aP['aspect']=bJ/bK,aP['updateProjectionMatrix']();},bB=bH=>{const cZ=cE;if(!aN||!aO||!aP||!aQ)return;aQ['autoRotate']=aJ['value'],aQ['update'](),aY['update'](bH);let bI=aY['getDelta']();aX==null||aX[cZ(0x205)](bI),aN[cZ(0x263)](aO,aP),aV=requestAnimationFrame(bB);},bC=()=>{aR&&bs(aR);},bD=()=>{const d0=cE;aS&&(aS['visible']=aL[d0(0x231)]),aT&&(aT[d0(0x237)]=aM[d0(0x231)]);},bE=()=>{aK['value']=!aK['value'],bC();},bF=()=>{aL['value']=!aL['value'],bD();},bG=()=>{const d1=cE;aM['value']=!aM[d1(0x231)],bD();};return ay(()=>{b4()&&(aY['connect'](document),aU=new ResizeObserver(bA),aF['value']&&aU['observe'](aF['value']),bB(),by());}),ax(()=>{const d2=cE;aW+=0x1,cancelAnimationFrame(aV),aU==null||aU[d2(0x1de)](),aU=null,b7(),aQ==null||aQ['dispose'](),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[cE(0x25f)]],()=>{by();}),(bH,bI)=>(az(),as('div',ge,[at('div',_e,[at('div',ve,[at('button',{'type':'button','onClick':bw},'适配'),at('button',{'type':cE(0x261),'class':aw({'active':aJ['value']}),'onClick':bI[0x0]||(bI[0x0]=bJ=>aJ['value']=!aJ['value'])},'旋转',0x2),at('button',{'type':'button','class':aw({'active':aK['value']}),'onClick':bE},'线框',0x2),at(cE(0x261),{'type':'button','class':aw({'active':aL['value']}),'onClick':bF},'网格',0x2),at('button',{'type':cE(0x261),'class':aw({'active':aM['value']}),'onClick':bG},'坐标',0x2)]),at(cE(0x1f0),ye,[at('strong',null,aB(aD['type']['toUpperCase']()),0x1),at('span',null,aB(aI['value']),0x1)])]),at('div',be,[at('canvas',{'ref_key':cE(0x230),'ref':aF},null,0x200),aG['value']==='loading'?(az(),as('div',xe,'正在解析\x203D\x20模型...')):aG[cE(0x231)]==='error'?(az(),as('div',Se,[bI[0x1]||(bI[0x1]=at('strong',null,'模型解析失败',-0x1)),at(cE(0x22d),null,aB(aH[cE(0x231)]),0x1)])):ar('',!0x0)])]));}}),[[bS(0x20d),'data-v-9d2e23df']]);export{J as default};
|
|
@@ -1 +1 @@
|
|
|
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
|
+
function k(a,b){a=a-0x14f;const c=j();let d=c[a];return d;}function j(){const b5=['push','copy','setWithCredentials','groupStart','1499682nnjRXW','smooth','uvs','_finalize','substring','450594yiaGtG','parseUVIndex','Points','object','Line','clone','fromDeclaration','function','position','3138150hBmWJS','type','normals','length','setAttribute','1988XRkiMR','44qhbQeb','1743YTKOTf','trim','16HPExls','vertices','colors','addColor','add','457655TqvROF','groupCount','1133168qEipcM','materials','parse','slice','14fUFpUe','vertexColors','173495PQorBN','currentMaterial','color','setRGB','groupEnd','inherited','indexOf'];j=function(){return b5;};return j();}(function(Q,R){const aL=k,U=Q();while(!![]){try{const V=-parseInt(aL(0x16c))/0x1+-parseInt(aL(0x166))/0x2+parseInt(aL(0x15d))/0x3*(parseInt(aL(0x15b))/0x4)+parseInt(aL(0x164))/0x5+-parseInt(aL(0x177))/0x6*(parseInt(aL(0x16a))/0x7)+-parseInt(aL(0x15f))/0x8*(parseInt(aL(0x17c))/0x9)+-parseInt(aL(0x156))/0xa*(-parseInt(aL(0x15c))/0xb);if(V===R)break;else U['push'](U['shift']());}catch(W){U['push'](U['shift']());}}}(j,0x48213));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[aM(0x150)]&&this[aM(0x150)][aM(0x153)]===!0x1){this['object']['name']=R,this['object']['fromDeclaration']=U!==!0x1;return;}let V=this['object']&&typeof this['object']['currentMaterial']=='function'?this[aM(0x150)]['currentMaterial']():void 0x0;if(this['object']&&typeof this['object'][aM(0x17a)]==aM(0x154)&&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['_finalize'](!0x1);Y&&(Y[aN(0x171)]||Y['groupCount']<=0x0)&&this['materials']['splice'](Y['index'],0x1);let Z={'index':this[aN(0x167)]['length'],'name':W||'','mtllib':Array['isArray'](X)&&X['length']>0x0?X[X['length']-0x1]:'','smooth':Y===void 0x0?this['smooth']:Y['smooth'],'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['index'],'name':this['name'],'mtllib':this['mtllib'],'smooth':this['smooth'],'groupStart':0x0,'groupEnd':-0x1,'groupCount':-0x1,'inherited':!0x1};return a1[aO(0x152)]=this[aO(0x152)]['bind'](a1),a1;}};return this['materials']['push'](Z),Z;},'currentMaterial':function(){const aP=aM;if(this[aP(0x167)]['length']>0x0)return this['materials'][this['materials']['length']-0x1];},'_finalize':function(W){const aQ=aM;let X=this['currentMaterial']();if(X&&X['groupEnd']===-0x1&&(X['groupEnd']=this['geometry'][aQ(0x160)]['length']/0x3,X['groupCount']=X[aQ(0x170)]-X['groupStart'],X['inherited']=!0x1),W&&this['materials']['length']>0x1){for(let Y=this['materials']['length']-0x1;Y>=0x0;Y--)this['materials'][Y][aQ(0x165)]<=0x0&&this['materials']['splice'](Y,0x1);}return W&&this['materials']['length']===0x0&&this['materials']['push']({'name':'','smooth':this[aQ(0x178)]}),X;}},V&&V['name']&&typeof V['clone']=='function'){let W=V['clone'](0x0);W['inherited']=!0x0,this['object']['materials']['push'](W);}this['objects'][aM(0x173)](this['object']);},'finalize':function(){const aR=k;this['object']&&typeof this['object']['_finalize']==aR(0x154)&&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 aS=k;let W=this['vertices'],X=this[aS(0x150)]['geometry']['vertices'];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 aT=k;let U=this['vertices'];this['object']['geometry']['vertices'][aT(0x173)](U[R+0x0],U[R+0x1],U[R+0x2]);},'addVertexLine':function(R){let U=this['vertices'];this['object']['geometry']['vertices']['push'](U[R+0x0],U[R+0x1],U[R+0x2]);},'addNormal':function(R,U,V){const aU=k;let W=this[aU(0x158)],X=this[aU(0x150)]['geometry']['normals'];X['push'](W[R+0x0],W[R+0x1],W[R+0x2]),X[aU(0x173)](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['object']['geometry']['normals'];b['fromArray'](W,R),x['fromArray'](W,U),S['fromArray'](W,V),w['subVectors'](S,x),C['subVectors'](b,x),w['cross'](C),w['normalize'](),X[aV(0x173)](w['x'],w['y'],w['z']),X[aV(0x173)](w['x'],w['y'],w['z']),X[aV(0x173)](w['x'],w['y'],w['z']);},'addColor':function(R,U,V){const aW=k;let W=this[aW(0x161)],X=this[aW(0x150)]['geometry']['colors'];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['push'](W[V+0x0],W[V+0x1],W[V+0x2]);},'addUV':function(R,U,V){const aX=k;let W=this['uvs'],X=this['object']['geometry'][aX(0x179)];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(){let R=this['object']['geometry']['uvs'];R['push'](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[aY(0x160)]['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['parseNormalIndex'](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[aY(0x179)]['length'];a3=this[aY(0x17d)](W,a7),a4=this['parseUVIndex'](X,a7),a5=this['parseUVIndex'](Y,a7),this['addUV'](a3,a4,a5),this[aY(0x150)]['geometry']['hasUVIndices']=!0x0;}else this['addDefaultUV']();},'addPointGeometry':function(R){const aZ=k;this['object']['geometry'][aZ(0x157)]=aZ(0x14f);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[aZ(0x162)](X);}},'addLineGeometry':function(R,U){const b0=k;this['object']['geometry']['type']='Line';let V=this[b0(0x160)]['length'],W=this['uvs']['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[b1(0x175)](this['withCredentials']),X['load'](Q,function(Y){const b2=b1;try{R(W[b2(0x168)](Y));}catch(Z){V?V(Z):console['error'](Z),W['manager']['itemError'](Q);}},U,V);}['setMaterials'](Q){const b3=k;return this[b3(0x167)]=Q,this;}['parse'](Q){const b4=k;let R=new E();Q[b4(0x172)]('\x0d\x0a')!==-0x1&&(Q=Q['replace'](/\r\n/g,'\x0a')),Q[b4(0x172)]('\x5c\x0a')!==-0x1&&(Q=Q['replace'](/\\\n/g,''));let U=Q['split']('\x0a'),V=[];for(let X=0x0,Y=U[b4(0x159)];X<Y;X++){let Z=U[X]['trimStart']();if(Z['length']===0x0)continue;let a0=Z['charAt'](0x0);if(a0!=='#'){if(a0==='v'){let a1=Z['split'](y);switch(a1[0x0]){case'v':R['vertices']['push'](parseFloat(a1[0x1]),parseFloat(a1[0x2]),parseFloat(a1[0x3])),a1['length']>=0x7?(T[b4(0x16f)](parseFloat(a1[0x4]),parseFloat(a1[0x5]),parseFloat(a1[0x6]),O),R['colors']['push'](T['r'],T['g'],T['b'])):R[b4(0x161)]['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[b4(0x179)]['push'](parseFloat(a1[0x1]),parseFloat(a1[0x2]));break;}}else{if(a0==='f'){let a2=Z[b4(0x169)](0x1)['trim']()['split'](y),a3=[];for(let a5=0x0,a6=a2['length'];a5<a6;a5++){let a7=a2[a5];if(a7['length']>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']()['split']('\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[b4(0x150)]['startMaterial'](Z[b4(0x17b)](0x7)[b4(0x15e)](),R['materialLibraries']);else{if(g['test'](Z))R['materialLibraries']['push'](Z[b4(0x17b)](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][b4(0x15e)]()['toLowerCase']();R[b4(0x150)]['smooth']=am!=='0'&&am!=='off';}else R['object']['smooth']=!0x0;let al=R['object'][b4(0x16d)]();al&&(al['smooth']=R['object'][b4(0x178)]);}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']['length'];an<ao;an++){let ap=R['objects'][an],aq=ap['geometry'],ar=ap['materials'],as=aq[b4(0x157)]===b4(0x151),at=aq[b4(0x157)]==='Points',au=!0x1;if(aq['vertices']['length']===0x0)continue;let av=new M();av[b4(0x15a)]('position',new N(aq['vertices'],0x3)),aq[b4(0x158)][b4(0x159)]>0x0&&av['setAttribute']('normal',new N(aq['normals'],0x3)),aq['colors'][b4(0x159)]>0x0&&(au=!0x0,av['setAttribute'](b4(0x16e),new N(aq['colors'],0x3))),aq['hasUVIndices']===!0x0&&av[b4(0x15a)]('uv',new N(aq[b4(0x179)],0x2));let aw=[];for(let ay=0x0,az=ar['length'];ay<az;ay++){let aA=ar[ay],aB=aA['name']+'_'+aA['smooth']+'_'+au,aC=R['materials'][aB];if(this[b4(0x167)]!==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'][b4(0x174)](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['flatShading']=!aA['smooth'],aC[b4(0x16b)]=au,R['materials'][aB]=aC),aw['push'](aC);}let ax;if(aw['length']>0x1){for(let aF=0x0,aG=ar['length'];aF<aG;aF++){let aH=ar[aF];av['addGroup'](aH[b4(0x176)],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[b4(0x160)]['length']>0x0){let aI=new H({'size':0x1,'sizeAttenuation':!0x1}),aJ=new M();aJ['setAttribute'](b4(0x155),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[b4(0x163)](aK);}}return W;}};export{D as OBJLoader};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(E,F){const af=g,G=E();while(!![]){try{const H=-parseInt(af(
|
|
1
|
+
const ag=g;(function(E,F){const af=g,G=E();while(!![]){try{const H=-parseInt(af(0x74))/0x1*(parseInt(af(0x77))/0x2)+-parseInt(af(0x7f))/0x3+-parseInt(af(0x7e))/0x4*(parseInt(af(0x85))/0x5)+parseInt(af(0x84))/0x6*(parseInt(af(0x72))/0x7)+parseInt(af(0x80))/0x8*(parseInt(af(0x7b))/0x9)+parseInt(af(0x76))/0xa+parseInt(af(0x7d))/0xb;if(H===F)break;else G['push'](G['shift']());}catch(I){G['push'](G['shift']());}}}(b,0x2bfa6));import{n as j,t}from'./asyncToGenerator.js';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();function g(a,c){a=a-0x71;const d=b();let e=d[a];return e;}var p={'key':0x0,'class':'ofd-state'},m={'key':0x1,'class':'ofd-state\x20error'},h=k(x({'__name':ag(0x79),'props':{'data':{}},'setup'(F){const ah=ag;let G=F,H=C(null),I=C(null),J=C(ah(0x83)),K=C(''),L=!0x1,N=0x0,P=null,Q=0x0,R=0x0,U=null,V=()=>{const ai=ah;let a4=H['value'];if(a4){for(;a4[ai(0x78)];)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=='string'?a4:JSON['stringify'](a4),Z=(a4,a5)=>{const aj=ah;let a6=document['createDocumentFragment']();a5['forEach'](a7=>{a7['classList']['add']('ofd-page'),a6['appendChild'](a7);}),a4[aj(0x81)](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){const ak=g;let a6=yield import('./ofd.js'),a7=yield X(a6);return L?[]:Promise['resolve'](a6[ak(0x7a)](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[al(0x75)])==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']!==al(0x73))&&(J[al(0x71)]='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[al(0x7c)](ae),J['value']='error',K['value']=Y(ae)||'OFD\x20文件解析失败';}});return function(){return a4['apply'](this,arguments);};}()),a3=()=>{const am=ah;!I[am(0x71)]||P||(P=new ResizeObserver(()=>{window['clearTimeout'](Q),Q=window['setTimeout'](()=>{L||a2({'showLoading':!0x1});},0xb4);}),P['observe'](I[am(0x71)]));};return A(()=>{a2({'force':!0x0,'showLoading':!0x0})['finally'](()=>{a3();});}),z(()=>{L=!0x0,N+=0x1,window['clearTimeout'](Q),P==null||P['disconnect'](),P=null,V();}),(a4,a5)=>(B(),v('div',{'ref_key':ah(0x82),'ref':I,'class':'ofd-viewer'},[J['value']==='loading'?(B(),v('div',p,'正在解析\x20OFD...')):J['value']==='error'?(B(),v('div',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};function b(){const an=['2435719NaqLAi','32aoXjjh','624714upkusc','2480cLiXiB','appendChild','viewer','loading','162QznXXa','28025xthsJl','value','44079DFRyUT','ready','3244UlydXI','force','2297740XozJSg','170RBLrjd','firstChild','OfdViewer','renderOfd','2547YQtGoV','error'];b=function(){return an;};return b();}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
function d(a,c){a=a-
|
|
1
|
+
function d(a,c){a=a-0x1e7;const e=b();let f=e[a];return f;}const aw=d;(function(v,w){const at=d,x=v();while(!![]){try{const y=-parseInt(at(0x215))/0x1+parseInt(at(0x211))/0x2*(-parseInt(at(0x202))/0x3)+parseInt(at(0x206))/0x4*(parseInt(at(0x1f8))/0x5)+parseInt(at(0x1ee))/0x6+-parseInt(at(0x1ea))/0x7*(parseInt(at(0x205))/0x8)+parseInt(at(0x1f4))/0x9*(parseInt(at(0x1e7))/0xa)+parseInt(at(0x1f1))/0xb;if(y===w)break;else x['push'](x['shift']());}catch(z){x['push'](x['shift']());}}}(b,0x606f3));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){const au=d;super(v),this[au(0x1fc)]=!0x0;}['load'](v,w,x,y){const av=d;let z=this,A=new f(z['manager']);A['setPath'](z['path']),A[av(0x209)](av(0x1f7)),A[av(0x1fb)](z[av(0x1e9)]),A['setWithCredentials'](z['withCredentials']),A[av(0x1ff)](v,function(B){try{w(z['parse'](B));}catch(C){y?y(C):console['error'](C),z['manager']['itemError'](v);}},x,y);}[aw(0x1f9)](v,w,x,y){const ax=aw;switch(x){case'F':return y===0x8?v[ax(0x204)](w,this['littleEndian']):v['getFloat32'](w,this['littleEndian']);case'I':return y===0x1?v['getInt8'](w):y===0x2?v['getInt16'](w,this['littleEndian']):v[ax(0x20f)](w,this[ax(0x1fc)]);case'U':return y===0x1?v['getUint8'](w):y===0x2?v['getUint16'](w,this['littleEndian']):v['getUint32'](w,this['littleEndian']);}}['parse'](w){const az=aw;function x(I,J){let K=I['length'],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[ay(0x214)](K[N++]);T==='\x0a'||T==='\x0d'?(M['trim']()[ay(0x1f5)]()['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[ay(0x200)]=R[0x0]['length']+Q,J['str']=L['slice'](0x0,J[ay(0x200)]),J['str']=J[ay(0x1f3)]['replace'](/#.*/gi,''),J['version']=/^VERSION (.*)/im['exec'](J['str']),J[ay(0x20e)]=/^FIELDS (.*)/im['exec'](J['str']),J['size']=/^SIZE (.*)/im['exec'](J[ay(0x1f3)]),J['type']=/^TYPE (.*)/im['exec'](J['str']),J['count']=/^COUNT (.*)/im['exec'](J['str']),J['width']=/^WIDTH (.*)/im[ay(0x1ef)](J['str']),J['height']=/^HEIGHT (.*)/im[ay(0x1ef)](J['str']),J['viewpoint']=/^VIEWPOINT (.*)/im['exec'](J['str']),J['points']=/^POINTS (.*)/im['exec'](J['str']),J[ay(0x1f6)]!==null&&(J['version']=parseFloat(J['version'][0x1])),J['fields']=J['fields']===null?[]:J['fields'][0x1]['split']('\x20'),J['type']!==null&&(J['type']=J['type'][0x1]['split']('\x20')),J['width']!==null&&(J[ay(0x207)]=parseInt(J['width'][0x1])),J['height']!==null&&(J['height']=parseInt(J['height'][0x1])),J['viewpoint']!==null&&(J['viewpoint']=J['viewpoint'][0x1]),J['points']!==null&&(J[ay(0x1eb)]=parseInt(J['points'][0x1],0xa)),J[ay(0x1eb)]===null&&(J['points']=J['width']*J['height']),J['size']!==null&&(J['size']=J[ay(0x201)][0x1]['split']('\x20')['map'](function(U){return parseInt(U,0xa);})),J['count']!==null)J[ay(0x1e8)]=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[ay(0x1e8)]['push'](0x1);}J[ay(0x1ec)]={};let S=0x0;for(let W=0x0,X=J['fields']['length'];W<X;W++)J[ay(0x1ed)]==='ascii'?J['offset'][J['fields'][W]]=W:(J['offset'][J['fields'][W]]=S,S+=J['size'][W]*J['count'][W]);return J[ay(0x1fa)]=S,J;}let z=y(w),A=[],B=[],C=[],D=[],E=[],F=new m();if(z['data']===az(0x20d)){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]['split']('\x20');if(I['x']!==void 0x0&&(A['push'](parseFloat(M[I['x']])),A['push'](parseFloat(M[I['y']])),A['push'](parseFloat(M[I['z']]))),I['rgb']!==void 0x0){let N=z[az(0x20e)]['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[az(0x210)](F['r'],F['g'],F['b']);}I['normal_x']!==void 0x0&&(B['push'](parseFloat(M[I['normal_x']])),B['push'](parseFloat(M[I['normal_y']])),B[az(0x210)](parseFloat(M[I['normal_z']]))),I['intensity']!==void 0x0&&D['push'](parseFloat(M[I[az(0x20c)]])),I['label']!==void 0x0&&E['push'](parseInt(M[I['label']]));}}if(z['data']===az(0x213)){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['offset'];for(let a1=0x0;a1<z['points'];a1++){if(a0['x']!==void 0x0){let a2=z[az(0x20e)]['indexOf']('x'),a3=z['fields']['indexOf']('y'),a4=z['fields'][az(0x203)]('z');A['push'](this['_getDataView'](Z,z['points']*a0['x']+z['size'][a2]*a1,z['type'][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[az(0x201)][a4]));}if(a0['rgb']!==void 0x0){let a5=z[az(0x20e)]['indexOf']('rgb'),a6=Z['getUint8'](z['points']*a0['rgb']+z['size'][a5]*a1+0x2)/0xff,a7=Z['getUint8'](z[az(0x1eb)]*a0['rgb']+z['size'][a5]*a1+0x1)/0xff,a8=Z['getUint8'](z['points']*a0['rgb']+z['size'][a5]*a1+0x0)/0xff;F[az(0x1fd)](a6,a7,a8,u),C['push'](F['r'],F['g'],F['b']);}if(a0['normal_x']!==void 0x0){let a9=z['fields'][az(0x203)]('normal_x'),aa=z['fields']['indexOf']('normal_y'),ab=z['fields'][az(0x203)](az(0x20b));B['push'](this['_getDataView'](Z,z['points']*a0['normal_x']+z['size'][a9]*a1,z['type'][a9],z['size'][a9])),B['push'](this['_getDataView'](Z,z['points']*a0['normal_y']+z[az(0x201)][aa]*a1,z['type'][aa],z[az(0x201)][aa])),B['push'](this['_getDataView'](Z,z[az(0x1eb)]*a0[az(0x20b)]+z['size'][ab]*a1,z['type'][ab],z[az(0x201)][ab]));}if(a0['intensity']!==void 0x0){let ac=z['fields']['indexOf']('intensity');D['push'](this['_getDataView'](Z,z['points']*a0['intensity']+z[az(0x201)][ac]*a1,z[az(0x1f2)][ac],z['size'][ac]));}if(a0['label']!==void 0x0){let ad=z['fields']['indexOf']('label');E['push'](this['_getDataView'](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[az(0x1ec)];for(let ag=0x0,ah=0x0;ag<z['points'];ag++,ah+=z['rowSize']){if(af['x']!==void 0x0){let ai=z['fields'][az(0x203)]('x'),aj=z['fields']['indexOf']('y'),ak=z['fields']['indexOf']('z');A[az(0x210)](this['_getDataView'](ae,ah+af['x'],z['type'][ai],z['size'][ai])),A['push'](this['_getDataView'](ae,ah+af['y'],z[az(0x1f2)][aj],z['size'][aj])),A['push'](this['_getDataView'](ae,ah+af['z'],z['type'][ak],z['size'][ak]));}if(af[az(0x208)]!==void 0x0){let al=ae['getUint8'](ah+af['rgb']+0x2)/0xff,am=ae['getUint8'](ah+af[az(0x208)]+0x1)/0xff,an=ae['getUint8'](ah+af['rgb']+0x0)/0xff;F[az(0x1fd)](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'][az(0x203)]('normal_y'),aq=z['fields'][az(0x203)]('normal_z');B['push'](this['_getDataView'](ae,ah+af['normal_x'],z['type'][ao],z['size'][ao])),B[az(0x210)](this['_getDataView'](ae,ah+af['normal_y'],z['type'][ap],z[az(0x201)][ap])),B[az(0x210)](this['_getDataView'](ae,ah+af['normal_z'],z['type'][aq],z['size'][aq]));}if(af['intensity']!==void 0x0){let ar=z[az(0x20e)][az(0x203)]('intensity');D['push'](this['_getDataView'](ae,ah+af[az(0x20c)],z[az(0x1f2)][ar],z['size'][ar]));}if(af['label']!==void 0x0){let as=z[az(0x20e)]['indexOf']('label');E['push'](this['_getDataView'](ae,ah+af['label'],z['type'][as],z['size'][as]));}}}let G=new p();A[az(0x212)]>0x0&&G['setAttribute'](az(0x1f0),new q(A,0x3)),B['length']>0x0&&G['setAttribute']('normal',new q(B,0x3)),C[az(0x212)]>0x0&&G['setAttribute']('color',new q(C,0x3)),D['length']>0x0&&G[az(0x1fe)]('intensity',new q(D,0x1)),E['length']>0x0&&G[az(0x1fe)]('label',new k(E,0x1)),G['computeBoundingSphere']();let H=new h({'size':0.005});return C['length']>0x0&&(H[az(0x20a)]=!0x0),new j(G,H);}};export{l as PCDLoader};function b(){const aA=['setRequestHeader','littleEndian','setRGB','setAttribute','load','headerLen','size','15FWsEXD','indexOf','getFloat64','571072RHrbVm','116ezEbqw','width','rgb','setResponseType','vertexColors','normal_z','intensity','ascii','fields','getInt32','push','91268dNgoeY','length','binary_compressed','fromCharCode','379912oONZph','80vfHcMG','count','requestHeader','35mxilxJ','points','offset','data','3366720lUSleb','exec','position','1284866KlfaFU','type','str','297954fXUqTT','toLowerCase','version','arraybuffer','71935VBIlps','_getDataView','rowSize'];b=function(){return aA;};return b();}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
function b(){const
|
|
1
|
+
const aj=d;function d(a,c){a=a-0x17b;const e=b();let f=e[a];return f;}function b(){const al=['setRequestHeader','setWithCredentials','texture_u','2176515KfXdhC','length','attrB','countReader','itemError','float64','name','exec','2HiYXjZ','getUint32','faceVertexUvs','fromCharCode','378294AyrdPV','14YKujFL','getInt8','push','computeBoundingSphere','format','faceVertexColors','normals','2331321xohvDj','indices','965327TLSvGD','int16','228KPKgVF','attrNX','count','obj_info','double','280jmNbYR','keys','properties','propertyNameMapping','log','2467945VVoEBB','empty','attrX','join','normaly','objInfo','setPath','8uqDuyB','read','attrG','setAttribute','colors','customPropertyMapping','comment','6695952sNHwqB','attrNY','int8','type','normalz','countType','comments','version','168552TaEfIN'];b=function(){return al;};return b();}(function(m,p){const Y=d,q=m();while(!![]){try{const u=-parseInt(Y(0x1a9))/0x1*(parseInt(Y(0x19b))/0x2)+-parseInt(Y(0x1a7))/0x3+-parseInt(Y(0x180))/0x4*(parseInt(Y(0x1b5))/0x5)+parseInt(Y(0x19f))/0x6*(-parseInt(Y(0x1a0))/0x7)+-parseInt(Y(0x187))/0x8+parseInt(Y(0x18f))/0x9*(parseInt(Y(0x1b0))/0xa)+-parseInt(Y(0x193))/0xb*(-parseInt(Y(0x1ab))/0xc);if(u===p)break;else q['push'](q['shift']());}catch(v){q['push'](q['shift']());}}}(b,0x9050b));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){const Z=d;super(m),this['propertyNameMapping']={},this[Z(0x185)]={};}['load'](m,p,q,u){const a0=d;let v=this,w=new f(this['manager']);w[a0(0x17f)](this['path']),w['setResponseType']('arraybuffer'),w[a0(0x190)](this['requestHeader']),w[a0(0x191)](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(0x197)](m);}},q,u);}['setPropertyNameMapping'](m){const a2=d;this[a2(0x1b3)]=m;}['setCustomPropertyNameMapping'](m){const a3=d;this[a3(0x185)]=m;}['parse'](q){function w(L,M=0x0){const a4=d;let N=/^ply([\s\S]*)end_header(\r\n|\r|\n)/,O='',P=N[a4(0x19a)](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 a5=a4;let W={'type':U[0x0]};return W['type']==='list'?(W[a5(0x199)]=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['shift']();switch(V=W[a4(0x17c)]('\x20'),X){case'format':Q[a4(0x1a4)]=W[0x0],Q[a4(0x18e)]=W[0x1];break;case a4(0x186):Q[a4(0x18d)]['push'](V);break;case'element':S!==void 0x0&&Q['elements']['push'](S),S={},S['name']=W[0x0],S['count']=parseInt(W[0x1]),S[a4(0x1b2)]=[];break;case'property':S['properties']['push'](T(W,K['propertyNameMapping']));break;case a4(0x1ae):Q[a4(0x17e)]=V;break;default:console[a4(0x1b4)]('unhandled',X,W);}}return S!==void 0x0&&Q['elements']['push'](S),Q;}function x(L,M){const a6=d;switch(M){case'char':case'uchar':case'short':case'ushort':case'int':case'uint':case a6(0x189):case'uint8':case a6(0x1aa):case'uint16':case'int32':case'uint32':return parseInt(L);case'float':case a6(0x1af):case'float32':case'float64':return parseFloat(L);}}function z(L,M){const a7=d;let N={};for(let O=0x0;O<L['length'];O++){if(M['empty']())return null;if(L[O][a7(0x18a)]==='list'){let P=[],Q=x(M['next'](),L[O]['countType']);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][a7(0x18a)]);}return N;}function A(){const a8=d;let L={'indices':[],'vertices':[],'normals':[],'uvs':[],'faceVertexUvs':[],'colors':[],'faceVertexColors':[]};for(let M of Object[a8(0x1b1)](K[a8(0x185)]))L[M]=[];return L;}function B(L){const aa=d;let M=L['map'](O=>O['name']);function N(O){const a9=d;for(let P=0x0,Q=O[a9(0x194)];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',aa(0x17d)]),'attrNZ':N(['nz',aa(0x18b)]),'attrS':N(['s','u',aa(0x192),'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 ab=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']['length'];S++){let T=M['elements'][S],U=B(T['properties']);for(let V=0x0;V<T[ab(0x1ad)];V++){let W=z(T['properties'],R);if(!W)break X;E(N,T['name'],W,U);}}return D(N);}function D(L){const ac=d;let M=new j();L['indices']['length']>0x0&&M['setIndex'](L[ac(0x1a8)]),M[ac(0x183)]('position',new k(L['vertices'],0x3)),L['normals']['length']>0x0&&M['setAttribute']('normal',new k(L['normals'],0x3)),L['uvs']['length']>0x0&&M[ac(0x183)]('uv',new k(L['uvs'],0x2)),L['colors'][ac(0x194)]>0x0&&M['setAttribute']('color',new k(L[ac(0x184)],0x3)),(L['faceVertexUvs'][ac(0x194)]>0x0||L['faceVertexColors']['length']>0x0)&&(M=M['toNonIndexed'](),L['faceVertexUvs']['length']>0x0&&M['setAttribute']('uv',new k(L[ac(0x19d)],0x2)),L['faceVertexColors']['length']>0x0&&M[ac(0x183)]('color',new k(L[ac(0x1a5)],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[ac(0x1a3)](),M;}function E(L,M,N,O){const ad=d;if(M==='vertex'){L['vertices']['push'](N[O[ad(0x17b)]],N[O['attrY']],N[O['attrZ']]),O[ad(0x1ac)]!==null&&O[ad(0x188)]!==null&&O['attrNZ']!==null&&L[ad(0x1a6)]['push'](N[O['attrNX']],N[O['attrNY']],N[O['attrNZ']]),O['attrS']!==null&&O['attrT']!==null&&L['uvs']['push'](N[O['attrS']],N[O['attrT']]),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['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[ad(0x1a8)]['push'](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']['push'](S[0x4],S[0x5]))):R['length']===0x4&&(L['indices'][ad(0x1a2)](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[ad(0x182)]]/0xff,N[O[ad(0x195)]]/0xff,l),L['faceVertexColors'][ad(0x1a2)](o['r'],o['g'],o['b']),L['faceVertexColors']['push'](o['r'],o['g'],o['b']),L['faceVertexColors']['push'](o['r'],o['g'],o['b']));}}}function F(L,M){const ae=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[ae(0x196)][ae(0x181)](L+O);O+=Q[ae(0x196)]['size'];for(let U=0x0;U<T;U++)S['push'](R['read'](L+O)),O+=R['size'];N[Q['name']]=S;}else N[Q[ae(0x199)]]=R[ae(0x181)](L+O),O+=R['size'];}return[N,O];}function G(L,M,N){const ag=d;function O(P,Q,R){const af=d;switch(Q){case'int8':case'char':return{'read':S=>P[af(0x1a1)](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'int':return{'read':S=>P['getInt32'](S,R),'size':0x4};case'uint32':case'uint':return{'read':S=>P[af(0x19c)](S,R),'size':0x4};case'float32':case'float':return{'read':S=>P['getFloat32'](S,R),'size':0x4};case af(0x198):case'double':return{'read':S=>P['getFloat64'](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[ag(0x18c)],N),R['valueReader']=O(M,R['itemType'],N)):R['valueReader']=O(M,R[ag(0x18a)],N);}}function H(L,M){const ah=d;let N=A(),O=M['format']==='binary_little_endian',P=new DataView(L,M['headerLength']),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[ah(0x1ad)];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 ai=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[ai(0x19e)](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[ai(0x17c)]('\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;}[aj(0x1b6)](){const ak=aj;return this['i']>=this['arr'][ak(0x194)];}['next'](){return this['arr'][this['i']++];}};export{s as PLYLoader};
|