@ridp/threejs 1.2.2 → 1.3.0
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/hooks.cjs +1 -1
- package/dist/hooks.js +1 -1
- package/dist/threejs.cjs +1 -1
- package/dist/threejs.js +54 -53
- package/dist/{useGLTFLoader-DEwFr0G4.cjs → useGLTFLoader-2awW2QaH.cjs} +3 -3
- package/dist/{useGLTFLoader-Cw4DG52q.js → useGLTFLoader-BBGTGOYm.js} +235 -235
- package/package.json +9 -7
package/dist/hooks.cjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./useGLTFLoader-
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./useGLTFLoader-2awW2QaH.cjs");exports.intersectColor=e.intersectColor;exports.obbObjects=e.obbObjects;exports.useGLTFLoader=e.useGLTFLoader;exports.useObb=e.useObb;exports.useRaycaster=e.useRaycaster;exports.useThreeJs=e.useThreeJs;
|
package/dist/hooks.js
CHANGED
package/dist/threejs.cjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";var
|
|
1
|
+
"use strict";var b=Object.defineProperty;var O=(l,e,s)=>e in l?b(l,e,{enumerable:!0,configurable:!0,writable:!0,value:s}):l[e]=s;var t=(l,e,s)=>O(l,typeof e!="symbol"?e+"":e,s);Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const a=require("./useGLTFLoader-2awW2QaH.cjs"),i=require("./modelSerialize-Ds_2KBaA.cjs"),u=require("./common-C1rNPPkt.cjs"),o=require("three"),v="1.2.0",L={enableDamping:!0,dampingFactor:.25,screenSpacePanning:!1,minDistance:.1,maxDistance:1e3,maxPolarAngle:o.MathUtils.degToRad(60)};class m{constructor(e,s){t(this,"isReady",!1);t(this,"scene",null);t(this,"camera",null);t(this,"renderer",null);t(this,"control",null);t(this,"css3dRenderer",null);t(this,"el",null);t(this,"renderRequested",!1);t(this,"selector",null);t(this,"eventsListener",{});t(this,"stats",null);t(this,"isDispose",!1);t(this,"version","0.0.0");t(this,"initOpt",{css3d:!1,stats:!1,renderType:"change",initListener:"True",control:{init:!0,options:{}}});t(this,"setup",e=>{this.isDispose=!1,this.selector=e,this.el=document.querySelector(e);const s=Math.tan(Math.PI/180*this.camera.fov/2),[r,c]=this.getTargetSize();if(this.camera.aspect=r/c,this.camera.position.set(47,39,100),this.camera.fov=360/Math.PI*Math.atan(s*(c/r)),this.camera.lookAt(0,0,0),this.camera.updateProjectionMatrix(),this.renderer.setPixelRatio(window.devicePixelRatio),this.renderer.setSize(r,c),this.el.appendChild(this.renderer.domElement),this.initOpt.control&&this.initOpt.control.init){this.control=i.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]})}setTimeout(()=>{this.isReady=!0},20),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.initListener()});t(this,"onContextLost",e=>{e.preventDefault(),cancelAnimationFrame(this.animate)});t(this,"onContextRestored",e=>{e.preventDefault(),this.dispose(),setTimeout(()=>{this.setup(this.selector)},20)});t(this,"initListener",()=>{this.initOpt.initListener=="True"&&window&&window.addEventListener("resize",()=>this.onResize(),!1),this.renderer.domElement.addEventListener("webglcontextlost",this.onContextLost,!1),this.renderer.domElement.addEventListener("webglcontextrestored",this.onContextRestored,!1)});t(this,"removeListener",()=>{window&&window.removeEventListener("resize",this.onResize,!1),this.renderer.domElement.removeEventListener("webglcontextlost",this.onContextLost.bind(m),!1),this.renderer.domElement.removeEventListener("webglcontextrestored",this.onContextRestored.bind(m),!1)});t(this,"animate",()=>{this.initOpt.renderType==="loop"&&this.onRender(),requestAnimationFrame(this.animate)});t(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),this.eventsListener.onRender&&this.eventsListener.onRender.length&&this.eventsListener.onRender.forEach(e=>e()))});t(this,"requestRenderIfNotRequested",()=>{this.renderRequested||(this.renderRequested=!0,requestAnimationFrame(()=>{this.onRender()}))});t(this,"onResize",()=>{setTimeout(()=>{const e=Math.tan(Math.PI/180*this.camera.fov/2),[s,r]=this.getTargetSize();this.camera.aspect=s/r,this.camera.fov=360/Math.PI*Math.atan(e*(r/s)),this.camera.updateProjectionMatrix(),this.camera.lookAt(this.scene.position),this.renderer.setSize(s,r),this.css3dRenderer&&this.css3dRenderer.setSize(s,r),this.onRender()},0)});t(this,"frameArea",(e,s,r)=>{const c=new o.Box3().setFromObject(e),h=c.getSize(new o.Vector3).length(),n=c.getCenter(new o.Vector3);r&&n.add(r);const f=h*s*.5,R=o.MathUtils.degToRad(this.camera.fov*.5),g=f/Math.tan(R),p=new o.Vector3().subVectors(this.camera.position,n).multiply(new o.Vector3(1,1,1)).normalize().multiplyScalar(g).add(n),d={x:p.x,y:p.y,z:p.z,lookAt_x:n.x,lookAt_y:n.y,lookAt_z:n.z};return this.camera.position.set(d.x,d.y,d.z),this.camera.lookAt(d.lookAt_x,d.lookAt_y,d.lookAt_z),this.camera.updateProjectionMatrix(),this.control.target.copy(n),this.control.update(),h});t(this,"on",(e,s)=>{!e||!s||(this.eventsListener[e]||(this.eventsListener[e]=[]),this.eventsListener[e].push(s))});this.isReady=!1,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}),this.version=v,s&&(this.initOpt=Object.assign(this.initOpt,s)),e&&this.setup(e)}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 i.CSS3DRenderer;const[e,s]=this.getTargetSize();this.css3dRenderer.setSize(e,s),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]}off(e){e||(this.eventsListener={}),this.eventsListener[e]&&(this.eventsListener[e]=[])}dispose(){this.isDispose=!0,this.removeListener(),i.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=i.ImageLoader;exports.createArrowHelper=i.createArrowHelper;exports.createAxesHelper=i.createAxesHelper;exports.createBox3Helper=i.createBox3Helper;exports.createCameraHelper=i.createCameraHelper;exports.createGridHelper=i.createGridHelper;exports.createMapControls=i.createMapControls;exports.createOrbitControl=i.createOrbitControl;exports.createRaycaster=i.createRaycaster;exports.createStats=i.createStats;exports.dataToObject3D=i.dataToObject3D;exports.disposeThreeObject=i.disposeThreeObject;exports.initEnvImage=i.initEnvImage;exports.object3DToData=i.object3DToData;exports.createInfoPlane=u.createInfoPlane;exports.createTagPlane=u.createTagPlane;exports.getCommonParent=u.getCommonParent;exports.ThreeIns=m;
|
package/dist/threejs.js
CHANGED
|
@@ -1,23 +1,22 @@
|
|
|
1
|
-
var
|
|
2
|
-
var
|
|
3
|
-
var t = (a, e, s) =>
|
|
4
|
-
import { I, i as
|
|
5
|
-
import { d as
|
|
6
|
-
import { I as
|
|
7
|
-
import { c as
|
|
8
|
-
import { MathUtils as
|
|
9
|
-
|
|
10
|
-
const C = "1.2.1", E = {
|
|
1
|
+
var R = Object.defineProperty;
|
|
2
|
+
var g = (a, e, s) => e in a ? R(a, e, { enumerable: !0, configurable: !0, writable: !0, value: s }) : a[e] = s;
|
|
3
|
+
var t = (a, e, s) => g(a, typeof e != "symbol" ? e + "" : e, s);
|
|
4
|
+
import { I as q, i as F, o as j, c as I, b as k, a as H, u as W } from "./useGLTFLoader-BBGTGOYm.js";
|
|
5
|
+
import { d as x, C as v, j as L } from "./modelSerialize-5oJb1ka7.js";
|
|
6
|
+
import { I as V, h as _, g as G, b as N, c as J, a as U, e as Y, f as K, i as Q, l as X, k as Z, o as $ } from "./modelSerialize-5oJb1ka7.js";
|
|
7
|
+
import { c as te, a as se, g as ie } from "./common-D1_IztgM.js";
|
|
8
|
+
import { MathUtils as m, Scene as O, PerspectiveCamera as b, WebGLRenderer as y, Box3 as z, Vector3 as h } from "three";
|
|
9
|
+
const w = "1.2.0", S = {
|
|
11
10
|
enableDamping: !0,
|
|
12
11
|
dampingFactor: 0.25,
|
|
13
12
|
screenSpacePanning: !1,
|
|
14
13
|
minDistance: 0.1,
|
|
15
14
|
maxDistance: 1e3,
|
|
16
|
-
maxPolarAngle:
|
|
15
|
+
maxPolarAngle: m.degToRad(60)
|
|
17
16
|
};
|
|
18
|
-
class
|
|
17
|
+
class l {
|
|
19
18
|
constructor(e, s) {
|
|
20
|
-
t(this, "isReady",
|
|
19
|
+
t(this, "isReady", !1);
|
|
21
20
|
t(this, "scene", null);
|
|
22
21
|
t(this, "camera", null);
|
|
23
22
|
t(this, "renderer", null);
|
|
@@ -44,16 +43,18 @@ class m {
|
|
|
44
43
|
this.isDispose = !1, this.selector = e, this.el = document.querySelector(e);
|
|
45
44
|
const s = Math.tan(Math.PI / 180 * this.camera.fov / 2), [i, r] = this.getTargetSize();
|
|
46
45
|
if (this.camera.aspect = i / r, this.camera.position.set(47, 39, 100), this.camera.fov = 360 / Math.PI * Math.atan(s * (r / i)), this.camera.lookAt(0, 0, 0), this.camera.updateProjectionMatrix(), this.renderer.setPixelRatio(window.devicePixelRatio), this.renderer.setSize(i, r), this.el.appendChild(this.renderer.domElement), this.initOpt.control && this.initOpt.control.init) {
|
|
47
|
-
this.control =
|
|
46
|
+
this.control = x(this.camera, this.renderer.domElement);
|
|
48
47
|
const d = Object.assign(
|
|
49
|
-
|
|
48
|
+
S,
|
|
50
49
|
this.initOpt.control.options || {}
|
|
51
50
|
);
|
|
52
51
|
Object.keys(d).forEach((n) => {
|
|
53
52
|
this.control[n] = d[n];
|
|
54
53
|
});
|
|
55
54
|
}
|
|
56
|
-
|
|
55
|
+
setTimeout(() => {
|
|
56
|
+
this.isReady = !0;
|
|
57
|
+
}, 20), 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(
|
|
57
58
|
"change",
|
|
58
59
|
this.requestRenderIfNotRequested
|
|
59
60
|
), this.initListener();
|
|
@@ -62,9 +63,9 @@ class m {
|
|
|
62
63
|
e.preventDefault(), cancelAnimationFrame(this.animate);
|
|
63
64
|
});
|
|
64
65
|
t(this, "onContextRestored", (e) => {
|
|
65
|
-
e.preventDefault(), this.dispose(),
|
|
66
|
+
e.preventDefault(), this.dispose(), setTimeout(() => {
|
|
66
67
|
this.setup(this.selector);
|
|
67
|
-
});
|
|
68
|
+
}, 20);
|
|
68
69
|
});
|
|
69
70
|
t(this, "initListener", () => {
|
|
70
71
|
this.initOpt.initListener == "True" && window && window.addEventListener("resize", () => this.onResize(), !1), this.renderer.domElement.addEventListener(
|
|
@@ -80,11 +81,11 @@ class m {
|
|
|
80
81
|
t(this, "removeListener", () => {
|
|
81
82
|
window && window.removeEventListener("resize", this.onResize, !1), this.renderer.domElement.removeEventListener(
|
|
82
83
|
"webglcontextlost",
|
|
83
|
-
this.onContextLost.bind(
|
|
84
|
+
this.onContextLost.bind(l),
|
|
84
85
|
!1
|
|
85
86
|
), this.renderer.domElement.removeEventListener(
|
|
86
87
|
"webglcontextrestored",
|
|
87
|
-
this.onContextRestored.bind(
|
|
88
|
+
this.onContextRestored.bind(l),
|
|
88
89
|
!1
|
|
89
90
|
);
|
|
90
91
|
});
|
|
@@ -100,10 +101,10 @@ class m {
|
|
|
100
101
|
}));
|
|
101
102
|
});
|
|
102
103
|
t(this, "onResize", () => {
|
|
103
|
-
|
|
104
|
+
setTimeout(() => {
|
|
104
105
|
const e = Math.tan(Math.PI / 180 * this.camera.fov / 2), [s, i] = this.getTargetSize();
|
|
105
106
|
this.camera.aspect = s / i, this.camera.fov = 360 / Math.PI * Math.atan(e * (i / s)), this.camera.updateProjectionMatrix(), this.camera.lookAt(this.scene.position), this.renderer.setSize(s, i), this.css3dRenderer && this.css3dRenderer.setSize(s, i), this.onRender();
|
|
106
|
-
});
|
|
107
|
+
}, 0);
|
|
107
108
|
});
|
|
108
109
|
/**物体视窗自动适应
|
|
109
110
|
*
|
|
@@ -112,9 +113,9 @@ class m {
|
|
|
112
113
|
* @param {Vector3} offset
|
|
113
114
|
*/
|
|
114
115
|
t(this, "frameArea", (e, s, i) => {
|
|
115
|
-
const r = new
|
|
116
|
+
const r = new z().setFromObject(e), d = r.getSize(new h()).length(), n = r.getCenter(new h());
|
|
116
117
|
i && n.add(i);
|
|
117
|
-
const
|
|
118
|
+
const p = d * s * 0.5, u = m.degToRad(this.camera.fov * 0.5), f = p / Math.tan(u), c = new h().subVectors(this.camera.position, n).multiply(new h(1, 1, 1)).normalize().multiplyScalar(f).add(n), o = {
|
|
118
119
|
x: c.x,
|
|
119
120
|
y: c.y,
|
|
120
121
|
z: c.z,
|
|
@@ -131,19 +132,19 @@ class m {
|
|
|
131
132
|
t(this, "on", (e, s) => {
|
|
132
133
|
!e || !s || (this.eventsListener[e] || (this.eventsListener[e] = []), this.eventsListener[e].push(s));
|
|
133
134
|
});
|
|
134
|
-
this.isReady
|
|
135
|
+
this.isReady = !1, this.scene = new O({}), this.camera = new b(50, 1, 0.1, 2e3), this.renderer = new y({
|
|
135
136
|
antialias: !0,
|
|
136
137
|
alpha: !0,
|
|
137
138
|
precision: "mediump",
|
|
138
139
|
logarithmicDepthBuffer: !0
|
|
139
|
-
}), this.version =
|
|
140
|
+
}), this.version = w, s && (this.initOpt = Object.assign(this.initOpt, s)), e && this.setup(e);
|
|
140
141
|
}
|
|
141
142
|
initStats() {
|
|
142
143
|
const e = new Stats();
|
|
143
144
|
e.dom.style.cssText = "position:absolute;top:0;left:0;cursor:pointer;opacity:0.9;z-index:10000", this.el.appendChild(e.dom);
|
|
144
145
|
}
|
|
145
146
|
initCss3dRenderer() {
|
|
146
|
-
this.css3dRenderer = new
|
|
147
|
+
this.css3dRenderer = new v();
|
|
147
148
|
const [e, s] = this.getTargetSize();
|
|
148
149
|
this.css3dRenderer.setSize(e, s), 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);
|
|
149
150
|
}
|
|
@@ -155,33 +156,33 @@ class m {
|
|
|
155
156
|
e || (this.eventsListener = {}), this.eventsListener[e] && (this.eventsListener[e] = []);
|
|
156
157
|
}
|
|
157
158
|
dispose() {
|
|
158
|
-
this.isDispose = !0, this.removeListener(),
|
|
159
|
+
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;
|
|
159
160
|
}
|
|
160
161
|
}
|
|
161
162
|
export {
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
163
|
+
q as IDBCache,
|
|
164
|
+
V as ImageLoader,
|
|
165
|
+
l as ThreeIns,
|
|
166
|
+
_ as createArrowHelper,
|
|
167
|
+
G as createAxesHelper,
|
|
168
|
+
N as createBox3Helper,
|
|
169
|
+
J as createCameraHelper,
|
|
170
|
+
U as createGridHelper,
|
|
171
|
+
te as createInfoPlane,
|
|
172
|
+
Y as createMapControls,
|
|
173
|
+
x as createOrbitControl,
|
|
174
|
+
K as createRaycaster,
|
|
175
|
+
Q as createStats,
|
|
176
|
+
se as createTagPlane,
|
|
177
|
+
X as dataToObject3D,
|
|
178
|
+
L as disposeThreeObject,
|
|
179
|
+
ie as getCommonParent,
|
|
180
|
+
Z as initEnvImage,
|
|
181
|
+
F as intersectColor,
|
|
182
|
+
j as obbObjects,
|
|
183
|
+
$ as object3DToData,
|
|
184
|
+
I as useGLTFLoader,
|
|
185
|
+
k as useObb,
|
|
186
|
+
H as useRaycaster,
|
|
187
|
+
W as useThreeJs
|
|
187
188
|
};
|