PageSourceSearch

https://wiha.com/theme/d526f1b6dff22d973abb0afcbfa55c26/js/storefront/storefront.OrbitControls.1a6d47.js

js wiha.com collected 2026-09-24 10:11:53 UTC 12,149 bytes, 1 lines download raw bytes

1"use strict";(self.webpackChunk=self.webpackChunk||[]).push([[96976],{6976:(e,t,n)=>{n.d(t,{OrbitControls:()=>m});var o=n(6173);let a={type:"change"},i={type:"start"},r={type:"end"},c=new o.Ray,s=new o.Plane,l=Math.cos(70*o.MathUtils.DEG2RAD);class m extends o.EventDispatcher{constructor(e,t){super(),this.object=e,this.domElement=t,this.domElement.style.touchAction="none",this.enabled=!0,this.target=new o.Vector3,this.minDistance=0,this.maxDistance=1/0,this.minZoom=0,this.maxZoom=1/0,this.minPolarAngle=0,this.maxPolarAngle=Math.PI,this.minAzimuthAngle=-1/0,this.maxAzimuthAngle=1/0,this.enableDamping=!1,this.dampingFactor=.05,this.enableZoom=!0,this.zoomSpeed=1,this.enableRotate=!0,this.rotateSpeed=1,this.enablePan=!0,this.panSpeed=1,this.screenSpacePanning=!0,this.keyPanSpeed=7,this.zoomToCursor=!1,this.autoRotate=!1,this.autoRotateSpeed=2,this.keys={LEFT:"ArrowLeft",UP:"ArrowUp",RIGHT:"ArrowRight",BOTTOM:"ArrowDown"},this.mouseButtons={LEFT:o.MOUSE.ROTATE,MIDDLE:o.MOUSE.DOLLY,RIGHT:o.MOUSE.PAN},this.touches={ONE:o.TOUCH.ROTATE,TWO:o.TOUCH.DOLLY_PAN},this.target0=this.target.clone(),this.position0=this.object.position.clone(),this.zoom0=this.object.zoom,this._domElementKeyEvents=null,this.getPolarAngle=function(){return h.phi},this.getAzimuthalAngle=function(){return h.theta},this.getDistance=function(){return this.object.position.distanceTo(this.target)},this.listenToKeyEvents=function(e){e.addEventListener("keydown",$),this._domElementKeyEvents=e},this.stopListenToKeyEvents=function(){this._domElementKeyEvents.removeEventListener("keydown",$),this._domElementKeyEvents=null},this.saveState=function(){n.target0.copy(n.target),n.position0.copy(n.object.position),n.zoom0=n.object.zoom},this.reset=function(){n.target.copy(n.target0),n.object.position.copy(n.position0),n.object.zoom=n.zoom0,n.object.updateProjectionMatrix(),n.dispatchEvent(a),n.update(),p=m.NONE},this.update=function(){let t=new o.Vector3,i=new o.Quaternion().setFromUnitVectors(e.up,new o.Vector3(0,1,0)),r=i.clone().invert(),E=new o.Vector3,f=new o.Quaternion,y=new o.Vector3,O=2*Math.PI;return function(){let T=n.object.position;t.copy(T).sub(n.target),t.applyQuaternion(i),h.setFromVector3(t),n.autoRotate&&p===m.NONE&&k(2*Math.PI/60/60*n.autoRotateSpeed),n.enableDamping?(h.theta+=d.theta*n.dampingFactor,h.phi+=d.phi*n.dampingFactor):(h.theta+=d.theta,h.phi+=d.phi);let P=n.minAzimuthAngle,j=n.maxAzimuthAngle;isFinite(P)&&isFinite(j)&&(P<-Math.PI?P+=O:P>Math.PI&&(P-=O),j<-Math.PI?j+=O:j>Math.PI&&(j-=O),P<=j?h.theta=Math.max(P,Math.min(j,h.theta)):h.theta=h.theta>(P+j)/2?Math.max(P,h.theta):Math.min(j,h.theta)),h.phi=Math.max(n.minPolarAngle,Math.min(n.maxPolarAngle,h.phi)),h.makeSafe(),!0===n.enableDamping?n.target.addScaledVector(g,n.dampingFactor):n.target.add(g),n.zoomToCursor&&L||n.object.isOrthographicCamera?h.radius=z(h.radius):h.radius=z(h.radius*b),t.setFromSpherical(h),t.applyQuaternion(r),T.copy(n.target).add(t),n.object.lookAt(n.target),!0===n.enableDamping?(d.theta*=1-n.dampingFactor,d.phi*=1-n.dampingFactor,g.multiplyScalar(1-n.dampingFactor)):(d.set(0,0,0),g.set(0,0,0));let w=!1;if(n.zoomToCursor&&L){let a=null;if(n.object.isPerspectiveCamera){let e=t.length();a=z(e*b);let o=e-a;n.object.position.addScaledVector(A,o),n.object.updateMatrixWorld()}else if(n.object.isOrthographicCamera){let e=new o.Vector3(M.x,M.y,0
1);e.unproject(n.object),n.object.zoom=Math.max(n.minZoom,Math.min(n.maxZoom,n.object.zoom/b)),n.object.updateProjectionMatrix(),w=!0;let i=new o.Vector3(M.x,M.y,0);i.unproject(n.object),n.object.position.sub(i).add(e),n.object.updateMatrixWorld(),a=t.length()}else console.warn("WARNING: OrbitControls.js encountered an unknown camera type - zoom to cursor disabled."),n.zoomToCursor=!1;null!==a&&(this.screenSpacePanning?n.target.set(0,0,-1).transformDirection(n.object.matrix).multiplyScalar(a).add(n.object.position):(c.origin.copy(n.object.position),c.direction.set(0,0,-1).transformDirection(n.object.matrix),Math.abs(n.object.up.dot(c.direction))<l?e.lookAt(n.target):(s.setFromNormalAndCoplanarPoint(n.object.up,n.target),c.intersectPlane(s,n.target))))}else n.object.isOrthographicCamera&&(n.object.zoom=Math.max(n.minZoom,Math.min(n.maxZoom,n.object.zoom/b)),n.object.updateProjectionMatrix(),w=!0);return b=1,L=!1,!!(w||E.distanceToSquared(n.object.position)>u||8*(1-f.dot(n.object.quaternion))>u||y.distanceToSquared(n.target)>0)&&(n.dispatchEvent(a),E.copy(n.object.position),f.copy(n.object.quaternion),y.copy(n.target),w=!1,!0)}}(),this.dispose=function(){n.domElement.removeEventListener("contextmenu",ee),n.domElement.removeEventListener("pointerdown",B),n.domElement.removeEventListener("pointercancel",Q),n.domElement.removeEventListener("wheel",J),n.domElement.removeEventListener("pointermove",q),n.domElement.removeEventListener("pointerup",Q),null!==n._domElementKeyEvents&&(n._domElementKeyEvents.removeEventListener("keydown",$),n._domElementKeyEvents=null)};let n=this,m={NONE:-1,ROTATE:0,DOLLY:1,PAN:2,TOUCH_ROTATE:3,TOUCH_PAN:4,TOUCH_DOLLY_PAN:5,TOUCH_DOLLY_ROTATE:6},p=m.NONE,u=1e-6,h=new o.Spherical,d=new o.Spherical,b=1,g=new o.Vector3,E=new o.Vector2,f=new o.Vector2,y=new o.Vector2,O=new o.Vector2,T=new o.Vector2,P=new o.Vector2,j=new o.Vector2,w=new o.Vector2,v=new o.Vector2,A=new o.Vector3,M=new o.Vector2,L=!1,N=[],C={};function S(){return Math.pow(.95,n.zoomSpeed)}function k(e){d.theta-=e}function x(e){d.phi-=e}let R=function(){let e=new o.Vector3;return function(t,n){e.setFromMatrixColumn(n,0),e.multiplyScalar(-t),g.add(e)}}(),Y=function(){let e=new o.Vector3;return function(t,o){!0===n.screenSpacePanning?e.setFromMatrixColumn(o,1):(e.setFromMatrixColumn(o,0),e.crossVectors(n.object.up,e)),e.multiplyScalar(t),g.add(e)}}(),D=function(){let e=new o.Vector3;return function(t,o){let a=n.domElement;if(n.object.isPerspectiveCamera){let i=n.object.position;e.copy(i).sub(n.target);let r=e.length();R(2*t*(r*=Math.tan(n.object.fov/2*Math.PI/180))/a.clientHeight,n.object.matrix),Y(2*o*r/a.clientHeight,n.object.matrix)}else n.object.isOrthographicCamera?(R(t*(n.object.right-n.object.left)/n.object.zoom/a.clientWidth,n.object.matrix),Y(o*(n.object.top-n.object.bottom)/n.object.zoom/a.clientHeight,n.object.matrix)):(console.warn("WARNING: OrbitControls.js encountered an unknown camera type - pan disabled."),n.enablePan=!1)}}();function I(e){n.object.isPerspectiveCamera||n.object.isOrthographicCamera?b/=e:(console.warn("WARNING: OrbitControls.js encountered an unknown camera type - dolly/zoom disabled."),n.enableZoom=!1)}function H(e){n.object.isPerspectiveCamera||n.object.isOrthographicCamera?b*=e:(console.warn("WARNING: OrbitControls.js encountered an unknown camera type - dolly/zoom disabled."),n.enableZoom=!1)}function V(t){if(!n.zoomToCursor)return;L=!0;let o=n.domElement.getBoundingClientRect(),a=t.clientX-o.left,i=t.clientY-o.top,r=o.width,c=o.height;M.x=a/r*2-1,M.y=-(2*(i/c))+1,A.set(M.x,M.y,1).unproject(e).sub(e.position).normalize()}function z(e){return Math.max(n.minDistance,Math.min(n.maxDistance,e))}function U(e){E.set(e.clientX,e.clientY)}function _(e){O.set(e.clientX,e.clientY)}function K(){if(1===N.length)E.set(N[0].pageX,N[0].pageY);else{let e=.5*(N[0].pageX+N[1].pageX),t=.5*(N[0].pageY+N[1].pageY);E.set(e,t)}}function X(){if(1===N.length)O.set(N[0].pageX,N[0].pageY);else{let e=.5*(N[0].pageX+N[1].pageX),t=.5*(N[0].pageY+N[1].pageY);O.set(e,t)}}function F(){let e=N[0].pageX-N[1].pageX,t=N[0].pageY-N[1].pageY;j.set(0,Math.sqrt(e*e+t*t))}function Z(e){if(1==N.length)f.set(e.pageX,e.pageY);else{let t=en(e),n=.5*(e.pageX+t.x),o=.5*(e.pageY+t.y);f.set(n,o)}y.subVectors(f,E).multiplyScalar(n.rotateSpeed);let t=n.domElement;k(2*Math.PI*y.x/t.clientHeight),x(2*Math.PI*y.y/t.clientHeight),E.copy(f)}function G(e){if(1===N.length)T.set(e.pageX,e.pageY);else{let t=en(e),n=.5*(e.pageX+t.x),o=.5*(e.pageY+t.y);T.set(n,o)}P.subVectors(T,O).multiplyScalar(n.panSpeed),D(P.x,P.y),O.copy(T)}function W(e){let t=en(e),o=e.pageX-t.x,a=e.pageY-t.y;w.set(0,Math.sqrt(o*o+a*a)),v.set(0,Math.pow(w.y/j.y,n.zoomSpeed)),I(v.y),j.copy(w)}function B(e){!1!==n.enabled&&(0===N.length&&(n.domElement.setPointerCapture(e.pointerId),n.domElement.addEventListener("pointermove",q),n.domElement.addEventListener("pointerup",Q)),N.push(e),"touch"===e.pointerType?function(e){switch(et(e),N.length){case 1:switch(n.touches.ONE){case o.TOUCH.ROTATE:if(!1===n.enableRotate)return;K(),p=m.TOUCH_ROTATE;break;case o.TOUCH.PAN:if(!1===n.enablePan)return;X(),p=m.TOUCH_PAN;break;default:p=m.NONE}break;case 2:switch(n.touches.TWO){case o.TOUCH.DOLLY_PAN:if(!1===n.enableZoom&&!1===n.enablePan)return;n.enableZoom&&F(),n.enablePan&&X(),p=m.TOUCH_DOLLY_PAN;break;case o.TOUCH.DOLLY_ROTATE:if(!1===n.enableZoom&&!1===n.enableRotate)return;n.enableZoom&&F(),n.enableRotate&&K(),p=m.TOUCH_DOLLY_ROTATE;break;default:p=m.NONE}break;default:p=m.NONE}p!==m.NONE&&n.dispatchEvent(i)}(e):function(e){let t;switch(e.button){case 0:t=n.mouseButtons.LEFT;break;case 1:t=n.mouseButtons.MIDDLE;break;case 2:t=n.mouseButtons.RIGHT;break;default:t=-1}switch(t){case o.MOUSE.DOLLY:if(!1===n.enableZoom)return;V(e),j.set(e.clientX,e.clientY),p=m.DOLLY;break;case o.MOUSE.ROTATE:if(e.ctrlKey||e.metaKey||e.shiftKey){if(!1===n.enablePan)return;_(e),p=m.PAN}else{if(!1===n.enableRotate)return;U(e),p=m.ROTATE}break;case o.MOUSE.PAN:if(e.ctrlKey||e.metaKey||e.shiftKey){if(!1===n.enableRotate)return;U(e),p=m.ROTATE}else{if(!1===n.enablePan)return;_(e),p=m.PAN}break;default:p=m.NONE}p!==m.NONE&&n.dispatchEvent(i)}(e))}function q(e){!1!==n.enabled&&("touch"===e.pointerType?function(e){switch(et(e),p){case m.TOUCH_ROTATE:if(!1===n.enableRotate)return;Z(e),n.update();break;case m.TOUCH_PAN:if(!1===n.enablePan)return;G(e),n.update();break;case m.TOUCH_DOLLY_PAN:if(!1===n.enableZoom&&!1===n.enablePan)return;n.enableZoom&&W(e),n.enablePan&&G(e),n.update();break;case m.TOUCH_DOLLY_ROTATE:if(!1===n.enableZoom&&!1===n.enableRotate)return;n.enableZoom&&W(e),n.enableRotate&&Z(e),n.update();break;default:p=m.NONE}}(e):function(e){switch(p){case m.ROTATE:if(!1===n.enableRotate)return;!function(e){f.set(e.clientX,e.clientY),y.subVectors(f,E).multiplyScalar(n.rotateSpeed);let t=n.domElement;k(2*Math.PI*y.x/t.clientHeight),x(2*Math.PI*y.y/t.clientHeight),E.copy(f),n.update()}(e);break;case m.DOLLY:if(!1===n.enableZoom)return;w.set(e.clientX,e.clientY),v.subVectors(w,j),v.y>0?I(S()):v.y<0&&H(S()),j.copy(w),n.update();break;case m.PAN:if(!1===n.enablePan)return;
1T.set(e.clientX,e.clientY),P.subVectors(T,O).multiplyScalar(n.panSpeed),D(P.x,P.y),O.copy(T),n.update()}}(e))}function Q(e){(function(e){delete C[e.pointerId];for(let t=0;t<N.length;t++)if(N[t].pointerId==e.pointerId){N.splice(t,1);return}})(e),0===N.length&&(n.domElement.releasePointerCapture(e.pointerId),n.domElement.removeEventListener("pointermove",q),n.domElement.removeEventListener("pointerup",Q)),n.dispatchEvent(r),p=m.NONE}function J(e){!1!==n.enabled&&!1!==n.enableZoom&&p===m.NONE&&(e.preventDefault(),n.dispatchEvent(i),V(e),e.deltaY<0?H(S()):e.deltaY>0&&I(S()),n.update(),n.dispatchEvent(r))}function $(e){!1!==n.enabled&&!1!==n.enablePan&&function(e){let t=!1;switch(e.code){case n.keys.UP:e.ctrlKey||e.metaKey||e.shiftKey?x(2*Math.PI*n.rotateSpeed/n.domElement.clientHeight):D(0,n.keyPanSpeed),t=!0;break;case n.keys.BOTTOM:e.ctrlKey||e.metaKey||e.shiftKey?x(-2*Math.PI*n.rotateSpeed/n.domElement.clientHeight):D(0,-n.keyPanSpeed),t=!0;break;case n.keys.LEFT:e.ctrlKey||e.metaKey||e.shiftKey?k(2*Math.PI*n.rotateSpeed/n.domElement.clientHeight):D(n.keyPanSpeed,0),t=!0;break;case n.keys.RIGHT:e.ctrlKey||e.metaKey||e.shiftKey?k(-2*Math.PI*n.rotateSpeed/n.domElement.clientHeight):D(-n.keyPanSpeed,0),t=!0}t&&(e.preventDefault(),n.update())}(e)}function ee(e){!1!==n.enabled&&e.preventDefault()}function et(e){let t=C[e.pointerId];void 0===t&&(t=new o.Vector2,C[e.pointerId]=t),t.set(e.pageX,e.pageY)}function en(e){return C[(e.pointerId===N[0].pointerId?N[1]:N[0]).pointerId]}n.domElement.addEventListener("contextmenu",ee),n.domElement.addEventListener("pointerdown",B),n.domElement.addEventListener("pointercancel",Q),n.domElement.addEventListener("wheel",J,{passive:!1}),this.update()}}}}]);

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.