@flyfish-group/file-viewer3 1.0.19 → 1.0.20
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 +17 -16
- 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 +206 -207
- package/dist/components/PptxRender.js +1 -1
- package/dist/components/STLLoader.js +1 -1
- package/dist/components/TDSLoader.js +1 -1
- package/dist/components/TypstViewer.js +1671 -0
- 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/compiler.js +1 -0
- 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/global-compiler.js +1 -0
- package/dist/components/global-renderer.js +1 -0
- 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/printLayout.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/renderer.js +1 -0
- 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/sourceLoading.js +1 -0
- 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/typst.js +1 -0
- 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/wasm-pack-shim.js +1 -0
- package/dist/components/wasm-pack-shim2.js +1 -0
- package/dist/components/wasm.js +1 -0
- package/dist/components/word.js +1 -1
- package/dist/components/worker-ref.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/sourceLoading.d.ts +10 -0
- package/dist/src/package/common/type.d.ts +33 -1
- package/dist/src/package/components/FileViewer/useViewerExport.d.ts +2 -1
- package/dist/src/package/vendors/pdf/PdfView.vue.d.ts +2 -1
- package/dist/src/package/vendors/typst/TypstViewer.vue.d.ts +15 -0
- package/dist/src/package/vendors/typst/index.d.ts +8 -0
- package/package.json +5 -1
- package/dist/components/wrapAsyncGenerator.js +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
const bU=X;function Q(){const d0=['ifc','set','ROTATE','grab','_handleTouchMoveDollyRotate','keys','domElement','zoom0','_handleMouseWheel','ArrowDown','_isTrackingPointer','_handleTouchMoveDolly','_dollyEnd','state','33456573kXphHg','radius','11500139wvZjAw','isEmpty','_handleMouseDownPan','warn','TOUCH_PAN','_rotateStart','touchAction','_panLeft','pageY','setPixelRatio','keyPanSpeed','enablePan','22215Qkhggu','style','_handleTouchStartRotate','screenSpacePanning','_dollyStart','pow','_clampDistance','pcd','_quatInverse','cursor','_sphericalDelta','object','value','1938XaGxHB','_controlActive','_interceptControlDown','multiplyScalar','subVectors','target','updateProjectionMatrix','正在解析\x203D\x20模型...','enableRotate','_lastTargetPosition','model-viewer','NONE','_panUp','keyRotateSpeed','theta','3dm','setSize','_dollyDelta','usda','pageX','dispose','rotateUp','1570073voLwOz','_lastPosition','_spherical','max','forEach','div','model-stage','_getAutoRotationAngle','114088AzNeAZ','10xTUKpO','shiftKey','_onTouchMove','update','_panDelta','enableZoom','_rotateEnd','matrix','maxAzimuthAngle','sqrt','phi','clientY','distanceTo','pan','正在加载模型','3mf','aspect','936789dBIAPB','usd','PAN','addEventListener','getSize','position','dampingFactor','traverse','_handleTouchMoveRotate','_onKeyDown','2jEsRty','_handleTouchMoveDollyPan','bind','_getZoomScale','_panStart','isOrthographicCamera','removeEventListener','loading','模型已加载','TOUCH_ROTATE','ctrlKey','metaKey','key','Control','data','model-actions','maxPolarAngle','clientHeight','pointerup','_pointers','copy','apply','_rotateLeft','computeVertexNormals','connect','getRootNode','_pointerPositions','pointermove','getCenter','contextmenu','_lastQuaternion','height','preventDefault','target0','DOLLY','_interceptControlUp','intersectPlane','min','_handleTouchStartDollyRotate','kmz','amf','sourceUrl','background','_panEnd','_handleMouseDownRotate','button','_onMouseDown','zoom','_performCursorZoom','1178688eIxCGe','disconnect','WARNING:\x20OrbitControls.js\x20encountered\x20an\x20unknown\x20camera\x20type\x20-\x20dolly/zoom\x20disabled.','isPerspectiveCamera','_getSecondPointerPosition','ONE','step','_scale','pointerdown','stringify','TOUCH_DOLLY_PAN','parse','error','model-state\x20error','_dollyOut','isMesh','_panOffset','vrml','minTargetRadius','_updateZoomParameters','releasePointerCapture','_mouse','_pan','DOLLY_PAN','length','wrl','strong','touches','lookAt','geometry','isArray','add'];Q=function(){return d0;};return Q();}(function(aD,aE){const bR=X,aF=aD();while(!![]){try{const aG=-parseInt(bR(0x16b))/0x1*(-parseInt(bR(0x18f))/0x2)+parseInt(bR(0x185))/0x3+-parseInt(bR(0x1c0))/0x4+-parseInt(bR(0x148))/0x5*(-parseInt(bR(0x155))/0x6)+parseInt(bR(0x13c))/0x7+parseInt(bR(0x173))/0x8+-parseInt(bR(0x13a))/0x9*(parseInt(bR(0x174))/0xa);if(aG===aE)break;else aF['push'](aF['shift']());}catch(aH){aF['push'](aF['shift']());}}}(Q,0xeafbe));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[bS(0x160)],this['target']=new a0(),this['cursor']=new a0(),this['minDistance']=0x0,this['maxDistance']=Infinity,this['minZoom']=0x0,this['maxZoom']=Infinity,this[bS(0x11e)]=0x0,this['maxTargetRadius']=Infinity,this['minPolarAngle']=0x0,this[bS(0x19f)]=Math['PI'],this['minAzimuthAngle']=-Infinity,this[bS(0x17c)]=Infinity,this['enableDamping']=!0x1,this['dampingFactor']=0.05,this[bS(0x179)]=!0x0,this['zoomSpeed']=0x1,this['enableRotate']=!0x0,this['rotateSpeed']=0x1,this['keyRotateSpeed']=0x1,this['enablePan']=!0x0,this['panSpeed']=0x1,this[bS(0x14b)]=!0x0,this['keyPanSpeed']=0x7,this['zoomToCursor']=!0x1,this['autoRotate']=!0x1,this['autoRotateSpeed']=0x2,this['keys']={'LEFT':'ArrowLeft','UP':'ArrowUp','RIGHT':'ArrowRight','BOTTOM':bS(0x135)},this['mouseButtons']={'LEFT':a6['ROTATE'],'MIDDLE':a6['DOLLY'],'RIGHT':a6[bS(0x187)]},this['touches']={'ONE':a3['ROTATE'],'TWO':a3[bS(0x123)]},this[bS(0x1b0)]=this[bS(0x15a)]['clone'](),this['position0']=this[bS(0x153)]['position']['clone'](),this['zoom0']=this['object']['zoom'],this['_cursorStyle']='auto',this['_domElementKeyEvents']=null,this['_lastPosition']=new a0(),this['_lastQuaternion']=new ap(),this[bS(0x15e)]=new a0(),this['_quat']=new ap()['setFromUnitVectors'](aD['up'],new a0(0x0,0x1,0x0)),this['_quatInverse']=this['_quat']['clone']()['invert'](),this[bS(0x16d)]=new ag(),this[bS(0x152)]=new ag(),this[bS(0x1c7)]=0x1,this['_panOffset']=new a0(),this['_rotateStart']=new aq(),this['_rotateEnd']=new aq(),this['_rotateDelta']=new aq(),this['_panStart']=new aq(),this[bS(0x1ba)]=new aq(),this['_panDelta']=new aq(),this['_dollyStart']=new aq(),this['_dollyEnd']=new aq(),this['_dollyDelta']=new aq(),this['_dollyDirection']=new a0(),this['_mouse']=new aq(),this['_performCursorZoom']=!0x1,this['_pointers']=[],this[bS(0x1a9)]={},this['_controlActive']=!0x1,this['_onPointerMove']=L['bind'](this),this['_onPointerDown']=I['bind'](this),this['_onPointerUp']=R[bS(0x191)](this),this['_onContextMenu']=G[bS(0x191)](this),this['_onMouseWheel']=V['bind'](this),this['_onKeyDown']=H[bS(0x191)](this),this['_onTouchStart']=U[bS(0x191)](this),this[bS(0x176)]=W['bind'](this),this[bS(0x1bd)]=z['bind'](this),this['_onMouseMove']=B['bind'](this),this[bS(0x157)]=K['bind'](this),this[bS(0x1b2)]=q[bS(0x191)](this),this['domElement']!==null&&this['connect'](this['domElement']),this['update']();}set['cursorStyle'](aD){const bT=X;this['_cursorStyle']=aD,aD==='grab'?this[bT(0x132)]['style']['cursor']=bT(0x12f):this['domElement']['style']['cursor']='auto';}get['cursorStyle'](){return this['_cursorStyle'];}[bU(0x1a7)](aD){const bV=bU;super['connect'](aD),this['domElement'][bV(0x188)]('pointerdown',this['_onPointerDown']),this['domElement']['addEventListener']('pointercancel',this['_onPointerUp']),this[bV(0x132)]['addEventListener'](bV(0x1ac),this['_onContextMenu']),this['domElement']['addEventListener']('wheel',this['_onMouseWheel'],{'passive':!0x1}),this['domElement'][bV(0x1a8)]()[bV(0x188)]('keydown',this[bV(0x157)],{'passive':!0x0,'capture':!0x0}),this['domElement'][bV(0x149)]['touchAction']='none';}[bU(0x1c1)](){const bW=bU;this['domElement'][bW(0x195)](bW(0x1c8),this['_onPointerDown']),this['domElement']['ownerDocument'][bW(0x195)](bW(0x1aa),this['_onPointerMove']),this[bW(0x132)]['ownerDocument'][bW(0x195)]('pointerup',this['_onPointerUp']),this['domElement']['removeEventListener']('pointercancel',this['_onPointerUp']),this['domElement']['removeEventListener']('wheel',this['_onMouseWheel']),this[bW(0x132)]['removeEventListener'](bW(0x1ac),this['_onContextMenu']),this['stopListenToKeyEvents'](),this['domElement']['getRootNode']()['removeEventListener']('keydown',this['_interceptControlDown'],{'capture':!0x0}),this['domElement']['style'][bW(0x142)]='';}['dispose'](){const bX=bU;this[bX(0x1c1)]();}['getPolarAngle'](){return this['_spherical']['phi'];}['getAzimuthalAngle'](){return this['_spherical']['theta'];}['getDistance'](){const bY=bU;return this['object']['position'][bY(0x180)](this[bY(0x15a)]);}['listenToKeyEvents'](aD){aD['addEventListener']('keydown',this['_onKeyDown']),this['_domElementKeyEvents']=aD;}['stopListenToKeyEvents'](){const bZ=bU;this['_domElementKeyEvents']!==null&&(this['_domElementKeyEvents']['removeEventListener']('keydown',this[bZ(0x18e)]),this['_domElementKeyEvents']=null);}['saveState'](){this['target0']['copy'](this['target']),this['position0']['copy'](this['object']['position']),this['zoom0']=this['object']['zoom'];}['reset'](){const c0=bU;this['target']['copy'](this['target0']),this['object'][c0(0x18a)]['copy'](this['position0']),this['object']['zoom']=this[c0(0x133)],this[c0(0x153)]['updateProjectionMatrix'](),this['dispatchEvent'](E),this[c0(0x177)](),this['state']=P['NONE'];}[bU(0x181)](aD,aE){this['_pan'](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']();}[bU(0x16a)](aD){this['_rotateUp'](aD),this['update']();}['update'](aD=null){const c1=bU;let aE=this['object']['position'];M[c1(0x1a3)](aE)['sub'](this['target']),M['applyQuaternion'](this['_quat']),this['_spherical']['setFromVector3'](M),this['autoRotate']&&this['state']===P['NONE']&&this['_rotateLeft'](this[c1(0x172)](aD)),this['enableDamping']?(this['_spherical'][c1(0x163)]+=this['_sphericalDelta']['theta']*this[c1(0x18b)],this['_spherical']['phi']+=this['_sphericalDelta']['phi']*this['dampingFactor']):(this['_spherical']['theta']+=this['_sphericalDelta']['theta'],this['_spherical']['phi']+=this['_sphericalDelta']['phi']);let aF=this['minAzimuthAngle'],aG=this[c1(0x17c)];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[c1(0x16d)]['theta'])):this['_spherical']['theta']=this['_spherical'][c1(0x163)]>(aF+aG)/0x2?Math['max'](aF,this['_spherical']['theta']):Math['min'](aG,this['_spherical'][c1(0x163)])),this['_spherical']['phi']=Math['max'](this['minPolarAngle'],Math['min'](this['maxPolarAngle'],this['_spherical']['phi'])),this['_spherical']['makeSafe'](),this['enableDamping']===!0x0?this['target']['addScaledVector'](this['_panOffset'],this['dampingFactor']):this['target']['add'](this[c1(0x11c)]),this['target']['sub'](this['cursor']),this[c1(0x15a)]['clampLength'](this[c1(0x11e)],this['maxTargetRadius']),this['target']['add'](this[c1(0x151)]);let aH=!0x1;if(this['zoomToCursor']&&this['_performCursorZoom']||this['object']['isOrthographicCamera'])this['_spherical']['radius']=this['_clampDistance'](this[c1(0x16d)]['radius']);else{let aI=this['_spherical'][c1(0x13b)];this['_spherical'][c1(0x13b)]=this['_clampDistance'](this[c1(0x16d)][c1(0x13b)]*this[c1(0x1c7)]),aH=aI!=this['_spherical']['radius'];}if(M['setFromSpherical'](this['_spherical']),M['applyQuaternion'](this[c1(0x150)]),aE['copy'](this['target'])['add'](M),this[c1(0x153)][c1(0x128)](this['target']),this['enableDamping']===!0x0?(this['_sphericalDelta']['theta']*=0x1-this['dampingFactor'],this['_sphericalDelta'][c1(0x17e)]*=0x1-this['dampingFactor'],this['_panOffset']['multiplyScalar'](0x1-this['dampingFactor'])):(this['_sphericalDelta']['set'](0x0,0x0,0x0),this['_panOffset'][c1(0x12d)](0x0,0x0,0x0)),this['zoomToCursor']&&this['_performCursorZoom']){let aJ=null;if(this[c1(0x153)]['isPerspectiveCamera']){let aK=M[c1(0x124)]();aJ=this['_clampDistance'](aK*this[c1(0x1c7)]);let aL=aK-aJ;this['object']['position']['addScaledVector'](this['_dollyDirection'],aL),this['object']['updateMatrixWorld'](),aH=!!aL;}else{if(this['object'][c1(0x194)]){let aM=new a0(this['_mouse']['x'],this['_mouse']['y'],0x0);aM['unproject'](this['object']);let aN=this['object']['zoom'];this['object']['zoom']=Math['max'](this['minZoom'],Math['min'](this['maxZoom'],this['object']['zoom']/this['_scale'])),this['object'][c1(0x15b)](),aH=aN!==this['object']['zoom'];let aO=new a0(this[c1(0x121)]['x'],this['_mouse']['y'],0x0);aO['unproject'](this['object']),this['object']['position']['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[c1(0x153)]['matrix'])['multiplyScalar'](aJ)['add'](this['object']['position']):(k['origin']['copy'](this['object']['position']),k['direction']['set'](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['target']),k[c1(0x1b3)](A,this[c1(0x15a)]))));}else{if(this[c1(0x153)]['isOrthographicCamera']){let aP=this['object'][c1(0x1be)];this['object']['zoom']=Math['max'](this['minZoom'],Math['min'](this['maxZoom'],this[c1(0x153)]['zoom']/this['_scale'])),aP!==this['object']['zoom']&&(this['object'][c1(0x15b)](),aH=!0x0);}}return this['_scale']=0x1,this['_performCursorZoom']=!0x1,aH||this['_lastPosition']['distanceToSquared'](this['object']['position'])>F||0x8*(0x1-this['_lastQuaternion']['dot'](this['object']['quaternion']))>F||this[c1(0x15e)]['distanceToSquared'](this[c1(0x15a)])>F?(this['dispatchEvent'](E),this[c1(0x16c)][c1(0x1a3)](this['object']['position']),this[c1(0x1ad)]['copy'](this['object']['quaternion']),this['_lastTargetPosition'][c1(0x1a3)](this['target']),!0x0):!0x1;}['_getAutoRotationAngle'](aD){return aD===null?N/0x3c/0x3c*this['autoRotateSpeed']:N/0x3c*this['autoRotateSpeed']*aD;}[bU(0x192)](aD){const c2=bU;let aE=Math['abs'](aD*0.01);return Math[c2(0x14d)](0.95,this['zoomSpeed']*aE);}['_rotateLeft'](aD){const c3=bU;this[c3(0x152)][c3(0x163)]-=aD;}['_rotateUp'](aD){this['_sphericalDelta']['phi']-=aD;}[bU(0x143)](aD,aE){M['setFromMatrixColumn'](aE,0x0),M['multiplyScalar'](-aD),this['_panOffset']['add'](M);}['_panUp'](aD,aE){this['screenSpacePanning']===!0x0?M['setFromMatrixColumn'](aE,0x1):(M['setFromMatrixColumn'](aE,0x0),M['crossVectors'](this['object']['up'],M)),M['multiplyScalar'](aD),this['_panOffset']['add'](M);}['_pan'](aD,aE){const c4=bU;let aF=this['domElement'];if(this['object'][c4(0x1c3)]){let aG=this['object']['position'];M['copy'](aG)['sub'](this['target']);let aH=M[c4(0x124)]();aH*=Math['tan'](this['object']['fov']/0x2*Math['PI']/0xb4),this['_panLeft'](0x2*aD*aH/aF['clientHeight'],this['object'][c4(0x17b)]),this['_panUp'](0x2*aE*aH/aF['clientHeight'],this['object']['matrix']);}else this['object']['isOrthographicCamera']?(this['_panLeft'](aD*(this['object']['right']-this['object']['left'])/this['object']['zoom']/aF['clientWidth'],this['object']['matrix']),this[c4(0x161)](aE*(this['object']['top']-this[c4(0x153)]['bottom'])/this['object']['zoom']/aF['clientHeight'],this[c4(0x153)]['matrix'])):(console['warn']('WARNING:\x20OrbitControls.js\x20encountered\x20an\x20unknown\x20camera\x20type\x20-\x20pan\x20disabled.'),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);}['_dollyIn'](aD){const c5=bU;this['object']['isPerspectiveCamera']||this['object'][c5(0x194)]?this['_scale']*=aD:(console[c5(0x13f)](c5(0x1c2)),this['enableZoom']=!0x1);}['_updateZoomParameters'](aD,aE){const c6=bU;if(!this['zoomToCursor'])return;this[c6(0x1bf)]=!0x0;let aF=this['domElement']['getBoundingClientRect'](),aG=aD-aF['left'],aH=aE-aF['top'],aI=aF['width'],aJ=aF[c6(0x1ae)];this[c6(0x121)]['x']=aG/aI*0x2-0x1,this['_mouse']['y']=-(aH/aJ)*0x2+0x1,this['_dollyDirection']['set'](this['_mouse']['x'],this['_mouse']['y'],0x1)['unproject'](this['object'])['sub'](this['object']['position'])['normalize']();}[bU(0x14e)](aD){return Math['max'](this['minDistance'],Math['min'](this['maxDistance'],aD));}[bU(0x1bb)](aD){this['_rotateStart']['set'](aD['clientX'],aD['clientY']);}['_handleMouseDownDolly'](aD){const c7=bU;this[c7(0x11f)](aD['clientX'],aD['clientX']),this['_dollyStart']['set'](aD['clientX'],aD['clientY']);}[bU(0x13e)](aD){this['_panStart']['set'](aD['clientX'],aD['clientY']);}['_handleMouseMoveRotate'](aD){const c8=bU;this[c8(0x17a)][c8(0x12d)](aD['clientX'],aD[c8(0x17f)]),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[c8(0x1a0)]),this['_rotateStart']['copy'](this[c8(0x17a)]),this[c8(0x177)]();}['_handleMouseMoveDolly'](aD){const c9=bU;this['_dollyEnd']['set'](aD['clientX'],aD['clientY']),this['_dollyDelta'][c9(0x159)](this['_dollyEnd'],this['_dollyStart']),this['_dollyDelta']['y']>0x0?this[c9(0x1ce)](this['_getZoomScale'](this['_dollyDelta']['y'])):this['_dollyDelta']['y']<0x0&&this['_dollyIn'](this['_getZoomScale'](this[c9(0x166)]['y'])),this['_dollyStart']['copy'](this['_dollyEnd']),this['update']();}['_handleMouseMovePan'](aD){const ca=bU;this[ca(0x1ba)]['set'](aD['clientX'],aD['clientY']),this['_panDelta']['subVectors'](this['_panEnd'],this['_panStart'])['multiplyScalar'](this['panSpeed']),this[ca(0x122)](this['_panDelta']['x'],this['_panDelta']['y']),this['_panStart']['copy'](this['_panEnd']),this['update']();}[bU(0x134)](aD){const cb=bU;this['_updateZoomParameters'](aD['clientX'],aD['clientY']),aD['deltaY']<0x0?this['_dollyIn'](this['_getZoomScale'](aD['deltaY'])):aD['deltaY']>0x0&&this['_dollyOut'](this[cb(0x192)](aD['deltaY'])),this[cb(0x177)]();}['_handleKeyDown'](aD){const cc=bU;let aE=!0x1;switch(aD['code']){case this['keys']['UP']:aD['ctrlKey']||aD[cc(0x19a)]||aD['shiftKey']?this[cc(0x15d)]&&this['_rotateUp'](N*this[cc(0x162)]/this[cc(0x132)]['clientHeight']):this['enablePan']&&this['_pan'](0x0,this[cc(0x146)]),aE=!0x0;break;case this['keys']['BOTTOM']:aD['ctrlKey']||aD['metaKey']||aD[cc(0x175)]?this['enableRotate']&&this['_rotateUp'](-N*this['keyRotateSpeed']/this['domElement']['clientHeight']):this['enablePan']&&this['_pan'](0x0,-this['keyPanSpeed']),aE=!0x0;break;case this[cc(0x131)]['LEFT']:aD[cc(0x199)]||aD['metaKey']||aD['shiftKey']?this['enableRotate']&&this[cc(0x1a5)](N*this['keyRotateSpeed']/this[cc(0x132)]['clientHeight']):this['enablePan']&&this['_pan'](this['keyPanSpeed'],0x0),aE=!0x0;break;case this['keys']['RIGHT']:aD['ctrlKey']||aD['metaKey']||aD[cc(0x175)]?this['enableRotate']&&this['_rotateLeft'](-N*this['keyRotateSpeed']/this['domElement']['clientHeight']):this['enablePan']&&this['_pan'](-this['keyPanSpeed'],0x0),aE=!0x0;break;}aE&&(aD[cc(0x1af)](),this[cc(0x177)]());}[bU(0x14a)](aD){const cd=bU;if(this['_pointers']['length']===0x1)this['_rotateStart']['set'](aD['pageX'],aD['pageY']);else{let aE=this[cd(0x1c4)](aD),aF=0.5*(aD['pageX']+aE['x']),aG=0.5*(aD['pageY']+aE['y']);this['_rotateStart']['set'](aF,aG);}}['_handleTouchStartPan'](aD){const cf=bU;if(this[cf(0x1a2)]['length']===0x1)this['_panStart']['set'](aD['pageX'],aD['pageY']);else{let aE=this['_getSecondPointerPosition'](aD),aF=0.5*(aD[cf(0x168)]+aE['x']),aG=0.5*(aD['pageY']+aE['y']);this['_panStart']['set'](aF,aG);}}['_handleTouchStartDolly'](aD){const cg=bU;let aE=this[cg(0x1c4)](aD),aF=aD['pageX']-aE['x'],aG=aD[cg(0x144)]-aE['y'],aH=Math[cg(0x17d)](aF*aF+aG*aG);this['_dollyStart'][cg(0x12d)](0x0,aH);}['_handleTouchStartDollyPan'](aD){this['enableZoom']&&this['_handleTouchStartDolly'](aD),this['enablePan']&&this['_handleTouchStartPan'](aD);}[bU(0x1b5)](aD){const ch=bU;this[ch(0x179)]&&this['_handleTouchStartDolly'](aD),this['enableRotate']&&this['_handleTouchStartRotate'](aD);}['_handleTouchMoveRotate'](aD){const ci=bU;if(this['_pointers']['length']==0x1)this['_rotateEnd']['set'](aD['pageX'],aD['pageY']);else{let aF=this[ci(0x1c4)](aD),aG=0.5*(aD['pageX']+aF['x']),aH=0.5*(aD[ci(0x144)]+aF['y']);this[ci(0x17a)]['set'](aG,aH);}this['_rotateDelta']['subVectors'](this['_rotateEnd'],this['_rotateStart'])[ci(0x158)](this['rotateSpeed']);let aE=this[ci(0x132)];this['_rotateLeft'](N*this['_rotateDelta']['x']/aE['clientHeight']),this['_rotateUp'](N*this['_rotateDelta']['y']/aE['clientHeight']),this[ci(0x141)][ci(0x1a3)](this[ci(0x17a)]);}['_handleTouchMovePan'](aD){const cj=bU;if(this['_pointers']['length']===0x1)this['_panEnd']['set'](aD['pageX'],aD[cj(0x144)]);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[cj(0x193)])[cj(0x158)](this['panSpeed']),this['_pan'](this['_panDelta']['x'],this[cj(0x178)]['y']),this['_panStart']['copy'](this['_panEnd']);}['_handleTouchMoveDolly'](aD){const ck=bU;let aE=this['_getSecondPointerPosition'](aD),aF=aD['pageX']-aE['x'],aG=aD['pageY']-aE['y'],aH=Math['sqrt'](aF*aF+aG*aG);this['_dollyEnd'][ck(0x12d)](0x0,aH),this['_dollyDelta'][ck(0x12d)](0x0,Math['pow'](this[ck(0x138)]['y']/this[ck(0x14c)]['y'],this['zoomSpeed'])),this[ck(0x1ce)](this['_dollyDelta']['y']),this[ck(0x14c)]['copy'](this[ck(0x138)]);let aI=(aD['pageX']+aE['x'])*0.5,aJ=(aD[ck(0x144)]+aE['y'])*0.5;this['_updateZoomParameters'](aI,aJ);}[bU(0x190)](aD){const cl=bU;this[cl(0x179)]&&this[cl(0x137)](aD),this['enablePan']&&this['_handleTouchMovePan'](aD);}[bU(0x130)](aD){const cm=bU;this['enableZoom']&&this['_handleTouchMoveDolly'](aD),this['enableRotate']&&this[cm(0x18d)](aD);}['_addPointer'](aD){this['_pointers']['push'](aD['pointerId']);}['_removePointer'](aD){const cn=bU;delete this['_pointerPositions'][aD['pointerId']];for(let aE=0x0;aE<this['_pointers'][cn(0x124)];aE++)if(this['_pointers'][aE]==aD['pointerId']){this['_pointers']['splice'](aE,0x1);return;}}[bU(0x136)](aD){for(let aE=0x0;aE<this['_pointers']['length'];aE++)if(this['_pointers'][aE]==aD['pointerId'])return!0x0;return!0x1;}['_trackPointer'](aD){const co=bU;let aE=this['_pointerPositions'][aD['pointerId']];aE===void 0x0&&(aE=new aq(),this['_pointerPositions'][aD['pointerId']]=aE),aE[co(0x12d)](aD['pageX'],aD['pageY']);}[bU(0x1c4)](aD){let aE=aD['pointerId']===this['_pointers'][0x0]?this['_pointers'][0x1]:this['_pointers'][0x0];return this['_pointerPositions'][aE];}['_customWheelEvent'](aD){let aE=aD['deltaMode'],aF={'clientX':aD['clientX'],'clientY':aD['clientY'],'deltaY':aD['deltaY']};switch(aE){case 0x1:aF['deltaY']*=0x10;break;case 0x2:aF['deltaY']*=0x64;break;}return aD['ctrlKey']&&!this['_controlActive']&&(aF['deltaY']*=0xa),aF;}};function I(aD){const cp=bU;this['enabled']!==!0x1&&(this['_pointers'][cp(0x124)]===0x0&&(this['domElement']['setPointerCapture'](aD['pointerId']),this[cp(0x132)]['ownerDocument']['addEventListener']('pointermove',this['_onPointerMove']),this[cp(0x132)]['ownerDocument']['addEventListener'](cp(0x1a1),this['_onPointerUp'])),!this['_isTrackingPointer'](aD)&&(this['_addPointer'](aD),aD['pointerType']==='touch'?this['_onTouchStart'](aD):this['_onMouseDown'](aD),this['_cursorStyle']==='grab'&&(this[cp(0x132)]['style']['cursor']='grabbing')));}function L(aD){this['enabled']!==!0x1&&(aD['pointerType']==='touch'?this['_onTouchMove'](aD):this['_onMouseMove'](aD));}function R(aD){const cq=bU;switch(this['_removePointer'](aD),this['_pointers']['length']){case 0x0:this['domElement'][cq(0x120)](aD['pointerId']),this[cq(0x132)]['ownerDocument']['removeEventListener']('pointermove',this['_onPointerMove']),this['domElement']['ownerDocument']['removeEventListener']('pointerup',this['_onPointerUp']),this['dispatchEvent'](O),this[cq(0x139)]=P['NONE'],this['_cursorStyle']==='grab'&&(this['domElement'][cq(0x149)]['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 cr=bU;let aE;switch(aD['button']){case 0x0:aE=this['mouseButtons']['LEFT'];break;case 0x1:aE=this['mouseButtons']['MIDDLE'];break;case 0x2:aE=this['mouseButtons']['RIGHT'];break;default:aE=-0x1;}switch(aE){case a6['DOLLY']:if(this['enableZoom']===!0x1)return;this['_handleMouseDownDolly'](aD),this[cr(0x139)]=P['DOLLY'];break;case a6[cr(0x12e)]:if(aD['ctrlKey']||aD['metaKey']||aD['shiftKey']){if(this['enablePan']===!0x1)return;this['_handleMouseDownPan'](aD),this['state']=P['PAN'];}else{if(this['enableRotate']===!0x1)return;this['_handleMouseDownRotate'](aD),this['state']=P['ROTATE'];}break;case a6['PAN']:if(aD[cr(0x199)]||aD[cr(0x19a)]||aD['shiftKey']){if(this['enableRotate']===!0x1)return;this['_handleMouseDownRotate'](aD),this['state']=P['ROTATE'];}else{if(this['enablePan']===!0x1)return;this['_handleMouseDownPan'](aD),this['state']=P[cr(0x187)];}break;default:this['state']=P['NONE'];}this[cr(0x139)]!==P[cr(0x160)]&&this['dispatchEvent'](D);}function B(aD){const cs=bU;switch(this['state']){case P['ROTATE']:if(this['enableRotate']===!0x1)return;this['_handleMouseMoveRotate'](aD);break;case P[cs(0x1b1)]:if(this['enableZoom']===!0x1)return;this['_handleMouseMoveDolly'](aD);break;case P['PAN']:if(this['enablePan']===!0x1)return;this['_handleMouseMovePan'](aD);break;}}function V(aD){const ct=bU;this['enabled']===!0x1||this['enableZoom']===!0x1||this['state']!==P[ct(0x160)]||(aD['preventDefault'](),this['dispatchEvent'](D),this['_handleMouseWheel'](this['_customWheelEvent'](aD)),this['dispatchEvent'](O));}function H(aD){this['enabled']!==!0x1&&this['_handleKeyDown'](aD);}function U(aD){const cu=bU;switch(this['_trackPointer'](aD),this['_pointers'][cu(0x124)]){case 0x1:switch(this['touches'][cu(0x1c5)]){case a3['ROTATE']:if(this['enableRotate']===!0x1)return;this['_handleTouchStartRotate'](aD),this['state']=P[cu(0x198)];break;case a3['PAN']:if(this[cu(0x147)]===!0x1)return;this['_handleTouchStartPan'](aD),this['state']=P[cu(0x140)];break;default:this['state']=P['NONE'];}break;case 0x2:switch(this[cu(0x127)]['TWO']){case a3['DOLLY_PAN']:if(this['enableZoom']===!0x1&&this[cu(0x147)]===!0x1)return;this['_handleTouchStartDollyPan'](aD),this[cu(0x139)]=P[cu(0x1ca)];break;case a3['DOLLY_ROTATE']:if(this['enableZoom']===!0x1&&this['enableRotate']===!0x1)return;this['_handleTouchStartDollyRotate'](aD),this[cu(0x139)]=P['TOUCH_DOLLY_ROTATE'];break;default:this['state']=P['NONE'];}break;default:this['state']=P['NONE'];}this[cu(0x139)]!==P['NONE']&&this['dispatchEvent'](D);}function W(aD){const cv=bU;switch(this['_trackPointer'](aD),this['state']){case P[cv(0x198)]:if(this[cv(0x15d)]===!0x1)return;this['_handleTouchMoveRotate'](aD),this[cv(0x177)]();break;case P['TOUCH_PAN']:if(this[cv(0x147)]===!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){const cw=bU;this['enabled']!==!0x1&&aD[cw(0x1af)]();}function K(aD){const cx=bU;aD[cx(0x19b)]==='Control'&&(this[cx(0x156)]=!0x0,this['domElement']['getRootNode']()['addEventListener']('keyup',this['_interceptControlUp'],{'passive':!0x0,'capture':!0x0}));}function q(aD){const cy=bU;aD['key']===cy(0x19c)&&(this['_controlActive']=!0x1,this['domElement']['getRootNode']()[cy(0x195)]('keyup',this['_interceptControlUp'],{'passive':!0x0,'capture':!0x0}));}var ge={'class':bU(0x15f)},_e={'class':'model-toolbar'},ve={'class':bU(0x19e)},ye={'class':'model-meta'},be={'class':bU(0x171)},xe={'key':0x0,'class':'model-state'},Se={'key':0x1,'class':bU(0x1cd)},J=Z(au({'__name':'ModelViewer','props':{'data':{},'type':{},'sourceUrl':{}},'setup'(aD){const cz=bU;let aE=aD,aF=aA(null),aG=aA('loading'),aH=aA(''),aI=aA(cz(0x182)),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 cA=cz;if(!aE['sourceUrl'])return'';try{return new URL('.',aE['sourceUrl'])['href'];}catch(bH){let bI=aE[cA(0x1b8)]['split'](/[?#]/)[0x0]||aE['sourceUrl'],bJ=bI['lastIndexOf']('/');return bJ>=0x0?bI['slice'](0x0,bJ+0x1):'';}},b3=bH=>bH instanceof Error?bH['message']:typeof bH=='string'?bH:JSON[cz(0x1c9)](bH),b4=()=>{const cB=cz;let bH=aF['value'];if(!bH)return!0x1;if(aN||(aN=new al({'antialias':!0x0,'alpha':!0x1,'canvas':bH,'powerPreference':'high-performance'}),aN[cB(0x145)](Math[cB(0x1b4)](window['devicePixelRatio']||0x1,0x2)),aN['outputColorSpace']=am,aN['setClearColor'](0xf8fafc,0x1)),!aO){aO=new a5(),aO[cB(0x1b9)]=new ai(0xf8fafc);let bI=new a1(0xffffff,0xd7dee8,2.4);aO[cB(0x12b)](bI);let bJ=new an(0xffffff,2.2);bJ[cB(0x18a)]['set'](0x8,0xa,0x8),aO['add'](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[cB(0x12b)](aS),aT=new a9(0x3),aO['add'](aT);}return aP||(aP=new aj(0x2d,0x1,0.01,0x186a0),aP['position'][cB(0x12d)](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=>{const cC=cz;(Array[cC(0x12a)](bH)?bH:[bH])[cC(0x16f)](bI=>bI['dispose']());},b6=bH=>{bH['traverse'](bI=>{const cD=X;let bJ=bI,bK=bI;bJ[cD(0x129)]&&bJ['geometry'][cD(0x169)](),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 cE=X;var bP;(bP=bO['animations'])!=null&&bP['length']&&(aX=new af(bO['scene']),bO['animations'][cE(0x16f)](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(){return bH['apply'](this,arguments);};}()),bb=(function(){var bH=t(function*(){const cF=X;let {STLLoader:bI}=yield import('./STLLoader.js'),bJ=new bI()['parse'](aE['data']);return bJ[cF(0x1a6)](),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(){return bH['apply'](this,arguments);};}()),bd=(function(){var bH=t(function*(){const cG=X;var bI;let {FBXLoader:bJ}=yield import('./FBXLoader.js'),bK=new bJ()[cG(0x1cb)](aE['data'],b2());return(bI=bK['animations'])!=null&&bI['length']&&(aX=new af(bK),bK['animations']['forEach'](bL=>aX==null?void 0x0:aX['clipAction'](bL)['play']())),bK;});return function(){return bH['apply'](this,arguments);};}()),bf=(function(){var bH=t(function*(){let {ColladaLoader:bI}=yield import('./ColladaLoader.js');return new bI()['parse'](b8(),b2())['scene'];});return function(){const cH=X;return bH[cH(0x1a4)](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*(){const cI=X;let {AMFLoader:bI}=yield import('./AMFLoader.js');return new bI()['parse'](aE[cI(0x19d)]);});return function(){return bH['apply'](this,arguments);};}()),bj=(function(){var bH=t(function*(){const cJ=X;let {USDLoader:bI}=yield import('./USDLoader.js');return new bI()[cJ(0x1cb)](aE[cJ(0x19d)]);});return function(){return bH['apply'](this,arguments);};}()),bk=(function(){var bH=t(function*(){let {KMZLoader:bI}=yield import('./KMZLoader.js');return new bI()['parse'](aE['data'])['scene'];});return function(){return bH['apply'](this,arguments);};}()),bl=bH=>{const cK=cz;let bI=bH['toUpperCase']();throw bH===cK(0x12c)?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(){const cL=X;return bH[cL(0x1a4)](this,arguments);};}()),bn=(function(){var bH=t(function*(){const cM=X;let {VRMLLoader:bI}=yield import('./VRMLLoader.js');return new bI()[cM(0x1cb)](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 cN=X;let {VTKLoader:bI}=yield import('./VTKLoader.js'),bJ=new bI()['parse'](aE[cN(0x19d)]);return bJ[cN(0x1a6)](),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=>{const cO=cz;bH[cO(0x18c)](bI=>{const cP=cO;let bJ=bI;bJ[cP(0x1cf)]&&!bJ['material']&&(bJ['material']=bq()),bJ['isMesh']&&bJ['material']&&(Array['isArray'](bJ['material'])?bJ['material']:[bJ['material']])['forEach'](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 cQ=cz;let {meshes:bI,points:bJ}=bt(bH),bK=[];bI&&bK['push'](bI+'\x20个网格'),bJ&&bK['push'](bJ+'\x20个点云'),aI['value']=bK['length']?bK['join'](','):cQ(0x197);},bv=bH=>{const cR=cz;let bI=new ak()['setFromObject'](bH);if(bI[cR(0x13d)]())return{'center':new a0(),'size':new a0(0x4,0x4,0x4)};let bJ=bI['getCenter'](new a0()),bK=bI[cR(0x189)](new a0());return bH['position']['sub'](bJ),{'center':new a0(),'size':bK};},bw=()=>{const cS=cz;if(!aR||!aP||!aQ)return;let bH=new ak()['setFromObject'](aR),bI=bH['getSize'](new a0()),bJ=bH[cS(0x1ab)](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[cS(0x16e)](bK/0x3e8,0.01),aP['far']=Math['max'](bK*0x3e8,0x3e8),aP['position'][cS(0x1a3)](bJ)[cS(0x12b)](new a0(bK,bK*0.62,bK)),aP['updateProjectionMatrix'](),aQ['target'][cS(0x1a3)](bJ),aQ['update']();},bx=(function(){var bH=t(function*(bI){if(!aO)return;b7(),bs(bI);let {size:bJ}=bv(bI);aR=bI,aO['add'](bI),bw(),bu(bI);let bK=Math['max'](bJ['x'],bJ['y'],bJ['z'],0x1);aS&&aS['scale']['setScalar'](Math['max'](bK/0xa,0x1));});return function(bI){return bH['apply'](this,arguments);};}()),by=(function(){var bH=t(function*(){const cT=X;let bI=++aW;if(aG['value']=cT(0x196),aH['value']='',aI['value']=cT(0x182),b4())try{let bJ=yield bz(b1());if(bI!==aW){b6(bJ);return;}yield av(),yield bx(bJ),aG[cT(0x154)]='ready';}catch(bK){if(bI!==aW)return;bK instanceof b0||console[cT(0x1cc)](bK),aG['value']='error',aH['value']=b3(bK)||aE['type']['toUpperCase']()+'\x20模型解析失败';}});return function(){return bH['apply'](this,arguments);};}()),bz=bH=>{const cU=cz;switch(bH){case'glb':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 cU(0x183):return bh();case cU(0x1b7):return bi();case cU(0x186):case cU(0x167):case'usdc':case'usdz':return bj();case cU(0x1b6):return bk();case cU(0x1c6):case'stp':case'iges':case'igs':case'ifc':case cU(0x164):return bl(bH);case cU(0x14f):return bm();case cU(0x125):case cU(0x11d):return bn();case'xyz':return bo();case'vtk':case'vtp':return bp();default:throw Error('暂不支持\x20.'+bH+'\x20模型格式');}},bA=()=>{const cV=cz;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['height']));aN[cV(0x165)](bJ,bK,!0x1),aP[cV(0x184)]=bJ/bK,aP['updateProjectionMatrix']();},bB=bH=>{if(!aN||!aO||!aP||!aQ)return;aQ['autoRotate']=aJ['value'],aQ['update'](),aY['update'](bH);let bI=aY['getDelta']();aX==null||aX['update'](bI),aN['render'](aO,aP),aV=requestAnimationFrame(bB);},bC=()=>{aR&&bs(aR);},bD=()=>{aS&&(aS['visible']=aL['value']),aT&&(aT['visible']=aM['value']);},bE=()=>{const cW=cz;aK['value']=!aK[cW(0x154)],bC();},bF=()=>{aL['value']=!aL['value'],bD();},bG=()=>{const cX=cz;aM[cX(0x154)]=!aM['value'],bD();};return ay(()=>{const cY=cz;b4()&&(aY[cY(0x1a7)](document),aU=new ResizeObserver(bA),aF['value']&&aU['observe'](aF['value']),bB(),by());}),ax(()=>{const cZ=cz;aW+=0x1,cancelAnimationFrame(aV),aU==null||aU[cZ(0x1c1)](),aU=null,b7(),aQ==null||aQ[cZ(0x169)](),aQ=null,aN==null||aN['dispose'](),aN=null,aY['dispose'](),aY=new a2(),aO=null,aP=null,aS=null,aT=null;}),aC(()=>[aE['data'],aE['type'],aE['sourceUrl']],()=>{by();}),(bH,bI)=>(az(),as(cz(0x170),ge,[at('div',_e,[at('div',ve,[at('button',{'type':'button','onClick':bw},'适配'),at('button',{'type':cz(0x1bc),'class':aw({'active':aJ['value']}),'onClick':bI[0x0]||(bI[0x0]=bJ=>aJ['value']=!aJ['value'])},'旋转',0x2),at(cz(0x1bc),{'type':'button','class':aw({'active':aK[cz(0x154)]}),'onClick':bE},'线框',0x2),at('button',{'type':'button','class':aw({'active':aL['value']}),'onClick':bF},'网格',0x2),at('button',{'type':cz(0x1bc),'class':aw({'active':aM['value']}),'onClick':bG},'坐标',0x2)]),at('div',ye,[at(cz(0x126),null,aB(aD['type']['toUpperCase']()),0x1),at('span',null,aB(aI['value']),0x1)])]),at('div',be,[at('canvas',{'ref_key':'canvas','ref':aF},null,0x200),aG['value']===cz(0x196)?(az(),as(cz(0x170),xe,cz(0x15c))):aG['value']==='error'?(az(),as('div',Se,[bI[0x1]||(bI[0x1]=at('strong',null,'模型解析失败',-0x1)),at('span',null,aB(aH['value']),0x1)])):ar('',!0x0)])]));}}),[['__scopeId','data-v-9d2e23df']]);function X(a,b){a=a-0x11c;const c=Q();let d=c[a];return d;}export{J as default};
|
|
1
|
+
const bS=X;(function(aD,aE){const bR=X,aF=aD();while(!![]){try{const aG=-parseInt(bR(0x223))/0x1*(parseInt(bR(0x1cf))/0x2)+parseInt(bR(0x1eb))/0x3+parseInt(bR(0x25d))/0x4*(-parseInt(bR(0x20b))/0x5)+parseInt(bR(0x275))/0x6+parseInt(bR(0x240))/0x7*(-parseInt(bR(0x1e8))/0x8)+-parseInt(bR(0x21a))/0x9*(parseInt(bR(0x245))/0xa)+-parseInt(bR(0x27a))/0xb*(-parseInt(bR(0x274))/0xc);if(aG===aE)break;else aF['push'](aF['shift']());}catch(aH){aF['push'](aF['shift']());}}}(Q,0xcb591));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':bS(0x206)},k=new ao(),A=new ah(),j=Math[bS(0x1f0)](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[bT(0x1ce)]=P['NONE'],this['target']=new a0(),this['cursor']=new a0(),this[bT(0x254)]=0x0,this['maxDistance']=Infinity,this['minZoom']=0x0,this['maxZoom']=Infinity,this['minTargetRadius']=0x0,this[bT(0x26a)]=Infinity,this['minPolarAngle']=0x0,this['maxPolarAngle']=Math['PI'],this['minAzimuthAngle']=-Infinity,this['maxAzimuthAngle']=Infinity,this['enableDamping']=!0x1,this['dampingFactor']=0.05,this['enableZoom']=!0x0,this['zoomSpeed']=0x1,this['enableRotate']=!0x0,this['rotateSpeed']=0x1,this['keyRotateSpeed']=0x1,this[bT(0x1e6)]=!0x0,this[bT(0x1d3)]=0x1,this[bT(0x260)]=!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['touches']={'ONE':a3['ROTATE'],'TWO':a3['DOLLY_PAN']},this['target0']=this[bT(0x23a)]['clone'](),this['position0']=this['object']['position']['clone'](),this['zoom0']=this['object']['zoom'],this['_cursorStyle']=bT(0x1f5),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['_quatInverse']=this['_quat']['clone']()['invert'](),this['_spherical']=new ag(),this['_sphericalDelta']=new ag(),this['_scale']=0x1,this['_panOffset']=new a0(),this['_rotateStart']=new aq(),this['_rotateEnd']=new aq(),this['_rotateDelta']=new aq(),this[bT(0x203)]=new aq(),this['_panEnd']=new aq(),this[bT(0x262)]=new aq(),this[bT(0x1ee)]=new aq(),this[bT(0x1cc)]=new aq(),this[bT(0x215)]=new aq(),this[bT(0x225)]=new a0(),this['_mouse']=new aq(),this['_performCursorZoom']=!0x1,this['_pointers']=[],this['_pointerPositions']={},this['_controlActive']=!0x1,this['_onPointerMove']=L['bind'](this),this[bT(0x241)]=I['bind'](this),this['_onPointerUp']=R['bind'](this),this[bT(0x227)]=G[bT(0x268)](this),this['_onMouseWheel']=V['bind'](this),this['_onKeyDown']=H['bind'](this),this['_onTouchStart']=U['bind'](this),this['_onTouchMove']=W['bind'](this),this[bT(0x22e)]=z['bind'](this),this[bT(0x21b)]=B[bT(0x268)](this),this['_interceptControlDown']=K[bT(0x268)](this),this['_interceptControlUp']=q[bT(0x268)](this),this['domElement']!==null&&this[bT(0x211)](this['domElement']),this['update']();}set['cursorStyle'](aD){this['_cursorStyle']=aD,aD==='grab'?this['domElement']['style']['cursor']='grab':this['domElement']['style']['cursor']='auto';}get['cursorStyle'](){return this['_cursorStyle'];}['connect'](aD){const bU=bS;super['connect'](aD),this['domElement']['addEventListener'](bU(0x24f),this[bU(0x241)]),this[bU(0x210)]['addEventListener']('pointercancel',this['_onPointerUp']),this[bU(0x210)]['addEventListener']('contextmenu',this['_onContextMenu']),this[bU(0x210)][bU(0x1df)](bU(0x204),this['_onMouseWheel'],{'passive':!0x1}),this['domElement']['getRootNode']()['addEventListener']('keydown',this['_interceptControlDown'],{'passive':!0x0,'capture':!0x0}),this[bU(0x210)]['style']['touchAction']='none';}['disconnect'](){const bV=bS;this[bV(0x210)][bV(0x255)](bV(0x24f),this['_onPointerDown']),this['domElement'][bV(0x24d)]['removeEventListener']('pointermove',this['_onPointerMove']),this['domElement']['ownerDocument']['removeEventListener'](bV(0x1e1),this['_onPointerUp']),this[bV(0x210)]['removeEventListener']('pointercancel',this[bV(0x1d2)]),this['domElement'][bV(0x255)](bV(0x204),this['_onMouseWheel']),this[bV(0x210)][bV(0x255)](bV(0x202),this['_onContextMenu']),this[bV(0x272)](),this['domElement']['getRootNode']()['removeEventListener']('keydown',this['_interceptControlDown'],{'capture':!0x0}),this[bV(0x210)][bV(0x24c)][bV(0x220)]='';}['dispose'](){this['disconnect']();}['getPolarAngle'](){return this['_spherical']['phi'];}['getAzimuthalAngle'](){const bW=bS;return this[bW(0x20d)]['theta'];}['getDistance'](){const bX=bS;return this['object'][bX(0x1e5)]['distanceTo'](this['target']);}['listenToKeyEvents'](aD){aD['addEventListener']('keydown',this['_onKeyDown']),this['_domElementKeyEvents']=aD;}['stopListenToKeyEvents'](){const bY=bS;this['_domElementKeyEvents']!==null&&(this['_domElementKeyEvents']['removeEventListener'](bY(0x22f),this['_onKeyDown']),this[bY(0x27b)]=null);}['saveState'](){const bZ=bS;this['target0']['copy'](this['target']),this[bZ(0x258)]['copy'](this['object']['position']),this['zoom0']=this['object']['zoom'];}['reset'](){const c0=bS;this['target']['copy'](this['target0']),this['object']['position']['copy'](this['position0']),this['object'][c0(0x221)]=this['zoom0'],this['object']['updateProjectionMatrix'](),this['dispatchEvent'](E),this[c0(0x257)](),this['state']=P['NONE'];}['pan'](aD,aE){this['_pan'](aD,aE),this['update']();}['dollyIn'](aD){this['_dollyIn'](aD),this['update']();}['dollyOut'](aD){const c1=bS;this['_dollyOut'](aD),this[c1(0x257)]();}['rotateLeft'](aD){this['_rotateLeft'](aD),this['update']();}['rotateUp'](aD){this['_rotateUp'](aD),this['update']();}['update'](aD=null){const c2=bS;let aE=this['object']['position'];M['copy'](aE)[c2(0x1f1)](this['target']),M['applyQuaternion'](this['_quat']),this['_spherical']['setFromVector3'](M),this['autoRotate']&&this['state']===P[c2(0x214)]&&this['_rotateLeft'](this['_getAutoRotationAngle'](aD)),this['enableDamping']?(this['_spherical']['theta']+=this['_sphericalDelta']['theta']*this['dampingFactor'],this['_spherical'][c2(0x263)]+=this[c2(0x279)]['phi']*this['dampingFactor']):(this['_spherical']['theta']+=this['_sphericalDelta']['theta'],this[c2(0x20d)]['phi']+=this[c2(0x279)]['phi']);let aF=this[c2(0x25f)],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'][c2(0x232)]=Math['max'](aF,Math['min'](aG,this[c2(0x20d)][c2(0x232)])):this['_spherical']['theta']=this['_spherical'][c2(0x232)]>(aF+aG)/0x2?Math['max'](aF,this['_spherical']['theta']):Math[c2(0x1fb)](aG,this[c2(0x20d)]['theta'])),this['_spherical']['phi']=Math[c2(0x261)](this['minPolarAngle'],Math[c2(0x1fb)](this['maxPolarAngle'],this[c2(0x20d)][c2(0x263)])),this['_spherical']['makeSafe'](),this['enableDamping']===!0x0?this[c2(0x23a)][c2(0x1ff)](this[c2(0x276)],this['dampingFactor']):this[c2(0x23a)][c2(0x229)](this['_panOffset']),this['target']['sub'](this['cursor']),this['target']['clampLength'](this['minTargetRadius'],this['maxTargetRadius']),this['target']['add'](this[c2(0x23d)]);let aH=!0x1;if(this['zoomToCursor']&&this['_performCursorZoom']||this['object']['isOrthographicCamera'])this['_spherical']['radius']=this[c2(0x216)](this[c2(0x20d)][c2(0x233)]);else{let aI=this['_spherical']['radius'];this['_spherical']['radius']=this['_clampDistance'](this['_spherical']['radius']*this['_scale']),aH=aI!=this['_spherical'][c2(0x233)];}if(M['setFromSpherical'](this['_spherical']),M['applyQuaternion'](this['_quatInverse']),aE[c2(0x1f4)](this['target'])['add'](M),this['object']['lookAt'](this['target']),this[c2(0x236)]===!0x0?(this['_sphericalDelta']['theta']*=0x1-this['dampingFactor'],this['_sphericalDelta']['phi']*=0x1-this['dampingFactor'],this['_panOffset']['multiplyScalar'](0x1-this['dampingFactor'])):(this['_sphericalDelta'][c2(0x26e)](0x0,0x0,0x0),this['_panOffset']['set'](0x0,0x0,0x0)),this['zoomToCursor']&&this['_performCursorZoom']){let aJ=null;if(this['object'][c2(0x200)]){let aK=M['length']();aJ=this['_clampDistance'](aK*this['_scale']);let aL=aK-aJ;this[c2(0x1fd)]['position'][c2(0x1ff)](this['_dollyDirection'],aL),this['object'][c2(0x1dd)](),aH=!!aL;}else{if(this['object'][c2(0x26d)]){let aM=new a0(this['_mouse']['x'],this['_mouse']['y'],0x0);aM['unproject'](this[c2(0x1fd)]);let aN=this['object'][c2(0x221)];this['object']['zoom']=Math['max'](this[c2(0x20c)],Math['min'](this['maxZoom'],this['object']['zoom']/this['_scale'])),this['object']['updateProjectionMatrix'](),aH=aN!==this['object'][c2(0x221)];let aO=new a0(this['_mouse']['x'],this['_mouse']['y'],0x0);aO['unproject'](this[c2(0x1fd)]),this['object']['position']['sub'](aO)['add'](aM),this[c2(0x1fd)]['updateMatrixWorld'](),aJ=M['length']();}else console['warn'](c2(0x218)),this['zoomToCursor']=!0x1;}aJ!==null&&(this['screenSpacePanning']?this['target'][c2(0x26e)](0x0,0x0,-0x1)[c2(0x243)](this['object']['matrix'])['multiplyScalar'](aJ)['add'](this['object']['position']):(k['origin']['copy'](this[c2(0x1fd)]['position']),k['direction']['set'](0x0,0x0,-0x1)['transformDirection'](this[c2(0x1fd)]['matrix']),Math['abs'](this['object']['up']['dot'](k['direction']))<j?this['object'][c2(0x238)](this['target']):(A['setFromNormalAndCoplanarPoint'](this['object']['up'],this[c2(0x23a)]),k[c2(0x1d0)](A,this['target']))));}else{if(this[c2(0x1fd)]['isOrthographicCamera']){let aP=this['object']['zoom'];this['object']['zoom']=Math[c2(0x261)](this[c2(0x20c)],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[c2(0x201)]['distanceToSquared'](this['object']['position'])>F||0x8*(0x1-this['_lastQuaternion'][c2(0x209)](this['object'][c2(0x24e)]))>F||this['_lastTargetPosition'][c2(0x1d4)](this[c2(0x23a)])>F?(this['dispatchEvent'](E),this['_lastPosition']['copy'](this[c2(0x1fd)][c2(0x1e5)]),this['_lastQuaternion']['copy'](this['object']['quaternion']),this['_lastTargetPosition']['copy'](this[c2(0x23a)]),!0x0):!0x1;}[bS(0x24a)](aD){return aD===null?N/0x3c/0x3c*this['autoRotateSpeed']:N/0x3c*this['autoRotateSpeed']*aD;}[bS(0x23e)](aD){let aE=Math['abs'](aD*0.01);return Math['pow'](0.95,this['zoomSpeed']*aE);}[bS(0x22d)](aD){const c3=bS;this['_sphericalDelta'][c3(0x232)]-=aD;}['_rotateUp'](aD){this['_sphericalDelta']['phi']-=aD;}['_panLeft'](aD,aE){M['setFromMatrixColumn'](aE,0x0),M['multiplyScalar'](-aD),this['_panOffset']['add'](M);}['_panUp'](aD,aE){const c4=bS;this['screenSpacePanning']===!0x0?M['setFromMatrixColumn'](aE,0x1):(M[c4(0x277)](aE,0x0),M['crossVectors'](this['object']['up'],M)),M['multiplyScalar'](aD),this['_panOffset']['add'](M);}[bS(0x1f8)](aD,aE){const c5=bS;let aF=this['domElement'];if(this[c5(0x1fd)][c5(0x200)]){let aG=this['object']['position'];M['copy'](aG)['sub'](this['target']);let aH=M['length']();aH*=Math['tan'](this['object']['fov']/0x2*Math['PI']/0xb4),this[c5(0x1d1)](0x2*aD*aH/aF[c5(0x228)],this['object'][c5(0x25a)]),this['_panUp'](0x2*aE*aH/aF['clientHeight'],this['object']['matrix']);}else this['object']['isOrthographicCamera']?(this['_panLeft'](aD*(this['object']['right']-this['object']['left'])/this['object']['zoom']/aF['clientWidth'],this[c5(0x1fd)]['matrix']),this['_panUp'](aE*(this['object']['top']-this['object'][c5(0x23c)])/this['object']['zoom']/aF[c5(0x228)],this['object']['matrix'])):(console['warn']('WARNING:\x20OrbitControls.js\x20encountered\x20an\x20unknown\x20camera\x20type\x20-\x20pan\x20disabled.'),this['enablePan']=!0x1);}['_dollyOut'](aD){const c6=bS;this[c6(0x1fd)]['isPerspectiveCamera']||this['object']['isOrthographicCamera']?this[c6(0x246)]/=aD:(console['warn'](c6(0x266)),this[c6(0x20a)]=!0x1);}['_dollyIn'](aD){const c7=bS;this['object'][c7(0x200)]||this['object'][c7(0x26d)]?this['_scale']*=aD:(console[c7(0x1cb)]('WARNING:\x20OrbitControls.js\x20encountered\x20an\x20unknown\x20camera\x20type\x20-\x20dolly/zoom\x20disabled.'),this['enableZoom']=!0x1);}['_updateZoomParameters'](aD,aE){const c8=bS;if(!this['zoomToCursor'])return;this['_performCursorZoom']=!0x0;let aF=this['domElement'][c8(0x25c)](),aG=aD-aF['left'],aH=aE-aF['top'],aI=aF['width'],aJ=aF['height'];this['_mouse']['x']=aG/aI*0x2-0x1,this['_mouse']['y']=-(aH/aJ)*0x2+0x1,this['_dollyDirection']['set'](this['_mouse']['x'],this[c8(0x1e2)]['y'],0x1)['unproject'](this[c8(0x1fd)])['sub'](this['object']['position'])['normalize']();}[bS(0x216)](aD){const c9=bS;return Math['max'](this['minDistance'],Math['min'](this[c9(0x253)],aD));}[bS(0x278)](aD){const ca=bS;this[ca(0x247)][ca(0x26e)](aD['clientX'],aD[ca(0x242)]);}['_handleMouseDownDolly'](aD){const cb=bS;this[cb(0x1fc)](aD['clientX'],aD['clientX']),this['_dollyStart']['set'](aD['clientX'],aD['clientY']);}['_handleMouseDownPan'](aD){const cc=bS;this['_panStart']['set'](aD[cc(0x22a)],aD['clientY']);}['_handleMouseMoveRotate'](aD){const cd=bS;this['_rotateEnd']['set'](aD['clientX'],aD['clientY']),this[cd(0x24b)][cd(0x21e)](this['_rotateEnd'],this['_rotateStart'])['multiplyScalar'](this[cd(0x1db)]);let aE=this['domElement'];this['_rotateLeft'](N*this[cd(0x24b)]['x']/aE['clientHeight']),this['_rotateUp'](N*this[cd(0x24b)]['y']/aE[cd(0x228)]),this['_rotateStart']['copy'](this['_rotateEnd']),this[cd(0x257)]();}['_handleMouseMoveDolly'](aD){const cf=bS;this['_dollyEnd']['set'](aD['clientX'],aD['clientY']),this[cf(0x215)]['subVectors'](this['_dollyEnd'],this['_dollyStart']),this['_dollyDelta']['y']>0x0?this['_dollyOut'](this['_getZoomScale'](this[cf(0x215)]['y'])):this['_dollyDelta']['y']<0x0&&this['_dollyIn'](this['_getZoomScale'](this['_dollyDelta']['y'])),this['_dollyStart']['copy'](this['_dollyEnd']),this['update']();}[bS(0x1ea)](aD){const cg=bS;this['_panEnd']['set'](aD['clientX'],aD['clientY']),this['_panDelta']['subVectors'](this['_panEnd'],this['_panStart'])['multiplyScalar'](this['panSpeed']),this[cg(0x1f8)](this['_panDelta']['x'],this['_panDelta']['y']),this['_panStart']['copy'](this['_panEnd']),this['update']();}['_handleMouseWheel'](aD){const ch=bS;this[ch(0x1fc)](aD[ch(0x22a)],aD['clientY']),aD['deltaY']<0x0?this['_dollyIn'](this['_getZoomScale'](aD[ch(0x26f)])):aD['deltaY']>0x0&&this['_dollyOut'](this['_getZoomScale'](aD['deltaY'])),this['update']();}['_handleKeyDown'](aD){const ci=bS;let aE=!0x1;switch(aD['code']){case this['keys']['UP']:aD['ctrlKey']||aD['metaKey']||aD['shiftKey']?this[ci(0x267)]&&this['_rotateUp'](N*this['keyRotateSpeed']/this[ci(0x210)]['clientHeight']):this['enablePan']&&this['_pan'](0x0,this['keyPanSpeed']),aE=!0x0;break;case this[ci(0x1e9)]['BOTTOM']:aD['ctrlKey']||aD['metaKey']||aD[ci(0x231)]?this['enableRotate']&&this['_rotateUp'](-N*this[ci(0x20f)]/this['domElement'][ci(0x228)]):this['enablePan']&&this['_pan'](0x0,-this['keyPanSpeed']),aE=!0x0;break;case this['keys']['LEFT']:aD['ctrlKey']||aD['metaKey']||aD['shiftKey']?this['enableRotate']&&this['_rotateLeft'](N*this[ci(0x20f)]/this['domElement']['clientHeight']):this['enablePan']&&this['_pan'](this['keyPanSpeed'],0x0),aE=!0x0;break;case this['keys']['RIGHT']:aD['ctrlKey']||aD['metaKey']||aD['shiftKey']?this['enableRotate']&&this[ci(0x22d)](-N*this['keyRotateSpeed']/this[ci(0x210)]['clientHeight']):this['enablePan']&&this[ci(0x1f8)](-this['keyPanSpeed'],0x0),aE=!0x0;break;}aE&&(aD['preventDefault'](),this[ci(0x257)]());}['_handleTouchStartRotate'](aD){const cj=bS;if(this[cj(0x235)]['length']===0x1)this[cj(0x247)]['set'](aD['pageX'],aD['pageY']);else{let aE=this['_getSecondPointerPosition'](aD),aF=0.5*(aD['pageX']+aE['x']),aG=0.5*(aD['pageY']+aE['y']);this['_rotateStart']['set'](aF,aG);}}['_handleTouchStartPan'](aD){const ck=bS;if(this['_pointers']['length']===0x1)this['_panStart']['set'](aD['pageX'],aD[ck(0x1f6)]);else{let aE=this[ck(0x226)](aD),aF=0.5*(aD['pageX']+aE['x']),aG=0.5*(aD['pageY']+aE['y']);this['_panStart']['set'](aF,aG);}}[bS(0x1e3)](aD){const cl=bS;let aE=this['_getSecondPointerPosition'](aD),aF=aD['pageX']-aE['x'],aG=aD['pageY']-aE['y'],aH=Math[cl(0x23b)](aF*aF+aG*aG);this[cl(0x1ee)]['set'](0x0,aH);}['_handleTouchStartDollyPan'](aD){this['enableZoom']&&this['_handleTouchStartDolly'](aD),this['enablePan']&&this['_handleTouchStartPan'](aD);}['_handleTouchStartDollyRotate'](aD){const cm=bS;this[cm(0x20a)]&&this['_handleTouchStartDolly'](aD),this['enableRotate']&&this['_handleTouchStartRotate'](aD);}['_handleTouchMoveRotate'](aD){const cn=bS;if(this['_pointers']['length']==0x1)this[cn(0x265)]['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[cn(0x24b)]['subVectors'](this[cn(0x265)],this['_rotateStart'])['multiplyScalar'](this['rotateSpeed']);let aE=this[cn(0x210)];this['_rotateLeft'](N*this['_rotateDelta']['x']/aE['clientHeight']),this['_rotateUp'](N*this['_rotateDelta']['y']/aE['clientHeight']),this[cn(0x247)]['copy'](this[cn(0x265)]);}[bS(0x1f3)](aD){const co=bS;if(this['_pointers']['length']===0x1)this[co(0x1ef)]['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'][co(0x26e)](aF,aG);}this['_panDelta'][co(0x21e)](this['_panEnd'],this['_panStart'])['multiplyScalar'](this['panSpeed']),this['_pan'](this['_panDelta']['x'],this['_panDelta']['y']),this['_panStart']['copy'](this['_panEnd']);}['_handleTouchMoveDolly'](aD){const cp=bS;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(0x215)]['set'](0x0,Math['pow'](this['_dollyEnd']['y']/this[cp(0x1ee)]['y'],this['zoomSpeed'])),this['_dollyOut'](this['_dollyDelta']['y']),this['_dollyStart']['copy'](this[cp(0x1cc)]);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){this['enableZoom']&&this['_handleTouchMoveDolly'](aD),this['enableRotate']&&this['_handleTouchMoveRotate'](aD);}['_addPointer'](aD){const cq=bS;this['_pointers'][cq(0x237)](aD['pointerId']);}[bS(0x234)](aD){const cr=bS;delete this['_pointerPositions'][aD['pointerId']];for(let aE=0x0;aE<this[cr(0x235)]['length'];aE++)if(this['_pointers'][aE]==aD['pointerId']){this['_pointers']['splice'](aE,0x1);return;}}['_isTrackingPointer'](aD){const cs=bS;for(let aE=0x0;aE<this[cs(0x235)]['length'];aE++)if(this['_pointers'][aE]==aD['pointerId'])return!0x0;return!0x1;}['_trackPointer'](aD){const ct=bS;let aE=this[ct(0x1f2)][aD['pointerId']];aE===void 0x0&&(aE=new aq(),this['_pointerPositions'][aD[ct(0x25b)]]=aE),aE[ct(0x26e)](aD['pageX'],aD[ct(0x1f6)]);}['_getSecondPointerPosition'](aD){const cu=bS;let aE=aD[cu(0x25b)]===this['_pointers'][0x0]?this['_pointers'][0x1]:this['_pointers'][0x0];return this['_pointerPositions'][aE];}['_customWheelEvent'](aD){const cv=bS;let aE=aD['deltaMode'],aF={'clientX':aD[cv(0x22a)],'clientY':aD['clientY'],'deltaY':aD['deltaY']};switch(aE){case 0x1:aF['deltaY']*=0x10;break;case 0x2:aF['deltaY']*=0x64;break;}return aD['ctrlKey']&&!this['_controlActive']&&(aF[cv(0x26f)]*=0xa),aF;}};function I(aD){const cw=bS;this['enabled']!==!0x1&&(this['_pointers']['length']===0x0&&(this['domElement']['setPointerCapture'](aD['pointerId']),this['domElement']['ownerDocument']['addEventListener']('pointermove',this[cw(0x270)]),this['domElement']['ownerDocument']['addEventListener'](cw(0x1e1),this['_onPointerUp'])),!this[cw(0x248)](aD)&&(this['_addPointer'](aD),aD['pointerType']==='touch'?this['_onTouchStart'](aD):this['_onMouseDown'](aD),this['_cursorStyle']==='grab'&&(this[cw(0x210)]['style']['cursor']=cw(0x217))));}function L(aD){this['enabled']!==!0x1&&(aD['pointerType']==='touch'?this['_onTouchMove'](aD):this['_onMouseMove'](aD));}function R(aD){const cx=bS;switch(this['_removePointer'](aD),this['_pointers'][cx(0x252)]){case 0x0:this['domElement']['releasePointerCapture'](aD['pointerId']),this[cx(0x210)]['ownerDocument']['removeEventListener']('pointermove',this['_onPointerMove']),this['domElement']['ownerDocument']['removeEventListener']('pointerup',this['_onPointerUp']),this['dispatchEvent'](O),this['state']=P[cx(0x214)],this['_cursorStyle']==='grab'&&(this['domElement']['style'][cx(0x23d)]='grab');break;case 0x1:let aE=this[cx(0x235)][0x0],aF=this[cx(0x1f2)][aE];this[cx(0x1d5)]({'pointerId':aE,'pageX':aF['x'],'pageY':aF['y']});break;}}function z(aD){const cy=bS;let aE;switch(aD['button']){case 0x0:aE=this['mouseButtons']['LEFT'];break;case 0x1:aE=this['mouseButtons'][cy(0x208)];break;case 0x2:aE=this['mouseButtons'][cy(0x273)];break;default:aE=-0x1;}switch(aE){case a6['DOLLY']:if(this['enableZoom']===!0x1)return;this['_handleMouseDownDolly'](aD),this[cy(0x1ce)]=P['DOLLY'];break;case a6['ROTATE']:if(aD['ctrlKey']||aD['metaKey']||aD['shiftKey']){if(this[cy(0x1e6)]===!0x1)return;this['_handleMouseDownPan'](aD),this[cy(0x1ce)]=P['PAN'];}else{if(this['enableRotate']===!0x1)return;this['_handleMouseDownRotate'](aD),this['state']=P['ROTATE'];}break;case a6['PAN']:if(aD['ctrlKey']||aD['metaKey']||aD[cy(0x231)]){if(this['enableRotate']===!0x1)return;this['_handleMouseDownRotate'](aD),this['state']=P['ROTATE'];}else{if(this['enablePan']===!0x1)return;this['_handleMouseDownPan'](aD),this[cy(0x1ce)]=P['PAN'];}break;default:this['state']=P[cy(0x214)];}this['state']!==P['NONE']&&this['dispatchEvent'](D);}function B(aD){const cz=bS;switch(this[cz(0x1ce)]){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[cz(0x1e6)]===!0x1)return;this['_handleMouseMovePan'](aD);break;}}function V(aD){const cA=bS;this['enabled']===!0x1||this['enableZoom']===!0x1||this['state']!==P['NONE']||(aD[cA(0x1ec)](),this['dispatchEvent'](D),this['_handleMouseWheel'](this['_customWheelEvent'](aD)),this['dispatchEvent'](O));}function H(aD){this['enabled']!==!0x1&&this['_handleKeyDown'](aD);}function U(aD){const cB=bS;switch(this['_trackPointer'](aD),this['_pointers']['length']){case 0x1:switch(this[cB(0x21d)]['ONE']){case a3['ROTATE']:if(this['enableRotate']===!0x1)return;this['_handleTouchStartRotate'](aD),this['state']=P['TOUCH_ROTATE'];break;case a3['PAN']:if(this['enablePan']===!0x1)return;this['_handleTouchStartPan'](aD),this[cB(0x1ce)]=P['TOUCH_PAN'];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[cB(0x1cd)];break;case a3['DOLLY_ROTATE']:if(this[cB(0x20a)]===!0x1&&this['enableRotate']===!0x1)return;this['_handleTouchStartDollyRotate'](aD),this['state']=P['TOUCH_DOLLY_ROTATE'];break;default:this['state']=P[cB(0x214)];}break;default:this['state']=P['NONE'];}this[cB(0x1ce)]!==P['NONE']&&this['dispatchEvent'](D);}function W(aD){const cC=bS;switch(this['_trackPointer'](aD),this['state']){case P['TOUCH_ROTATE']:if(this['enableRotate']===!0x1)return;this['_handleTouchMoveRotate'](aD),this[cC(0x257)]();break;case P['TOUCH_PAN']:if(this[cC(0x1e6)]===!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[cC(0x257)]();break;default:this['state']=P['NONE'];}}function G(aD){const cD=bS;this['enabled']!==!0x1&&aD[cD(0x1ec)]();}function Q(){const d8=['38LzBDGF','strong','_dollyDirection','_getSecondPointerPosition','_onContextMenu','clientHeight','add','clientX','toLowerCase','floor','_rotateLeft','_onMouseDown','keydown','div','shiftKey','theta','radius','_removePointer','_pointers','enableDamping','push','lookAt','visible','target','sqrt','bottom','cursor','_getZoomScale','kmz','14UHCFnm','_onPointerDown','clientY','transformDirection','string','103160vlSBYH','_scale','_rotateStart','_isTrackingPointer','setScalar','_getAutoRotationAngle','_rotateDelta','style','ownerDocument','quaternion','pointerdown','dispose','_controlActive','length','maxDistance','minDistance','removeEventListener','getSize','update','position0','material','matrix','pointerId','getBoundingClientRect','975784DIBpAO','data-v-9d2e23df','minAzimuthAngle','screenSpacePanning','max','_panDelta','phi','wrl','_rotateEnd','WARNING:\x20OrbitControls.js\x20encountered\x20an\x20unknown\x20camera\x20type\x20-\x20dolly/zoom\x20disabled.','enableRotate','bind','forEach','maxTargetRadius','setPixelRatio','scene','isOrthographicCamera','set','deltaY','_onPointerMove','button','stopListenToKeyEvents','RIGHT','120gJgelJ','4422336ENvGdB','_panOffset','setFromMatrixColumn','_handleMouseDownRotate','_sphericalDelta','4985222MEvtEQ','_domElementKeyEvents','warn','_dollyEnd','TOUCH_DOLLY_PAN','state','36164hmBNsA','intersectPlane','_panLeft','_onPointerUp','panSpeed','distanceToSquared','_onTouchStart','message','3mf','wireframe','ply','model-toolbar','rotateSpeed','getRootNode','updateMatrixWorld','span','addEventListener','gltf','pointerup','_mouse','_handleTouchStartDolly','model-state\x20error','position','enablePan','devicePixelRatio','5801328tPXIyi','keys','_handleMouseMovePan','1033869WnaLoq','preventDefault','keyup','_dollyStart','_panEnd','cos','sub','_pointerPositions','_handleTouchMovePan','copy','auto','pageY','value','_pan','暂不支持\x20.','toUpperCase','min','_updateZoomParameters','object','autoRotate','addScaledVector','isPerspectiveCamera','_lastPosition','contextmenu','_panStart','wheel','step','end','animations','MIDDLE','dot','enableZoom','25vdpprR','minZoom','_spherical','data','keyRotateSpeed','domElement','connect','\x20模型格式','sourceUrl','NONE','_dollyDelta','_clampDistance','grabbing','WARNING:\x20OrbitControls.js\x20encountered\x20an\x20unknown\x20camera\x20type\x20-\x20zoom\x20to\x20cursor\x20disabled.','stl','1242XIYojS','_onMouseMove','parse','touches','subVectors','loading','touchAction','zoom','apply'];Q=function(){return d8;};return Q();}function K(aD){const cE=bS;aD['key']==='Control'&&(this[cE(0x251)]=!0x0,this['domElement'][cE(0x1dc)]()['addEventListener']('keyup',this['_interceptControlUp'],{'passive':!0x0,'capture':!0x0}));}function X(a,b){a=a-0x1cb;const c=Q();let d=c[a];return d;}function q(aD){const cF=bS;aD['key']==='Control'&&(this['_controlActive']=!0x1,this['domElement']['getRootNode']()['removeEventListener'](cF(0x1ed),this['_interceptControlUp'],{'passive':!0x0,'capture':!0x0}));}var ge={'class':'model-viewer'},_e={'class':bS(0x1da)},ve={'class':'model-actions'},ye={'class':'model-meta'},be={'class':'model-stage'},xe={'key':0x0,'class':'model-state'},Se={'key':0x1,'class':bS(0x1e4)},J=Z(au({'__name':'ModelViewer','props':{'data':{},'type':{},'sourceUrl':{}},'setup'(aD){const cG=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'][cG(0x22b)](),b2=()=>{const cH=cG;if(!aE[cH(0x213)])return'';try{return new URL('.',aE['sourceUrl'])['href'];}catch(bH){let bI=aE['sourceUrl']['split'](/[?#]/)[0x0]||aE['sourceUrl'],bJ=bI['lastIndexOf']('/');return bJ>=0x0?bI['slice'](0x0,bJ+0x1):'';}},b3=bH=>bH instanceof Error?bH[cG(0x1d6)]:typeof bH==cG(0x244)?bH:JSON['stringify'](bH),b4=()=>{const cI=cG;let bH=aF['value'];if(!bH)return!0x1;if(aN||(aN=new al({'antialias':!0x0,'alpha':!0x1,'canvas':bH,'powerPreference':'high-performance'}),aN[cI(0x26b)](Math['min'](window[cI(0x1e7)]||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[cI(0x229)](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['position']['set'](-0x7,0x5,-0x4),aO[cI(0x229)](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['domElement']),aQ['enableDamping']=!0x0,aQ['dampingFactor']=0.08,aQ['screenSpacePanning']=!0x0,aQ['autoRotateSpeed']=1.2),bD(),bA(),!0x0;},b5=bH=>{(Array['isArray'](bH)?bH:[bH])['forEach'](bI=>bI['dispose']());},b6=bH=>{bH['traverse'](bI=>{const cJ=X;let bJ=bI,bK=bI;bJ['geometry']&&bJ['geometry'][cJ(0x250)](),bJ['material']&&b5(bJ['material']),bK[cJ(0x259)]&&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 cK=X;var bP;(bP=bO['animations'])!=null&&bP['length']&&(aX=new af(bO[cK(0x26c)]),bO['animations']['forEach'](bQ=>aX==null?void 0x0:aX['clipAction'](bQ)['play']())),bM(bO[cK(0x26c)]);},bN);});});return function(){return bH['apply'](this,arguments);};}()),ba=(function(){var bH=t(function*(){let {OBJLoader:bI}=yield import('./OBJLoader.js');return new bI()['parse'](b8());});return function(){return bH['apply'](this,arguments);};}()),bb=(function(){var bH=t(function*(){let {STLLoader:bI}=yield import('./STLLoader.js'),bJ=new bI()['parse'](aE['data']);return bJ['computeVertexNormals'](),new ab(bJ,bq());});return function(){const cL=X;return bH[cL(0x222)](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(){return bH['apply'](this,arguments);};}()),bd=(function(){var bH=t(function*(){const cM=X;var bI;let {FBXLoader:bJ}=yield import('./FBXLoader.js'),bK=new bJ()['parse'](aE['data'],b2());return(bI=bK['animations'])!=null&&bI['length']&&(aX=new af(bK),bK[cM(0x207)][cM(0x269)](bL=>aX==null?void 0x0:aX['clipAction'](bL)['play']())),bK;});return function(){const cN=X;return bH[cN(0x222)](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(){const cO=X;return bH[cO(0x222)](this,arguments);};}()),bh=(function(){var bH=t(function*(){const cP=X;let {ThreeMFLoader:bI}=yield import('./3MFLoader.js');return new bI()['parse'](aE[cP(0x20e)]);});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 cQ=X;let {USDLoader:bI}=yield import('./USDLoader.js');return new bI()['parse'](aE[cQ(0x20e)]);});return function(){return bH['apply'](this,arguments);};}()),bk=(function(){var bH=t(function*(){let {KMZLoader:bI}=yield import('./KMZLoader.js');return new bI()['parse'](aE['data'])['scene'];});return function(){return bH['apply'](this,arguments);};}()),bl=bH=>{const cR=cG;let bI=bH[cR(0x1fa)]();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*(){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*(){const cS=X;let {VRMLLoader:bI}=yield import('./VRMLLoader.js');return new bI()[cS(0x21c)](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 cT=X;let bJ=bI;bJ['isMesh']&&!bJ[cT(0x259)]&&(bJ[cT(0x259)]=bq()),bJ['isMesh']&&bJ['material']&&(Array['isArray'](bJ['material'])?bJ['material']:[bJ['material']])['forEach'](bK=>{const cU=cT;'wireframe'in bK&&(bK[cU(0x1d8)]=aK[cU(0x1f7)]),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 cV=cG;let {meshes:bI,points:bJ}=bt(bH),bK=[];bI&&bK[cV(0x237)](bI+'\x20个网格'),bJ&&bK['push'](bJ+'\x20个点云'),aI['value']=bK['length']?bK['join'](','):'模型已加载';},bv=bH=>{const cW=cG;let bI=new ak()['setFromObject'](bH);if(bI['isEmpty']())return{'center':new a0(),'size':new a0(0x4,0x4,0x4)};let bJ=bI['getCenter'](new a0()),bK=bI[cW(0x256)](new a0());return bH['position']['sub'](bJ),{'center':new a0(),'size':bK};},bw=()=>{const cX=cG;if(!aR||!aP||!aQ)return;let bH=new ak()['setFromObject'](aR),bI=bH['getSize'](new a0()),bJ=bH['getCenter'](new a0()),bK=Math['max'](bI['x'],bI['y'],bI['z'],0x1)/(0x2*Math['tan'](a7['degToRad'](aP['fov']/0x2)))*1.65;aP['near']=Math[cX(0x261)](bK/0x3e8,0.01),aP['far']=Math[cX(0x261)](bK*0x3e8,0x3e8),aP['position']['copy'](bJ)[cX(0x229)](new a0(bK,bK*0.62,bK)),aP['updateProjectionMatrix'](),aQ['target']['copy'](bJ),aQ['update']();},bx=(function(){var bH=t(function*(bI){const cY=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['scale'][cY(0x249)](Math['max'](bK/0xa,0x1));});return function(bI){return bH['apply'](this,arguments);};}()),by=(function(){var bH=t(function*(){const cZ=X;let bI=++aW;if(aG['value']=cZ(0x21f),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']()+'\x20模型解析失败';}});return function(){return bH['apply'](this,arguments);};}()),bz=bH=>{const d0=cG;switch(bH){case'glb':case d0(0x1e0):return b9();case'obj':return ba();case d0(0x219):return bb();case d0(0x1d9):return bc();case'fbx':return bd();case'dae':return bf();case'3ds':return bg();case d0(0x1d7):return bh();case'amf':return bi();case'usd':case'usda':case'usdc':case'usdz':return bj();case d0(0x23f):return bk();case d0(0x205):case'stp':case'iges':case'igs':case'ifc':case'3dm':return bl(bH);case'pcd':return bm();case d0(0x264):case'vrml':return bn();case'xyz':return bo();case'vtk':case'vtp':return bp();default:throw Error(d0(0x1f9)+bH+d0(0x212));}},bA=()=>{const d1=cG;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[d1(0x22c)](bI['height']));aN['setSize'](bJ,bK,!0x1),aP['aspect']=bJ/bK,aP['updateProjectionMatrix']();},bB=bH=>{const d2=cG;if(!aN||!aO||!aP||!aQ)return;aQ[d2(0x1fe)]=aJ['value'],aQ['update'](),aY['update'](bH);let bI=aY['getDelta']();aX==null||aX['update'](bI),aN['render'](aO,aP),aV=requestAnimationFrame(bB);},bC=()=>{aR&&bs(aR);},bD=()=>{const d3=cG;aS&&(aS['visible']=aL['value']),aT&&(aT[d3(0x239)]=aM['value']);},bE=()=>{aK['value']=!aK['value'],bC();},bF=()=>{const d4=cG;aL['value']=!aL[d4(0x1f7)],bD();},bG=()=>{const d5=cG;aM['value']=!aM[d5(0x1f7)],bD();};return ay(()=>{const d6=cG;b4()&&(aY[d6(0x211)](document),aU=new ResizeObserver(bA),aF['value']&&aU['observe'](aF['value']),bB(),by());}),ax(()=>{const d7=cG;aW+=0x1,cancelAnimationFrame(aV),aU==null||aU['disconnect'](),aU=null,b7(),aQ==null||aQ[d7(0x250)](),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[cG(0x213)]],()=>{by();}),(bH,bI)=>(az(),as(cG(0x230),ge,[at('div',_e,[at('div',ve,[at('button',{'type':'button','onClick':bw},'适配'),at('button',{'type':'button','class':aw({'active':aJ[cG(0x1f7)]}),'onClick':bI[0x0]||(bI[0x0]=bJ=>aJ['value']=!aJ['value'])},'旋转',0x2),at('button',{'type':'button','class':aw({'active':aK['value']}),'onClick':bE},'线框',0x2),at(cG(0x271),{'type':'button','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']['toUpperCase']()),0x1),at(cG(0x1de),null,aB(aI['value']),0x1)])]),at('div',be,[at('canvas',{'ref_key':'canvas','ref':aF},null,0x200),aG['value']==='loading'?(az(),as('div',xe,'正在解析\x203D\x20模型...')):aG['value']==='error'?(az(),as('div',Se,[bI[0x1]||(bI[0x1]=at(cG(0x224),null,'模型解析失败',-0x1)),at(cG(0x1de),null,aB(aH['value']),0x1)])):ar('',!0x0)])]));}}),[['__scopeId',bS(0x25e)]]);export{J as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(Q,R){const aL=k,U=Q();while(!![]){try{const V=-parseInt(aL(0x1e9))/0x1+-parseInt(aL(0x1fa))/0x2+parseInt(aL(0x1ff))/0x3*(-parseInt(aL(0x1e7))/0x4)+-parseInt(aL(0x1e8))/0x5*(-parseInt(aL(0x1e2))/0x6)+parseInt(aL(0x1f6))/0x7+-parseInt(aL(0x1f1))/0x8+parseInt(aL(0x1e0))/0x9*(parseInt(aL(0x1e5))/0xa);if(V===R)break;else U['push'](U['shift']());}catch(W){U['push'](U['shift']());}}}(j,0xe6485));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 k(a,b){a=a-0x1d6;const c=j();let d=c[a];return d;}function E(){let Q={'objects':[],'object':{},'vertices':[],'normals':[],'colors':[],'uvs':[],'materials':{},'materialLibraries':[],'startObject':function(R,U){const aM=k;if(this['object']&&this['object']['fromDeclaration']===!0x1){this['object']['name']=R,this['object']['fromDeclaration']=U!==!0x1;return;}let V=this['object']&&typeof this['object'][aM(0x1ec)]=='function'?this['object']['currentMaterial']():void 0x0;if(this['object']&&typeof this['object']['_finalize']=='function'&&this['object']['_finalize'](!0x0),this[aM(0x1eb)]={'name':R||'','fromDeclaration':U!==!0x1,'geometry':{'vertices':[],'normals':[],'colors':[],'uvs':[],'hasUVIndices':!0x1},'materials':[],'smooth':!0x0,'startMaterial':function(W,X){const aN=aM;let Y=this['_finalize'](!0x1);Y&&(Y['inherited']||Y['groupCount']<=0x0)&&this['materials']['splice'](Y['index'],0x1);let Z={'index':this['materials']['length'],'name':W||'','mtllib':Array[aN(0x1de)](X)&&X['length']>0x0?X[X['length']-0x1]:'','smooth':Y===void 0x0?this[aN(0x1f0)]: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(){const aO=aM;if(this['materials'][aO(0x1d7)]>0x0)return this['materials'][this['materials']['length']-0x1];},'_finalize':function(W){const aP=aM;let X=this['currentMaterial']();if(X&&X['groupEnd']===-0x1&&(X['groupEnd']=this['geometry']['vertices']['length']/0x3,X[aP(0x1fc)]=X['groupEnd']-X['groupStart'],X['inherited']=!0x1),W&&this[aP(0x1fd)]['length']>0x1){for(let Y=this['materials'][aP(0x1d7)]-0x1;Y>=0x0;Y--)this[aP(0x1fd)][Y]['groupCount']<=0x0&&this[aP(0x1fd)]['splice'](Y,0x1);}return W&&this['materials']['length']===0x0&&this['materials']['push']({'name':'','smooth':this[aP(0x1f0)]}),X;}},V&&V['name']&&typeof V['clone']=='function'){let W=V['clone'](0x0);W['inherited']=!0x0,this['object']['materials']['push'](W);}this[aM(0x1ed)]['push'](this[aM(0x1eb)]);},'finalize':function(){const aQ=k;this[aQ(0x1eb)]&&typeof this[aQ(0x1eb)]['_finalize']=='function'&&this['object']['_finalize'](!0x0);},'parseVertexIndex':function(R,U){let V=parseInt(R,0xa);return(V>=0x0?V-0x1:V+U/0x3)*0x3;},'parseNormalIndex':function(R,U){let V=parseInt(R,0xa);return(V>=0x0?V-0x1:V+U/0x3)*0x3;},'parseUVIndex':function(R,U){let V=parseInt(R,0xa);return(V>=0x0?V-0x1:V+U/0x2)*0x2;},'addVertex':function(R,U,V){const aR=k;let W=this['vertices'],X=this['object'][aR(0x1f5)]['vertices'];X['push'](W[R+0x0],W[R+0x1],W[R+0x2]),X[aR(0x202)](W[U+0x0],W[U+0x1],W[U+0x2]),X[aR(0x202)](W[V+0x0],W[V+0x1],W[V+0x2]);},'addVertexPoint':function(R){let U=this['vertices'];this['object']['geometry']['vertices']['push'](U[R+0x0],U[R+0x1],U[R+0x2]);},'addVertexLine':function(R){const aS=k;let U=this['vertices'];this['object']['geometry']['vertices'][aS(0x202)](U[R+0x0],U[R+0x1],U[R+0x2]);},'addNormal':function(R,U,V){const aT=k;let W=this['normals'],X=this['object'][aT(0x1f5)]['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[aU(0x1f8)](W,R),x['fromArray'](W,U),S[aU(0x1f8)](W,V),w['subVectors'](S,x),C[aU(0x1ee)](b,x),w['cross'](C),w[aU(0x1f7)](),X['push'](w['x'],w['y'],w['z']),X['push'](w['x'],w['y'],w['z']),X['push'](w['x'],w['y'],w['z']);},'addColor':function(R,U,V){const aV=k;let W=this[aV(0x1f3)],X=this['object']['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 aW=k;let W=this['uvs'],X=this['object']['geometry']['uvs'];X['push'](W[R+0x0],W[R+0x1]),X[aW(0x202)](W[U+0x0],W[U+0x1]),X['push'](W[V+0x0],W[V+0x1]);},'addDefaultUV':function(){const aX=k;let R=this[aX(0x1eb)]['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['vertices']['length'],a3=this['parseVertexIndex'](R,a2),a4=this['parseVertexIndex'](U,a2),a5=this['parseVertexIndex'](V,a2);if(this['addVertex'](a3,a4,a5),this[aY(0x1e3)](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[aY(0x1f2)](a3,a4,a5);}else this['addFaceNormal'](a3,a4,a5);if(W!==void 0x0&&W!==''){let a7=this['uvs']['length'];a3=this['parseUVIndex'](W,a7),a4=this['parseUVIndex'](X,a7),a5=this['parseUVIndex'](Y,a7),this['addUV'](a3,a4,a5),this[aY(0x1eb)]['geometry']['hasUVIndices']=!0x0;}else this['addDefaultUV']();},'addPointGeometry':function(R){const aZ=k;this['object']['geometry']['type']='Points';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(0x1e3)](X);}},'addLineGeometry':function(R,U){this['object']['geometry']['type']='Line';let V=this['vertices']['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 b0=k;let W=this,X=new z(this['manager']);X['setPath'](this[b0(0x1da)]),X['setRequestHeader'](this['requestHeader']),X['setWithCredentials'](this['withCredentials']),X['load'](Q,function(Y){try{R(W['parse'](Y));}catch(Z){V?V(Z):console['error'](Z),W['manager']['itemError'](Q);}},U,V);}['setMaterials'](Q){return this['materials']=Q,this;}['parse'](Q){const b1=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['split']('\x0a'),V=[];for(let X=0x0,Y=U['length'];X<Y;X++){let Z=U[X]['trimStart']();if(Z['length']===0x0)continue;let a0=Z['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['setRGB'](parseFloat(a1[0x4]),parseFloat(a1[0x5]),parseFloat(a1[0x6]),O),R['colors']['push'](T['r'],T['g'],T['b'])):R[b1(0x1f3)]['push'](void 0x0,void 0x0,void 0x0);break;case'vn':R['normals']['push'](parseFloat(a1[0x1]),parseFloat(a1[0x2]),parseFloat(a1[0x3]));break;case'vt':R['uvs']['push'](parseFloat(a1[0x1]),parseFloat(a1[0x2]));break;}}else{if(a0==='f'){let a2=Z[b1(0x1e1)](0x1)['trim']()[b1(0x1d6)](y),a3=[];for(let a5=0x0,a6=a2[b1(0x1d7)];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[b1(0x1fe)](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)[b1(0x201)]()['split']('\x20'),ae=[],af=[];if(Z[b1(0x1dc)]('/')===-0x1)ae=ad;else for(let ag=0x0,ah=ad['length'];ag<ah;ag++){let ai=ad[ag][b1(0x1d6)]('/');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)[b1(0x201)]())['slice'](0x1);R['startObject'](ak);}else{if(_['test'](Z))R['object']['startMaterial'](Z['substring'](0x7)['trim'](),R['materialLibraries']);else{if(g[b1(0x1e4)](Z))R[b1(0x1ef)][b1(0x202)](Z['substring'](0x7)[b1(0x201)]());else{if(v['test'](Z))console[b1(0x1f9)](b1(0x1fb));else{if(a0==='s'){if(V=Z['split']('\x20'),V['length']>0x1){let am=V[0x1]['trim']()['toLowerCase']();R[b1(0x1eb)][b1(0x1f0)]=am!=='0'&&am!=='off';}else R['object']['smooth']=!0x0;let al=R['object'][b1(0x1ec)]();al&&(al['smooth']=R['object']['smooth']);}else{if(Z==='\x00')continue;console['warn'](b1(0x1db)+Z+'\x22');}}}}}}}}}}}R['finalize']();let W=new A();if(W[b1(0x1ef)]=[]['concat'](R[b1(0x1ef)]),!(R[b1(0x1ed)]['length']===0x1&&R['objects'][0x0]['geometry']['vertices'][b1(0x1d7)]===0x0))for(let an=0x0,ao=R[b1(0x1ed)]['length'];an<ao;an++){let ap=R['objects'][an],aq=ap['geometry'],ar=ap[b1(0x1fd)],as=aq['type']==='Line',at=aq['type']==='Points',au=!0x1;if(aq['vertices']['length']===0x0)continue;let av=new M();av['setAttribute']('position',new N(aq['vertices'],0x3)),aq['normals']['length']>0x0&&av[b1(0x1e6)]('normal',new N(aq['normals'],0x3)),aq['colors']['length']>0x0&&(au=!0x0,av['setAttribute']('color',new N(aq['colors'],0x3))),aq[b1(0x1ea)]===!0x0&&av['setAttribute']('uv',new N(aq['uvs'],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['materials']!==null){if(aC=this['materials'][b1(0x1f4)](aA['name']),as&&aC&&!(aC instanceof P)){let aD=new P();G['prototype'][b1(0x1d8)]['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[b1(0x1df)]=!aA['smooth'],aC['vertexColors']=au,R['materials'][aB]=aC),aw[b1(0x202)](aC);}let ax;if(aw['length']>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[b1(0x1dd)][b1(0x1d7)]>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[b1(0x1f3)][0x0]!==void 0x0&&(aJ['setAttribute']('color',new N(R[b1(0x1f3)],0x3)),aI[b1(0x200)]=!0x0);let aK=new J(aJ,aI);W[b1(0x1d9)](aK);}}return W;}};export{D as OBJLoader};function j(){const b2=['smooth','713216CXtBCU','addNormal','colors','create','geometry','9028068bhcaDF','normalize','fromArray','warn','329336kUvrMx','THREE.OBJLoader:\x20Rendering\x20identifier\x20\x22usemap\x22\x20not\x20supported.\x20Textures\x20must\x20be\x20defined\x20in\x20MTL\x20files.','groupCount','materials','addFace','3cMGMEK','vertexColors','trim','push','split','length','copy','add','path','THREE.OBJLoader:\x20Unexpected\x20line:\x20\x22','indexOf','vertices','isArray','flatShading','6021fyBxwW','slice','12678PhiqfO','addColor','test','8810WjdfeT','setAttribute','2392516dxjRqT','1645mhRbIw','779104cmpvRG','hasUVIndices','object','currentMaterial','objects','subVectors','materialLibraries'];j=function(){return b2;};return j();}
|
|
1
|
+
(function(Q,R){const aL=k,U=Q();while(!![]){try{const V=parseInt(aL(0x9f))/0x1+-parseInt(aL(0xaa))/0x2*(parseInt(aL(0x81))/0x3)+-parseInt(aL(0xa8))/0x4+parseInt(aL(0x9c))/0x5*(-parseInt(aL(0x8e))/0x6)+parseInt(aL(0x8f))/0x7+-parseInt(aL(0x93))/0x8*(parseInt(aL(0x9e))/0x9)+-parseInt(aL(0x9d))/0xa*(-parseInt(aL(0x89))/0xb);if(V===R)break;else U['push'](U['shift']());}catch(W){U['push'](U['shift']());}}}(j,0x838df));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';function k(a,b){a=a-0x7b;const c=j();let d=c[a];return d;}var h=/^[og]\s*(.+)?/,g=/^mtllib /,_=/^usemtl /,v=/^usemap /,y=/\s+/,b=new q(),x=new q(),S=new q(),C=new q(),w=new q(),T=new K();function E(){let Q={'objects':[],'object':{},'vertices':[],'normals':[],'colors':[],'uvs':[],'materials':{},'materialLibraries':[],'startObject':function(R,U){const aM=k;if(this['object']&&this['object']['fromDeclaration']===!0x1){this['object']['name']=R,this['object']['fromDeclaration']=U!==!0x1;return;}let V=this['object']&&typeof this['object']['currentMaterial']=='function'?this[aM(0xa1)]['currentMaterial']():void 0x0;if(this['object']&&typeof this[aM(0xa1)]['_finalize']=='function'&&this['object']['_finalize'](!0x0),this[aM(0xa1)]={'name':R||'','fromDeclaration':U!==!0x1,'geometry':{'vertices':[],'normals':[],'colors':[],'uvs':[],'hasUVIndices':!0x1},'materials':[],'smooth':!0x0,'startMaterial':function(W,X){const aN=aM;let Y=this['_finalize'](!0x1);Y&&(Y['inherited']||Y['groupCount']<=0x0)&&this['materials']['splice'](Y[aN(0x8b)],0x1);let Z={'index':this['materials']['length'],'name':W||'','mtllib':Array['isArray'](X)&&X['length']>0x0?X[X['length']-0x1]:'','smooth':Y===void 0x0?this['smooth']:Y['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['clone']=this['clone'][aO(0x96)](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 aP=aM;let X=this['currentMaterial']();if(X&&X['groupEnd']===-0x1&&(X['groupEnd']=this['geometry']['vertices']['length']/0x3,X['groupCount']=X[aP(0x8c)]-X['groupStart'],X['inherited']=!0x1),W&&this[aP(0x80)][aP(0x82)]>0x1){for(let Y=this['materials']['length']-0x1;Y>=0x0;Y--)this['materials'][Y]['groupCount']<=0x0&&this['materials']['splice'](Y,0x1);}return W&&this['materials']['length']===0x0&&this[aP(0x80)]['push']({'name':'','smooth':this['smooth']}),X;}},V&&V['name']&&typeof V['clone']=='function'){let W=V[aM(0x98)](0x0);W['inherited']=!0x0,this['object']['materials']['push'](W);}this['objects'][aM(0xac)](this['object']);},'finalize':function(){const aQ=k;this[aQ(0xa1)]&&typeof this[aQ(0xa1)]['_finalize']=='function'&&this['object']['_finalize'](!0x0);},'parseVertexIndex':function(R,U){let V=parseInt(R,0xa);return(V>=0x0?V-0x1:V+U/0x3)*0x3;},'parseNormalIndex':function(R,U){let V=parseInt(R,0xa);return(V>=0x0?V-0x1:V+U/0x3)*0x3;},'parseUVIndex':function(R,U){let V=parseInt(R,0xa);return(V>=0x0?V-0x1:V+U/0x2)*0x2;},'addVertex':function(R,U,V){const aR=k;let W=this['vertices'],X=this['object']['geometry'][aR(0xa0)];X['push'](W[R+0x0],W[R+0x1],W[R+0x2]),X['push'](W[U+0x0],W[U+0x1],W[U+0x2]),X['push'](W[V+0x0],W[V+0x1],W[V+0x2]);},'addVertexPoint':function(R){const aS=k;let U=this['vertices'];this['object']['geometry']['vertices'][aS(0xac)](U[R+0x0],U[R+0x1],U[R+0x2]);},'addVertexLine':function(R){const aT=k;let U=this[aT(0xa0)];this[aT(0xa1)]['geometry']['vertices']['push'](U[R+0x0],U[R+0x1],U[R+0x2]);},'addNormal':function(R,U,V){const aU=k;let W=this['normals'],X=this['object']['geometry'][aU(0x84)];X['push'](W[R+0x0],W[R+0x1],W[R+0x2]),X['push'](W[U+0x0],W[U+0x1],W[U+0x2]),X['push'](W[V+0x0],W[V+0x1],W[V+0x2]);},'addFaceNormal':function(R,U,V){const aV=k;let W=this['vertices'],X=this['object']['geometry']['normals'];b['fromArray'](W,R),x['fromArray'](W,U),S['fromArray'](W,V),w['subVectors'](S,x),C[aV(0x88)](b,x),w['cross'](C),w['normalize'](),X['push'](w['x'],w['y'],w['z']),X['push'](w['x'],w['y'],w['z']),X[aV(0xac)](w['x'],w['y'],w['z']);},'addColor':function(R,U,V){const aW=k;let W=this[aW(0x7f)],X=this['object']['geometry']['colors'];W[R]!==void 0x0&&X[aW(0xac)](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[aX(0xa1)]['geometry']['uvs'];X[aX(0xac)](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 aY=k;let R=this['object']['geometry'][aY(0x92)];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 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'][aZ(0x82)];a3=this['parseNormalIndex'](Z,a6),a4=this[aZ(0x7d)](a0,a6),a5=this['parseNormalIndex'](a1,a6),this['addNormal'](a3,a4,a5);}else this[aZ(0x9a)](a3,a4,a5);if(W!==void 0x0&&W!==''){let a7=this[aZ(0x92)]['length'];a3=this['parseUVIndex'](W,a7),a4=this[aZ(0xab)](X,a7),a5=this['parseUVIndex'](Y,a7),this['addUV'](a3,a4,a5),this['object']['geometry'][aZ(0x85)]=!0x0;}else this['addDefaultUV']();},'addPointGeometry':function(R){const b0=k;this[b0(0xa1)]['geometry']['type']='Points';let U=this['vertices']['length'];for(let V=0x0,W=R['length'];V<W;V++){let X=this[b0(0x8a)](R[V],U);this['addVertexPoint'](X),this['addColor'](X);}},'addLineGeometry':function(R,U){const b1=k;this['object'][b1(0x94)][b1(0xa4)]='Line';let V=this['vertices']['length'],W=this['uvs'][b1(0x82)];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 b2=k;let W=this,X=new z(this['manager']);X[b2(0x95)](this[b2(0x99)]),X['setRequestHeader'](this['requestHeader']),X['setWithCredentials'](this['withCredentials']),X['load'](Q,function(Y){const b3=b2;try{R(W['parse'](Y));}catch(Z){V?V(Z):console[b3(0x87)](Z),W['manager'][b3(0xa2)](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(0x7b)]('\x0a'),V=[];for(let X=0x0,Y=U['length'];X<Y;X++){let Z=U[X]['trimStart']();if(Z['length']===0x0)continue;let a0=Z['charAt'](0x0);if(a0!=='#'){if(a0==='v'){let a1=Z['split'](y);switch(a1[0x0]){case'v':R[b4(0xa0)][b4(0xac)](parseFloat(a1[0x1]),parseFloat(a1[0x2]),parseFloat(a1[0x3])),a1['length']>=0x7?(T['setRGB'](parseFloat(a1[0x4]),parseFloat(a1[0x5]),parseFloat(a1[0x6]),O),R['colors']['push'](T['r'],T['g'],T['b'])):R['colors']['push'](void 0x0,void 0x0,void 0x0);break;case'vn':R['normals']['push'](parseFloat(a1[0x1]),parseFloat(a1[0x2]),parseFloat(a1[0x3]));break;case'vt':R['uvs']['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['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']()[b4(0x7b)]('\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'][b4(0x86)](Z['substring'](0x7)['trim'](),R['materialLibraries']);else{if(g[b4(0x9b)](Z))R['materialLibraries'][b4(0xac)](Z[b4(0xa6)](0x7)['trim']());else{if(v['test'](Z))console['warn']('THREE.OBJLoader:\x20Rendering\x20identifier\x20\x22usemap\x22\x20not\x20supported.\x20Textures\x20must\x20be\x20defined\x20in\x20MTL\x20files.');else{if(a0==='s'){if(V=Z['split']('\x20'),V['length']>0x1){let am=V[0x1]['trim']()['toLowerCase']();R['object']['smooth']=am!=='0'&&am!=='off';}else R[b4(0xa1)]['smooth']=!0x0;let al=R['object']['currentMaterial']();al&&(al['smooth']=R['object']['smooth']);}else{if(Z==='\x00')continue;console[b4(0x91)](b4(0xa5)+Z+'\x22');}}}}}}}}}}}R['finalize']();let W=new A();if(W['materialLibraries']=[]['concat'](R['materialLibraries']),!(R['objects'][b4(0x82)]===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['type']==='Line',at=aq['type']==='Points',au=!0x1;if(aq['vertices']['length']===0x0)continue;let av=new M();av['setAttribute']('position',new N(aq['vertices'],0x3)),aq['normals'][b4(0x82)]>0x0&&av['setAttribute']('normal',new N(aq['normals'],0x3)),aq[b4(0x7f)]['length']>0x0&&(au=!0x0,av[b4(0x83)]('color',new N(aq['colors'],0x3))),aq[b4(0x85)]===!0x0&&av[b4(0x83)]('uv',new N(aq['uvs'],0x2));let aw=[];for(let ay=0x0,az=ar[b4(0x82)];ay<az;ay++){let aA=ar[ay],aB=aA['name']+'_'+aA['smooth']+'_'+au,aC=R['materials'][aB];if(this['materials']!==null){if(aC=this['materials']['create'](aA['name']),as&&aC&&!(aC instanceof P)){let aD=new P();G[b4(0xa7)]['copy']['call'](aD,aC),aD['color']['copy'](aC['color']),aC=aD;}else{if(at&&aC&&!(aC instanceof H)){let aE=new H({'size':0xa,'sizeAttenuation':!0x1});G['prototype'][b4(0x7e)]['call'](aE,aC),aE['color']['copy'](aC[b4(0x97)]),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[b4(0xa3)],aC['flatShading']=!aA['smooth'],aC['vertexColors']=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(0x90)],aH[b4(0xa9)],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[b4(0xa3)]=ap['name'],W['add'](ax);}else{if(R['vertices']['length']>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[b4(0x83)]('color',new N(R[b4(0x7f)],0x3)),aI[b4(0x8d)]=!0x0);let aK=new J(aJ,aI);W[b4(0x7c)](aK);}}return W;}};export{D as OBJLoader};function j(){const b5=['itemError','name','type','THREE.OBJLoader:\x20Unexpected\x20line:\x20\x22','substring','prototype','2258056WEMAJP','groupCount','2107322DfxxoC','parseUVIndex','push','split','add','parseNormalIndex','copy','colors','materials','3AlVuOl','length','setAttribute','normals','hasUVIndices','startMaterial','error','subVectors','946ZEfSLK','parseVertexIndex','index','groupEnd','vertexColors','27852GkpMEX','3475969HNJIvf','groupStart','warn','uvs','8KWLxXv','geometry','setPath','bind','color','clone','path','addFaceNormal','test','785IRPlGc','224390udELSX','1761741lVxBRa','655244dZSpkZ','vertices','object'];j=function(){return b5;};return j();}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
(function(E,F){const af=g,G=E();while(!![]){try{const H=-parseInt(af(0x157))/0x1+-parseInt(af(0x15a))/0x2+-parseInt(af(0x158))/0x3+-parseInt(af(0x161))/0x4+-parseInt(af(0x155))/0x5+parseInt(af(0x15b))/0x6+parseInt(af(0x163))/0x7;if(H===F)break;else G['push'](G['shift']());}catch(I){G['push'](G['shift']());}}}(b,0x79551));function b(){const ao=['loading','then','OFD\x20文件解析失败','force','error','2976756FhkgOC','add','25889654LAEccP','div','OFD\x20文件中没有可渲染的文档','disconnect','string','value','setTimeout','389890RMNqtk','apply','774455ryRxMS','2878596SfiIGG','ready','1971806TdMUhI','2043072bvXxoY'];b=function(){return ao;};return b();}import{n as j,t}from'./asyncToGenerator.js';import{t as k}from'./_plugin-vue_export-helper.js';function g(a,c){a=a-0x14f;const d=b();let e=d[a];return e;}import{createCommentVNode as q,createElementBlock as v,createElementVNode as w,defineComponent as x,nextTick as y,onBeforeUnmount as z,onMounted as A,openBlock as B,ref as C,toDisplayString as D}from'vue';j();var p={'key':0x0,'class':'ofd-state'},m={'key':0x1,'class':'ofd-state\x20error'},h=k(x({'__name':'OfdViewer','props':{'data':{}},'setup'(F){const aj=g;let G=F,H=C(null),I=C(null),J=C('loading'),K=C(''),L=!0x1,N=0x0,P=null,Q=0x0,R=0x0,U=null,V=()=>{let a4=H['value'];if(a4){for(;a4['firstChild'];)a4['removeChild'](a4['firstChild']);}},W=a4=>new Promise((a5,a6)=>{a4['parseOfdDocument']({'ofd':G['data'],'success':a7=>a5(a7),'fail':a7=>a6(a7)});}),X=(function(){var a4=t(function*(a5){const ag=g;return U||(U=W(a5)[ag(0x15d)](a6=>{const ah=ag;let a7=a6[0x0];if(!a7)throw Error(ah(0x150));return a7;})),U;});return function(a5){const ai=g;return a4[ai(0x156)](this,arguments);};}()),Y=a4=>a4 instanceof Error?a4['message']:typeof a4==aj(0x152)?a4:JSON['stringify'](a4),Z=(a4,a5)=>{let a6=document['createDocumentFragment']();a5['forEach'](a7=>{const ak=g;a7['classList'][ak(0x162)]('ofd-page'),a6['appendChild'](a7);}),a4['appendChild'](a6);},a0=()=>{var a4,a5;let a6=((a4=I['value'])==null?void 0x0:a4['getBoundingClientRect']()['width'])||((a5=H['value'])==null?void 0x0:a5['getBoundingClientRect']()['width'])||0x0;return Math['max'](Math['floor'](a6-0x30),0xf0);},a1=(function(){var a4=t(function*(a5){let a6=yield import('./ofd.js'),a7=yield X(a6);return L?[]:Promise['resolve'](a6['renderOfd'](a5,a7));});return function(a5){return a4['apply'](this,arguments);};}()),a2=(function(){var a4=t(function*(a5={}){const al=g;var a6,a7;let a8=H['value'];if(!a8)return;let a9=(a6=a5[al(0x15f)])==null?!0x1:a6,aa=(a7=a5['showLoading'])==null?!0x1:a7,ab=a0();if(!a9&&J['value']===al(0x159)&&Math['abs'](ab-R)<0x8)return;let ac=++N;(aa||J['value']!=='ready')&&(J['value']='loading',V()),K['value']='';try{yield y();let ad=yield a1(ab);if(L||ac!==N)return;V(),Z(a8,ad),R=ab,J['value']='ready';}catch(ae){if(L||ac!==N)return;console['error'](ae),J['value']=al(0x160),K[al(0x153)]=Y(ae)||al(0x15e);}});return function(){return a4['apply'](this,arguments);};}()),a3=()=>{!I['value']||P||(P=new ResizeObserver(()=>{const am=g;window['clearTimeout'](Q),Q=window[am(0x154)](()=>{L||a2({'showLoading':!0x1});},0xb4);}),P['observe'](I['value']));};return A(()=>{a2({'force':!0x0,'showLoading':!0x0})['finally'](()=>{a3();});}),z(()=>{const an=aj;L=!0x0,N+=0x1,window['clearTimeout'](Q),P==null||P[an(0x151)](),P=null,V();}),(a4,a5)=>(B(),v('div',{'ref_key':'viewer','ref':I,'class':'ofd-viewer'},[J[aj(0x153)]===aj(0x15c)?(B(),v('div',p,'正在解析\x20OFD...')):J['value']==='error'?(B(),v(aj(0x14f),m,D(K[aj(0x153)]),0x1)):q('',!0x0),w('div',{'ref_key':'stage','ref':H,'class':'ofd-stage'},null,0x200)],0x200));}}),[['__scopeId','data-v-48238ef6']]);export{h as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
(function(v,w){const at=d,x=v();while(!![]){try{const y=parseInt(at(0xec))/0x1+parseInt(at(0x111))/0x2+-parseInt(at(0xfc))/0x3*(-parseInt(at(0xef))/0x4)+parseInt(at(0x102))/0x5+-parseInt(at(0xf6))/0x6+-parseInt(at(0x119))/0x7*(parseInt(at(0xf9))/0x8)+parseInt(at(0xed))/0x9;if(y===w)break;else x['push'](x['shift']());}catch(z){x['push'](x['shift']());}}}(b,0xae464));function d(a,c){a=a-0xeb;const e=b();let f=e[a];return f;}function b(){const az=['findIndex','count','fromCharCode','normal_y','requestHeader','label','load','1931008zmIezP','points','getUint8','length','fields','width','version','Invalid\x20compressed\x20data','9859381kHRYzt','buffer','92261ZCrmyc','4988763EQTlzF','rgb','1488YdqfVv','size','vertexColors','split','type','startsWith','computeBoundingSphere','4623960dmzAsm','setRequestHeader','data','8pgzmON','indexOf','headerLen','6939xKjOLA','height','ascii','_getDataView','slice','push','2102315JSFEXw','offset','normal_z','littleEndian','str','setAttribute','intensity','viewpoint'];b=function(){return az;};return b();}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(0x105)]=!0x0;}['load'](v,w,x,y){const av=d;let z=this,A=new f(z['manager']);A['setPath'](z['path']),A['setResponseType']('arraybuffer'),A[av(0xf7)](z[av(0x10e)]),A['setWithCredentials'](z['withCredentials']),A[av(0x110)](v,function(B){try{w(z['parse'](B));}catch(C){y?y(C):console['error'](C),z['manager']['itemError'](v);}},x,y);}['_getDataView'](v,w,x,y){switch(x){case'F':return y===0x8?v['getFloat64'](w,this['littleEndian']):v['getFloat32'](w,this['littleEndian']);case'I':return y===0x1?v['getInt8'](w):y===0x2?v['getInt16'](w,this['littleEndian']):v['getInt32'](w,this['littleEndian']);case'U':return y===0x1?v['getUint8'](w):y===0x2?v['getUint16'](w,this['littleEndian']):v['getUint32'](w,this['littleEndian']);}}['parse'](w){const ay=d;function x(I,J){const aw=d;let K=I['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(aw(0x118));do L[N++]=L[Q++];while(--P+0x2);}while(M<K);return L;}function y(I){const ax=d;let J={},K=new Uint8Array(I),L='',M='',N=0x0,O=!0x1,P=K['length'];for(;N<P&&O===!0x1;){let T=String[ax(0x10c)](K[N++]);T==='\x0a'||T==='\x0d'?(M['trim']()['toLowerCase']()[ax(0xf4)](ax(0xf8))&&(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[ax(0x100)](Q-0x1));if(J['data']=R[0x1],J['headerLen']=R[0x0][ax(0x114)]+Q,J[ax(0x106)]=L['slice'](0x0,J['headerLen']),J['str']=J['str']['replace'](/#.*/gi,''),J['version']=/^VERSION (.*)/im['exec'](J['str']),J[ax(0x115)]=/^FIELDS (.*)/im['exec'](J[ax(0x106)]),J['size']=/^SIZE (.*)/im['exec'](J['str']),J['type']=/^TYPE (.*)/im['exec'](J['str']),J['count']=/^COUNT (.*)/im['exec'](J[ax(0x106)]),J['width']=/^WIDTH (.*)/im['exec'](J['str']),J['height']=/^HEIGHT (.*)/im['exec'](J['str']),J[ax(0x109)]=/^VIEWPOINT (.*)/im['exec'](J[ax(0x106)]),J['points']=/^POINTS (.*)/im['exec'](J['str']),J['version']!==null&&(J['version']=parseFloat(J[ax(0x117)][0x1])),J['fields']=J['fields']===null?[]:J['fields'][0x1]['split']('\x20'),J[ax(0xf3)]!==null&&(J['type']=J['type'][0x1][ax(0xf2)]('\x20')),J['width']!==null&&(J['width']=parseInt(J[ax(0x116)][0x1])),J['height']!==null&&(J[ax(0xfd)]=parseInt(J['height'][0x1])),J['viewpoint']!==null&&(J['viewpoint']=J['viewpoint'][0x1]),J[ax(0x112)]!==null&&(J[ax(0x112)]=parseInt(J['points'][0x1],0xa)),J[ax(0x112)]===null&&(J['points']=J['width']*J['height']),J['size']!==null&&(J['size']=J['size'][0x1]['split']('\x20')['map'](function(U){return parseInt(U,0xa);})),J[ax(0x10b)]!==null)J['count']=J['count'][0x1]['split']('\x20')['map'](function(U){return parseInt(U,0xa);});else{J['count']=[];for(let U=0x0,V=J['fields'][ax(0x114)];U<V;U++)J[ax(0x10b)]['push'](0x1);}J['offset']={};let S=0x0;for(let W=0x0,X=J[ax(0x115)]['length'];W<X;W++)J['data']==='ascii'?J['offset'][J['fields'][W]]=W:(J['offset'][J['fields'][W]]=S,S+=J['size'][W]*J['count'][W]);return J['rowSize']=S,J;}let z=y(w),A=[],B=[],C=[],D=[],E=[],F=new m();if(z['data']===ay(0xfe)){let I=z[ay(0x103)],J=new TextDecoder()['decode'](w)['slice'](z['headerLen'])['split']('\x0a');for(let K=0x0,L=J[ay(0x114)];K<L;K++){if(J[K]==='')continue;let M=J[K][ay(0xf2)]('\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['fields'][ay(0x10a)](U=>U==='rgb'),O=z['type'][N],P=parseFloat(M[I[ay(0xee)]]),Q=P;if(O==='F'){let U=new Float32Array(0x1);U[0x0]=P,Q=new Int32Array(U[ay(0xeb)])[0x0];}let R=(Q>>0x10&0xff)/0xff,S=(Q>>0x8&0xff)/0xff,T=(Q>>0x0&0xff)/0xff;F['setRGB'](R,S,T,u),C['push'](F['r'],F['g'],F['b']);}I['normal_x']!==void 0x0&&(B[ay(0x101)](parseFloat(M[I['normal_x']])),B['push'](parseFloat(M[I['normal_y']])),B[ay(0x101)](parseFloat(M[I['normal_z']]))),I['intensity']!==void 0x0&&D[ay(0x101)](parseFloat(M[I[ay(0x108)]])),I['label']!==void 0x0&&E[ay(0x101)](parseInt(M[I['label']]));}}if(z['data']==='binary_compressed'){let V=new Uint32Array(w['slice'](z[ay(0xfb)],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[ay(0x103)];for(let a1=0x0;a1<z['points'];a1++){if(a0['x']!==void 0x0){let a2=z['fields'][ay(0xfa)]('x'),a3=z['fields']['indexOf']('y'),a4=z[ay(0x115)][ay(0xfa)]('z');A['push'](this['_getDataView'](Z,z['points']*a0['x']+z['size'][a2]*a1,z[ay(0xf3)][a2],z['size'][a2])),A[ay(0x101)](this['_getDataView'](Z,z['points']*a0['y']+z['size'][a3]*a1,z['type'][a3],z['size'][a3])),A['push'](this['_getDataView'](Z,z[ay(0x112)]*a0['z']+z['size'][a4]*a1,z['type'][a4],z['size'][a4]));}if(a0['rgb']!==void 0x0){let a5=z[ay(0x115)][ay(0xfa)]('rgb'),a6=Z[ay(0x113)](z[ay(0x112)]*a0[ay(0xee)]+z['size'][a5]*a1+0x2)/0xff,a7=Z['getUint8'](z['points']*a0['rgb']+z['size'][a5]*a1+0x1)/0xff,a8=Z['getUint8'](z[ay(0x112)]*a0['rgb']+z['size'][a5]*a1+0x0)/0xff;F['setRGB'](a6,a7,a8,u),C[ay(0x101)](F['r'],F['g'],F['b']);}if(a0['normal_x']!==void 0x0){let a9=z[ay(0x115)]['indexOf']('normal_x'),aa=z['fields'][ay(0xfa)]('normal_y'),ab=z['fields'][ay(0xfa)]('normal_z');B['push'](this[ay(0xff)](Z,z['points']*a0['normal_x']+z['size'][a9]*a1,z['type'][a9],z['size'][a9])),B['push'](this['_getDataView'](Z,z['points']*a0[ay(0x10d)]+z['size'][aa]*a1,z['type'][aa],z[ay(0xf0)][aa])),B[ay(0x101)](this[ay(0xff)](Z,z[ay(0x112)]*a0[ay(0x104)]+z['size'][ab]*a1,z['type'][ab],z['size'][ab]));}if(a0['intensity']!==void 0x0){let ac=z['fields']['indexOf']('intensity');D[ay(0x101)](this['_getDataView'](Z,z['points']*a0['intensity']+z['size'][ac]*a1,z['type'][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['offset'];for(let ag=0x0,ah=0x0;ag<z['points'];ag++,ah+=z['rowSize']){if(af['x']!==void 0x0){let ai=z['fields']['indexOf']('x'),aj=z['fields']['indexOf']('y'),ak=z[ay(0x115)]['indexOf']('z');A[ay(0x101)](this['_getDataView'](ae,ah+af['x'],z['type'][ai],z['size'][ai])),A['push'](this['_getDataView'](ae,ah+af['y'],z['type'][aj],z['size'][aj])),A[ay(0x101)](this['_getDataView'](ae,ah+af['z'],z[ay(0xf3)][ak],z['size'][ak]));}if(af['rgb']!==void 0x0){let al=ae['getUint8'](ah+af['rgb']+0x2)/0xff,am=ae['getUint8'](ah+af[ay(0xee)]+0x1)/0xff,an=ae['getUint8'](ah+af['rgb']+0x0)/0xff;F['setRGB'](al,am,an,u),C['push'](F['r'],F['g'],F['b']);}if(af['normal_x']!==void 0x0){let ao=z['fields'][ay(0xfa)]('normal_x'),ap=z[ay(0x115)][ay(0xfa)]('normal_y'),aq=z[ay(0x115)][ay(0xfa)]('normal_z');B[ay(0x101)](this['_getDataView'](ae,ah+af['normal_x'],z['type'][ao],z['size'][ao])),B['push'](this['_getDataView'](ae,ah+af['normal_y'],z[ay(0xf3)][ap],z['size'][ap])),B['push'](this['_getDataView'](ae,ah+af['normal_z'],z['type'][aq],z['size'][aq]));}if(af['intensity']!==void 0x0){let ar=z['fields']['indexOf']('intensity');D['push'](this['_getDataView'](ae,ah+af['intensity'],z['type'][ar],z['size'][ar]));}if(af['label']!==void 0x0){let as=z['fields']['indexOf']('label');E['push'](this['_getDataView'](ae,ah+af['label'],z[ay(0xf3)][as],z['size'][as]));}}}let G=new p();A['length']>0x0&&G[ay(0x107)]('position',new q(A,0x3)),B['length']>0x0&&G['setAttribute']('normal',new q(B,0x3)),C['length']>0x0&&G[ay(0x107)]('color',new q(C,0x3)),D['length']>0x0&&G['setAttribute']('intensity',new q(D,0x1)),E['length']>0x0&&G[ay(0x107)](ay(0x10f),new k(E,0x1)),G[ay(0xf5)]();let H=new h({'size':0.005});return C['length']>0x0&&(H[ay(0xf1)]=!0x0),new j(G,H);}};export{l as PCDLoader};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(m,p){const Y=d,q=m();while(!![]){try{const u
|
|
1
|
+
const ae=d;(function(m,p){const Y=d,q=m();while(!![]){try{const u=-parseInt(Y(0xa5))/0x1*(parseInt(Y(0x9d))/0x2)+-parseInt(Y(0x92))/0x3+parseInt(Y(0x9b))/0x4+-parseInt(Y(0xb0))/0x5+-parseInt(Y(0xba))/0x6*(parseInt(Y(0xb6))/0x7)+-parseInt(Y(0xa7))/0x8+parseInt(Y(0x96))/0x9*(parseInt(Y(0x97))/0xa);if(u===p)break;else q['push'](q['shift']());}catch(v){q['push'](q['shift']());}}}(b,0xe8912));function b(){const af=['142HlfuDJ','format','float32','diffuse_b','read','setRequestHeader','push','size','8282eiVAzO','attrNY','6274456ZPvjEc','setAttribute','normalz','int16','uint8','propertyNameMapping','type','itemType','attrG','647140YGqGYh','attrB','computeBoundingSphere','countReader','normals','next','2219neRSuI','length','attrY','join','7908zHlTut','indices','customPropertyMapping','texcoord','uint','5054181tUIugy','elements','diffuse_red','log','333fZAqTw','894290kTKUhF','face','attrS','faceVertexColors','4992044SsJGuY','attrR'];b=function(){return af;};return b();}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[Z(0xac)]={},this['customPropertyMapping']={};}['load'](m,p,q,u){const a0=d;let v=this,w=new f(this['manager']);w['setPath'](this['path']),w['setResponseType']('arraybuffer'),w[a0(0xa2)](this['requestHeader']),w['setWithCredentials'](this['withCredentials']),w['load'](m,function(x){try{p(v['parse'](x));}catch(y){u?u(y):console['error'](y),v['manager']['itemError'](m);}},q,u);}['setPropertyNameMapping'](m){const a1=d;this[a1(0xac)]=m;}['setCustomPropertyNameMapping'](m){this['customPropertyMapping']=m;}['parse'](q){function w(L,M=0x0){const a2=d;let N=/^ply([\s\S]*)end_header(\r\n|\r|\n)/,O='',P=N['exec'](L);P!==null&&(O=P[0x1]);let Q={'comments':[],'elements':[],'headerLength':M,'objInfo':''},R=O['split'](/\r\n|\r|\n/),S;function T(U,V){let W={'type':U[0x0]};return W['type']==='list'?(W['name']=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['join']('\x20'),X){case a2(0x9e):Q['format']=W[0x0],Q['version']=W[0x1];break;case'comment':Q['comments']['push'](V);break;case'element':S!==void 0x0&&Q['elements'][a2(0xa3)](S),S={},S['name']=W[0x0],S['count']=parseInt(W[0x1]),S['properties']=[];break;case'property':S['properties'][a2(0xa3)](T(W,K['propertyNameMapping']));break;case'obj_info':Q['objInfo']=V;break;default:console[a2(0x95)]('unhandled',X,W);}}return S!==void 0x0&&Q['elements']['push'](S),Q;}function x(L,M){const a3=d;switch(M){case'char':case'uchar':case'short':case'ushort':case'int':case a3(0xbe):case'int8':case'uint8':case a3(0xaa):case'uint16':case'int32':case'uint32':return parseInt(L);case'float':case'double':case a3(0x9f):case'float64':return parseFloat(L);}}function z(L,M){const a4=d;let N={};for(let O=0x0;O<L['length'];O++){if(M['empty']())return null;if(L[O][a4(0xad)]==='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][a4(0xae)]));}N[L[O]['name']]=P;}else N[L[O]['name']]=x(M[a4(0xb5)](),L[O]['type']);}return N;}function A(){let L={'indices':[],'vertices':[],'normals':[],'uvs':[],'faceVertexUvs':[],'colors':[],'faceVertexColors':[]};for(let M of Object['keys'](K['customPropertyMapping']))L[M]=[];return L;}function B(L){const a5=d;let M=L['map'](O=>O['name']);function N(O){for(let P=0x0,Q=O['length'];P<Q;P++){let R=O[P];if(M['includes'](R))return R;}return null;}return{'attrX':N(['x','px','posx'])||'x','attrY':N(['y','py','posy'])||'y','attrZ':N(['z','pz','posz'])||'z','attrNX':N(['nx','normalx']),'attrNY':N(['ny','normaly']),'attrNZ':N(['nz',a5(0xa9)]),'attrS':N(['s','u','texture_u','tx']),'attrT':N(['t','v','texture_v','ty']),'attrR':N(['red',a5(0x94),'r','diffuse_r']),'attrG':N(['green','diffuse_green','g','diffuse_g']),'attrB':N(['blue','diffuse_blue','b',a5(0xa0)])};}function C(L,M){const a6=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'][a6(0xb7)];S++){let T=M[a6(0x93)][S],U=B(T['properties']);for(let V=0x0;V<T['count'];V++){let W=z(T['properties'],R);if(!W)break X;E(N,T['name'],W,U);}}return D(N);}function D(L){const a7=d;let M=new j();L[a7(0xbb)][a7(0xb7)]>0x0&&M['setIndex'](L['indices']),M['setAttribute']('position',new k(L['vertices'],0x3)),L[a7(0xb4)]['length']>0x0&&M[a7(0xa8)]('normal',new k(L[a7(0xb4)],0x3)),L['uvs']['length']>0x0&&M['setAttribute']('uv',new k(L['uvs'],0x2)),L['colors']['length']>0x0&&M['setAttribute']('color',new k(L['colors'],0x3)),(L['faceVertexUvs'][a7(0xb7)]>0x0||L['faceVertexColors']['length']>0x0)&&(M=M['toNonIndexed'](),L['faceVertexUvs']['length']>0x0&&M['setAttribute']('uv',new k(L['faceVertexUvs'],0x2)),L['faceVertexColors']['length']>0x0&&M[a7(0xa8)]('color',new k(L['faceVertexColors'],0x3)));for(let N of Object['keys'](K[a7(0xbc)]))L[N]['length']>0x0&&M['setAttribute'](N,new k(L[N],K[a7(0xbc)][N]['length']));return M[a7(0xb2)](),M;}function E(L,M,N,O){const a8=d;if(M==='vertex'){L['vertices'][a8(0xa3)](N[O['attrX']],N[O[a8(0xb8)]],N[O['attrZ']]),O['attrNX']!==null&&O[a8(0xa6)]!==null&&O['attrNZ']!==null&&L[a8(0xb4)]['push'](N[O['attrNX']],N[O['attrNY']],N[O['attrNZ']]),O[a8(0x99)]!==null&&O['attrT']!==null&&L['uvs'][a8(0xa3)](N[O[a8(0x99)]],N[O['attrT']]),O['attrR']!==null&&O['attrG']!==null&&O[a8(0xb1)]!==null&&(o['setRGB'](N[O[a8(0x9c)]]/0xff,N[O['attrG']]/0xff,N[O[a8(0xb1)]]/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===a8(0x98)){let R=N['vertex_indices']||N['vertex_index'],S=N[a8(0xbd)];R['length']===0x3?(L['indices']['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']['push'](R[0x0],R[0x1],R[0x3]),L['indices']['push'](R[0x1],R[0x2],R[0x3])),O['attrR']!==null&&O[a8(0xaf)]!==null&&O['attrB']!==null&&(o['setRGB'](N[O['attrR']]/0xff,N[O[a8(0xaf)]]/0xff,N[O[a8(0xb1)]]/0xff,l),L['faceVertexColors']['push'](o['r'],o['g'],o['b']),L['faceVertexColors']['push'](o['r'],o['g'],o['b']),L[a8(0x9a)]['push'](o['r'],o['g'],o['b']));}}}function F(L,M){const a9=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[a9(0xb3)]['read'](L+O);O+=Q['countReader']['size'];for(let U=0x0;U<T;U++)S[a9(0xa3)](R['read'](L+O)),O+=R[a9(0xa4)];N[Q['name']]=S;}else N[Q['name']]=R[a9(0xa1)](L+O),O+=R['size'];}return[N,O];}function G(L,M,N){const ab=d;function O(P,Q,R){const aa=d;switch(Q){case'int8':case'char':return{'read':S=>P['getInt8'](S),'size':0x1};case aa(0xab):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['getUint32'](S,R),'size':0x4};case'float32':case'float':return{'read':S=>P['getFloat32'](S,R),'size':0x4};case'float64':case'double':return{'read':S=>P['getFloat64'](S,R),'size':0x8};}}for(let P=0x0,Q=L['length'];P<Q;P++){let R=L[P];R['type']==='list'?(R[ab(0xb3)]=O(M,R['countType'],N),R['valueReader']=O(M,R['itemType'],N)):R['valueReader']=O(M,R['type'],N);}}function H(L,M){const ac=d;let N=A(),O=M[ac(0x9e)]==='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['count'];W++){Q=F(R,U),R+=Q[0x1];let X=Q[0x0];E(N,T['name'],X,V);}}return D(N);}function I(L){const ad=d;let M=0x0,N=!0x0,O='',P=[],Q=new TextDecoder()['decode'](L['subarray'](0x0,0x5)),R=/^ply\r\n/['test'](Q);do{let S=String['fromCharCode'](L[M++]);S!=='\x0a'&&S!=='\x0d'?O+=S:(O==='end_header'&&(N=!0x1),O!==''&&(P['push'](O),O=''));}while(N&&M<L['length']);return R===!0x0&&M++,{'headerText':P[ad(0xb9)]('\x0d')+'\x0d','headerLength':M};}let J,K=this;if(q instanceof ArrayBuffer){let L=new Uint8Array(q),{headerText:M,headerLength:N}=I(L),O=w(M,N);J=O['format']==='ascii'?C(new TextDecoder()['decode'](L),O):H(q,O);}else J=C(q,w(q));return J;}},c=class{constructor(m){this['arr']=m,this['i']=0x0;}['empty'](){return this['i']>=this['arr']['length'];}[ae(0xb5)](){return this['arr'][this['i']++];}};function d(a,c){a=a-0x92;const e=b();let f=e[a];return f;}export{s as PLYLoader};
|