@ridp/threejs 1.0.10 → 1.0.12
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/dist/threejs.cjs +1 -1
- package/dist/threejs.js +14 -13
- package/package.json +1 -1
package/dist/threejs.cjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";var b=Object.defineProperty;var O=(d,e,t)=>e in d?b(d,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):d[e]=t;var s=(d,e,t)=>O(d,typeof e!="symbol"?e+"":e,t);Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const a=require("./useGLTFLoader-BiveFkS6.cjs"),r=require("./ImageLoader-DwvBWW6h.cjs"),f=require("./common-BHi3qsZW.cjs"),o=require("three"),m=require("vue"),
|
|
1
|
+
"use strict";var b=Object.defineProperty;var O=(d,e,t)=>e in d?b(d,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):d[e]=t;var s=(d,e,t)=>O(d,typeof e!="symbol"?e+"":e,t);Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const a=require("./useGLTFLoader-BiveFkS6.cjs"),r=require("./ImageLoader-DwvBWW6h.cjs"),f=require("./common-BHi3qsZW.cjs"),o=require("three"),m=require("vue"),L={enableDamping:!0,dampingFactor:.25,screenSpacePanning:!1,minDistance:.1,maxDistance:1e3,maxPolarAngle:o.MathUtils.degToRad(60)};class p{constructor(e,t){s(this,"isReady",m.ref(!1));s(this,"scene",null);s(this,"camera",null);s(this,"renderer",null);s(this,"control",null);s(this,"css3dRenderer",null);s(this,"el",null);s(this,"renderRequested",!1);s(this,"selector",null);s(this,"eventsListener",{});s(this,"stats",null);s(this,"isDispose",!1);s(this,"initOpt",{css3d:!1,stats:!1,renderType:"change",initListener:"True",control:{init:!0,options:{}}});s(this,"onContextLost",e=>{e.preventDefault(),cancelAnimationFrame(this.animate)});s(this,"onContextRestored",e=>{e.preventDefault(),this.dispose(),m.nextTick(()=>{this.setup(this.selector)})});s(this,"initListener",()=>{window&&window.addEventListener("resize",()=>this.onResize(),!1),this.renderer.domElement.addEventListener("webglcontextlost",this.onContextLost,!1),this.renderer.domElement.addEventListener("webglcontextrestored",this.onContextRestored,!1)});s(this,"animate",()=>{this.initOpt.renderType==="loop"&&this.onRender(),requestAnimationFrame(this.animate)});s(this,"onRender",()=>{this.isDispose||(this.renderRequested=!1,this.stats&&this.stats.update(),this.control&&this.control.update(),this.renderer.render(this.scene,this.camera),this.css3dRenderer&&this.css3dRenderer.render(this.scene,this.camera))});s(this,"requestRenderIfNotRequested",()=>{this.renderRequested||(this.renderRequested=!0,requestAnimationFrame(()=>{this.onRender()}))});s(this,"onResize",()=>{m.nextTick(()=>{const e=Math.tan(Math.PI/180*this.camera.fov/2),[t,i]=this.getTargetSize();this.camera.aspect=t/i,this.camera.fov=360/Math.PI*Math.atan(e*(i/t)),this.camera.updateProjectionMatrix(),this.camera.lookAt(this.scene.position),this.renderer.setSize(t,i),this.css3dRenderer&&this.css3dRenderer.setSize(t,i),this.onRender()})});this.isReady.value=!1,t&&(this.initOpt=Object.assign(this.initOpt,t)),e&&this.setup(e)}setup(e){this.isDispose=!1,this.selector=e,this.el=document.querySelector(e),this.scene=new o.Scene({}),this.camera=new o.PerspectiveCamera(50,1,.1,2e3),this.renderer=new o.WebGLRenderer({antialias:!0,alpha:!0,precision:"mediump",logarithmicDepthBuffer:!0});const t=Math.tan(Math.PI/180*this.camera.fov/2),[i,c]=this.getTargetSize();if(this.camera.aspect=i/c,this.camera.position.set(47,39,100),this.camera.fov=360/Math.PI*Math.atan(t*(c/i)),this.camera.lookAt(0,0,0),this.camera.updateProjectionMatrix(),this.renderer.setPixelRatio(window.devicePixelRatio),this.renderer.setSize(i,c),this.el.appendChild(this.renderer.domElement),this.initOpt.control&&this.initOpt.control.init){this.control=r.createOrbitControl(this.camera,this.renderer.domElement);const h=Object.assign(L,this.initOpt.control.options||{});Object.keys(h).forEach(n=>{this.control[n]=h[n]})}m.nextTick(()=>this.isReady.value=!0),this.initOpt.stats&&this.initStats(),this.initOpt.css3d&&this.initCss3dRenderer(),this.initOpt.renderType==="loop"?requestAnimationFrame(this.animate):this.initOpt.renderType==="change"&&this.control&&this.control.addEventListener("change",this.requestRenderIfNotRequested),this.initOpt.initListener=="True"&&this.initListener()}removeListener(){window&&window.removeEventListener("resize",this.onResize,!1),this.renderer.domElement.removeEventListener("webglcontextlost",this.onContextLost.bind(p),!1),this.renderer.domElement.removeEventListener("webglcontextrestored",this.onContextRestored.bind(p),!1)}initStats(){const e=new Stats;e.dom.style.cssText="position:absolute;top:0;left:0;cursor:pointer;opacity:0.9;z-index:10000",this.el.appendChild(e.dom)}initCss3dRenderer(){this.css3dRenderer=new r.CSS3DRenderer;const[e,t]=this.getTargetSize();this.css3dRenderer.setSize(e,t),this.css3dRenderer.domElement.style.position="absolute",this.css3dRenderer.domElement.style.pointerEvents="none",this.css3dRenderer.domElement.style.top=0,this.css3dRenderer.domElement.style.left=0,this.el.appendChild(this.css3dRenderer.domElement)}getTargetSize(){const e=document.querySelector(this.selector);return e?[e.clientWidth,e.clientHeight]:[0,0]}frameArea(e,t,i){const c=new o.Box3().setFromObject(e),h=c.getSize(new o.Vector3).length(),n=c.getCenter(new o.Vector3);i&&n.add(i);const R=h*t*.5,g=o.MathUtils.degToRad(this.camera.fov*.5),x=R/Math.tan(g),u=new o.Vector3().subVectors(this.camera.position,n).multiply(new o.Vector3(1,1,1)).normalize().multiplyScalar(x).add(n),l={x:u.x,y:u.y,z:u.z,lookAt_x:n.x,lookAt_y:n.y,lookAt_z:n.z};return this.camera.position.set(l.x,l.y,l.z),this.camera.lookAt(l.lookAt_x,l.lookAt_y,l.lookAt_z),this.camera.updateProjectionMatrix(),this.control.target.copy(n),this.control.update(),h}on(e,t){!e||!t||(this.eventsListener[e]||(this.eventsListener[e]=[]),this.eventsListener[e].push(t))}off(e){e||(this.eventsListener={}),this.eventsListener[e]&&(this.eventsListener[e]=[])}dispose(){this.isDispose=!0,this.removeListener(),r.disposeThreeObject(this.scene),this.renderer.dispose(),this.renderer.domElement.remove(),this.el=null,this.renderer=null,this.camera=null,this.scene=null,this.control=null,this.css3dRenderer=null}}exports.IDBCache=a.IDBCache;exports.intersectColor=a.intersectColor;exports.obbObjects=a.obbObjects;exports.useGLTFLoader=a.useGLTFLoader;exports.useObb=a.useObb;exports.useRaycaster=a.useRaycaster;exports.useThreeJs=a.useThreeJs;exports.ImageLoader=r.ImageLoader;exports.createArrowHelper=r.createArrowHelper;exports.createAxesHelper=r.createAxesHelper;exports.createBox3Helper=r.createBox3Helper;exports.createCameraHelper=r.createCameraHelper;exports.createGridHelper=r.createGridHelper;exports.createMapControls=r.createMapControls;exports.createOrbitControl=r.createOrbitControl;exports.createRaycaster=r.createRaycaster;exports.createStats=r.createStats;exports.disposeThreeObject=r.disposeThreeObject;exports.initEnvImage=r.initEnvImage;exports.createInfoPlane=f.createInfoPlane;exports.createTagPlane=f.createTagPlane;exports.getCommonParent=f.getCommonParent;exports.ThreeIns=p;
|
package/dist/threejs.js
CHANGED
|
@@ -2,10 +2,10 @@ var g = Object.defineProperty;
|
|
|
2
2
|
var x = (a, e, t) => e in a ? g(a, e, { enumerable: !0, configurable: !0, writable: !0, value: t }) : a[e] = t;
|
|
3
3
|
var s = (a, e, t) => x(a, typeof e != "symbol" ? e + "" : e, t);
|
|
4
4
|
import { I, i as j, o as k, c as H, b as W, a as B, u as V } from "./useGLTFLoader-IrwFnR2e.js";
|
|
5
|
-
import { d as v, C as O, j as
|
|
5
|
+
import { d as v, C as O, j as L } from "./ImageLoader-xzOH4Owt.js";
|
|
6
6
|
import { I as G, h as N, g as J, b as U, c as Y, a as K, e as Q, f as X, i as Z, k as $ } from "./ImageLoader-xzOH4Owt.js";
|
|
7
7
|
import { c as te, a as se, g as ie } from "./common-POkqA27v.js";
|
|
8
|
-
import { MathUtils as p, Scene as
|
|
8
|
+
import { MathUtils as p, Scene as b, PerspectiveCamera as y, WebGLRenderer as z, Box3 as w, Vector3 as c } from "three";
|
|
9
9
|
import { ref as S, nextTick as l } from "vue";
|
|
10
10
|
const C = {
|
|
11
11
|
enableDamping: !0,
|
|
@@ -33,6 +33,7 @@ class m {
|
|
|
33
33
|
css3d: !1,
|
|
34
34
|
stats: !1,
|
|
35
35
|
renderType: "change",
|
|
36
|
+
initListener: "True",
|
|
36
37
|
control: {
|
|
37
38
|
init: !0,
|
|
38
39
|
options: {}
|
|
@@ -68,10 +69,16 @@ class m {
|
|
|
68
69
|
this.onRender();
|
|
69
70
|
}));
|
|
70
71
|
});
|
|
72
|
+
s(this, "onResize", () => {
|
|
73
|
+
l(() => {
|
|
74
|
+
const e = Math.tan(Math.PI / 180 * this.camera.fov / 2), [t, i] = this.getTargetSize();
|
|
75
|
+
this.camera.aspect = t / i, this.camera.fov = 360 / Math.PI * Math.atan(e * (i / t)), this.camera.updateProjectionMatrix(), this.camera.lookAt(this.scene.position), this.renderer.setSize(t, i), this.css3dRenderer && this.css3dRenderer.setSize(t, i), this.onRender();
|
|
76
|
+
});
|
|
77
|
+
});
|
|
71
78
|
this.isReady.value = !1, t && (this.initOpt = Object.assign(this.initOpt, t)), e && this.setup(e);
|
|
72
79
|
}
|
|
73
80
|
setup(e) {
|
|
74
|
-
this.isDispose = !1, this.selector = e, this.el = document.querySelector(e), this.scene = new
|
|
81
|
+
this.isDispose = !1, this.selector = e, this.el = document.querySelector(e), this.scene = new b({}), this.camera = new y(50, 1, 0.1, 2e3), this.renderer = new z({
|
|
75
82
|
antialias: !0,
|
|
76
83
|
alpha: !0,
|
|
77
84
|
precision: "mediump",
|
|
@@ -91,7 +98,7 @@ class m {
|
|
|
91
98
|
l(() => this.isReady.value = !0), this.initOpt.stats && this.initStats(), this.initOpt.css3d && this.initCss3dRenderer(), this.initOpt.renderType === "loop" ? requestAnimationFrame(this.animate) : this.initOpt.renderType === "change" && this.control && this.control.addEventListener(
|
|
92
99
|
"change",
|
|
93
100
|
this.requestRenderIfNotRequested
|
|
94
|
-
), this.initListener();
|
|
101
|
+
), this.initOpt.initListener == "True" && this.initListener();
|
|
95
102
|
}
|
|
96
103
|
removeListener() {
|
|
97
104
|
window && window.removeEventListener("resize", this.onResize, !1), this.renderer.domElement.removeEventListener(
|
|
@@ -117,12 +124,6 @@ class m {
|
|
|
117
124
|
const e = document.querySelector(this.selector);
|
|
118
125
|
return e ? [e.clientWidth, e.clientHeight] : [0, 0];
|
|
119
126
|
}
|
|
120
|
-
onResize() {
|
|
121
|
-
l(() => {
|
|
122
|
-
const e = Math.tan(Math.PI / 180 * this.camera.fov / 2), [t, i] = getTargetSize();
|
|
123
|
-
this.camera.aspect = t / i, this.camera.fov = 360 / Math.PI * Math.atan(e * (i / t)), this.camera.updateProjectionMatrix(), this.camera.lookAt(this.scene.position), this.renderer.setSize(t, i), this.css3dRenderer && this.css3dRenderer.setSize(t, i), this.onRender();
|
|
124
|
-
});
|
|
125
|
-
}
|
|
126
127
|
/**物体视窗自动适应
|
|
127
128
|
*
|
|
128
129
|
* @param {Object3D} model
|
|
@@ -130,7 +131,7 @@ class m {
|
|
|
130
131
|
* @param {Vector3} offset
|
|
131
132
|
*/
|
|
132
133
|
frameArea(e, t, i) {
|
|
133
|
-
const r = new
|
|
134
|
+
const r = new w().setFromObject(e), d = r.getSize(new c()).length(), n = r.getCenter(new c());
|
|
134
135
|
i && n.add(i);
|
|
135
136
|
const u = d * t * 0.5, f = p.degToRad(this.camera.fov * 0.5), R = u / Math.tan(f), h = new c().subVectors(this.camera.position, n).multiply(new c(1, 1, 1)).normalize().multiplyScalar(R).add(n), o = {
|
|
136
137
|
x: h.x,
|
|
@@ -153,7 +154,7 @@ class m {
|
|
|
153
154
|
e || (this.eventsListener = {}), this.eventsListener[e] && (this.eventsListener[e] = []);
|
|
154
155
|
}
|
|
155
156
|
dispose() {
|
|
156
|
-
this.isDispose = !0, this.removeListener(),
|
|
157
|
+
this.isDispose = !0, this.removeListener(), L(this.scene), this.renderer.dispose(), this.renderer.domElement.remove(), this.el = null, this.renderer = null, this.camera = null, this.scene = null, this.control = null, this.css3dRenderer = null;
|
|
157
158
|
}
|
|
158
159
|
}
|
|
159
160
|
export {
|
|
@@ -171,7 +172,7 @@ export {
|
|
|
171
172
|
X as createRaycaster,
|
|
172
173
|
Z as createStats,
|
|
173
174
|
se as createTagPlane,
|
|
174
|
-
|
|
175
|
+
L as disposeThreeObject,
|
|
175
176
|
ie as getCommonParent,
|
|
176
177
|
$ as initEnvImage,
|
|
177
178
|
j as intersectColor,
|