Skip to content
Snippets Groups Projects
Commit d6b164a2 authored by Nora Hansen's avatar Nora Hansen :alien:
Browse files

Merge branch 'main' of https://git.gvk.idi.ntnu.no/norahha/prog2900-bachelor-2023 into AreaPlans

External loading
parents 373fb3d4 caa20847
No related branches found
No related tags found
1 merge request!6Areaplan overlay on button press, plus black background. TrackballControls.
......@@ -71,7 +71,8 @@
font-size: 50px;
}
</style>
<script src="https://openlayers.org/api/OpenLayers.js"></script>
<!--taken from "https://openlayers.org/api/OpenLayers.js"-->
<script src="OpenLayers/OpenLayers.js"></script>
<script type="text/javascript">
// Initializing variables
var map, layer;
......
This diff is collapsed.
/**
* Minified by jsDelivr using Terser v5.3.5.
* Original file: /npm/three@0.122.0/examples/js/controls/OrbitControls.js
*
* Do NOT use SRI with dynamically generated files! More information: https://www.jsdelivr.com/using-sri-with-dynamic-files
*/
THREE.OrbitControls=function(e,t){var n,o,a,i,r,c;void 0===t&&console.warn('THREE.OrbitControls: The second parameter "domElement" is now mandatory.'),t===document&&console.error('THREE.OrbitControls: "document" should not be used as the target "domElement". Please use "renderer.domElement" instead.'),this.object=e,this.domElement=t,this.enabled=!0,this.target=new THREE.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.autoRotate=!1,this.autoRotateSpeed=2,this.enableKeys=!0,this.keys={LEFT:37,UP:38,RIGHT:39,BOTTOM:40},this.mouseButtons={LEFT:THREE.MOUSE.ROTATE,MIDDLE:THREE.MOUSE.DOLLY,RIGHT:THREE.MOUSE.PAN},this.touches={ONE:THREE.TOUCH.ROTATE,TWO:THREE.TOUCH.DOLLY_PAN},this.target0=this.target.clone(),this.position0=this.object.position.clone(),this.zoom0=this.object.zoom,this.getPolarAngle=function(){return d.phi},this.getAzimuthalAngle=function(){return d.theta},this.saveState=function(){s.target0.copy(s.target),s.position0.copy(s.object.position),s.zoom0=s.object.zoom},this.reset=function(){s.target.copy(s.target0),s.object.position.copy(s.position0),s.object.zoom=s.zoom0,s.object.updateProjectionMatrix(),s.dispatchEvent(u),s.update(),p=E.NONE},this.update=(n=new THREE.Vector3,o=(new THREE.Quaternion).setFromUnitVectors(e.up,new THREE.Vector3(0,1,0)),a=o.clone().inverse(),i=new THREE.Vector3,r=new THREE.Quaternion,c=2*Math.PI,function(){var e=s.object.position;n.copy(e).sub(s.target),n.applyQuaternion(o),d.setFromVector3(n),s.autoRotate&&p===E.NONE&&M(2*Math.PI/60/60*s.autoRotateSpeed),s.enableDamping?(d.theta+=b.theta*s.dampingFactor,d.phi+=b.phi*s.dampingFactor):(d.theta+=b.theta,d.phi+=b.phi);var t=s.minAzimuthAngle,l=s.maxAzimuthAngle;return isFinite(t)&&isFinite(l)&&(t<-Math.PI?t+=c:t>Math.PI&&(t-=c),l<-Math.PI?l+=c:l>Math.PI&&(l-=c),d.theta=t<l?Math.max(t,Math.min(l,d.theta)):d.theta>(t+l)/2?Math.max(t,d.theta):Math.min(l,d.theta)),d.phi=Math.max(s.minPolarAngle,Math.min(s.maxPolarAngle,d.phi)),d.makeSafe(),d.radius*=T,d.radius=Math.max(s.minDistance,Math.min(s.maxDistance,d.radius)),!0===s.enableDamping?s.target.addScaledVector(O,s.dampingFactor):s.target.add(O),n.setFromSpherical(d),n.applyQuaternion(a),e.copy(s.target).add(n),s.object.lookAt(s.target),!0===s.enableDamping?(b.theta*=1-s.dampingFactor,b.phi*=1-s.dampingFactor,O.multiplyScalar(1-s.dampingFactor)):(b.set(0,0,0),O.set(0,0,0)),T=1,!!(f||i.distanceToSquared(s.object.position)>h||8*(1-r.dot(s.object.quaternion))>h)&&(s.dispatchEvent(u),i.copy(s.object.position),r.copy(s.object.quaternion),f=!1,!0)}),this.dispose=function(){s.domElement.removeEventListener("contextmenu",ee,!1),s.domElement.removeEventListener("pointerdown",B,!1),s.domElement.removeEventListener("wheel",W,!1),s.domElement.removeEventListener("touchstart",Q,!1),s.domElement.removeEventListener("touchend",$,!1),s.domElement.removeEventListener("touchmove",J,!1),s.domElement.ownerDocument.removeEventListener("pointermove",G,!1),s.domElement.ownerDocument.removeEventListener("pointerup",K,!1),s.domElement.removeEventListener("keydown",q,!1)};var s=this,u={type:"change"},l={type:"start"},m={type:"end"},E={NONE:-1,ROTATE:0,DOLLY:1,PAN:2,TOUCH_ROTATE:3,TOUCH_PAN:4,TOUCH_DOLLY_PAN:5,TOUCH_DOLLY_ROTATE:6},p=E.NONE,h=1e-6,d=new THREE.Spherical,b=new THREE.Spherical,T=1,O=new THREE.Vector3,f=!1,g=new THREE.Vector2,R=new THREE.Vector2,H=new THREE.Vector2,v=new THREE.Vector2,y=new THREE.Vector2,P=new THREE.Vector2,L=new THREE.Vector2,w=new THREE.Vector2,A=new THREE.Vector2;function N(){return Math.pow(.95,s.zoomSpeed)}function M(e){b.theta-=e}function j(e){b.phi-=e}var C,D=(C=new THREE.Vector3,function(e,t){C.setFromMatrixColumn(t,0),C.multiplyScalar(-e),O.add(C)}),S=function(){var e=new THREE.Vector3;return function(t,n){!0===s.screenSpacePanning?e.setFromMatrixColumn(n,1):(e.setFromMatrixColumn(n,0),e.crossVectors(s.object.up,e)),e.multiplyScalar(t),O.add(e)}}(),k=function(){var e=new THREE.Vector3;return function(t,n){var o=s.domElement;if(s.object.isPerspectiveCamera){var a=s.object.position;e.copy(a).sub(s.target);var i=e.length();i*=Math.tan(s.object.fov/2*Math.PI/180),D(2*t*i/o.clientHeight,s.object.matrix),S(2*n*i/o.clientHeight,s.object.matrix)}else s.object.isOrthographicCamera?(D(t*(s.object.right-s.object.left)/s.object.zoom/o.clientWidth,s.object.matrix),S(n*(s.object.top-s.object.bottom)/s.object.zoom/o.clientHeight,s.object.matrix)):(console.warn("WARNING: OrbitControls.js encountered an unknown camera type - pan disabled."),s.enablePan=!1)}}();function Y(e){s.object.isPerspectiveCamera?T/=e:s.object.isOrthographicCamera?(s.object.zoom=Math.max(s.minZoom,Math.min(s.maxZoom,s.object.zoom*e)),s.object.updateProjectionMatrix(),f=!0):(console.warn("WARNING: OrbitControls.js encountered an unknown camera type - dolly/zoom disabled."),s.enableZoom=!1)}function x(e){s.object.isPerspectiveCamera?T*=e:s.object.isOrthographicCamera?(s.object.zoom=Math.max(s.minZoom,Math.min(s.maxZoom,s.object.zoom/e)),s.object.updateProjectionMatrix(),f=!0):(console.warn("WARNING: OrbitControls.js encountered an unknown camera type - dolly/zoom disabled."),s.enableZoom=!1)}function U(e){g.set(e.clientX,e.clientY)}function V(e){v.set(e.clientX,e.clientY)}function I(e){if(1==e.touches.length)g.set(e.touches[0].pageX,e.touches[0].pageY);else{var t=.5*(e.touches[0].pageX+e.touches[1].pageX),n=.5*(e.touches[0].pageY+e.touches[1].pageY);g.set(t,n)}}function z(e){if(1==e.touches.length)v.set(e.touches[0].pageX,e.touches[0].pageY);else{var t=.5*(e.touches[0].pageX+e.touches[1].pageX),n=.5*(e.touches[0].pageY+e.touches[1].pageY);v.set(t,n)}}function X(e){var t=e.touches[0].pageX-e.touches[1].pageX,n=e.touches[0].pageY-e.touches[1].pageY,o=Math.sqrt(t*t+n*n);L.set(0,o)}function _(e){if(1==e.touches.length)R.set(e.touches[0].pageX,e.touches[0].pageY);else{var t=.5*(e.touches[0].pageX+e.touches[1].pageX),n=.5*(e.touches[0].pageY+e.touches[1].pageY);R.set(t,n)}H.subVectors(R,g).multiplyScalar(s.rotateSpeed);var o=s.domElement;M(2*Math.PI*H.x/o.clientHeight),j(2*Math.PI*H.y/o.clientHeight),g.copy(R)}function F(e){if(1==e.touches.length)y.set(e.touches[0].pageX,e.touches[0].pageY);else{var t=.5*(e.touches[0].pageX+e.touches[1].pageX),n=.5*(e.touches[0].pageY+e.touches[1].pageY);y.set(t,n)}P.subVectors(y,v).multiplyScalar(s.panSpeed),k(P.x,P.y),v.copy(y)}function Z(e){var t=e.touches[0].pageX-e.touches[1].pageX,n=e.touches[0].pageY-e.touches[1].pageY,o=Math.sqrt(t*t+n*n);w.set(0,o),A.set(0,Math.pow(w.y/L.y,s.zoomSpeed)),Y(A.y),L.copy(w)}function B(e){if(!1!==s.enabled)switch(e.pointerType){case"mouse":case"pen":!function(e){var t;switch(e.preventDefault(),s.domElement.focus?s.domElement.focus():window.focus(),e.button){case 0:t=s.mouseButtons.LEFT;break;case 1:t=s.mouseButtons.MIDDLE;break;case 2:t=s.mouseButtons.RIGHT;break;default:t=-1}switch(t){case THREE.MOUSE.DOLLY:if(!1===s.enableZoom)return;!function(e){L.set(e.clientX,e.clientY)}(e),p=E.DOLLY;break;case THREE.MOUSE.ROTATE:if(e.ctrlKey||e.metaKey||e.shiftKey){if(!1===s.enablePan)return;V(e),p=E.PAN}else{if(!1===s.enableRotate)return;U(e),p=E.ROTATE}break;case THREE.MOUSE.PAN:if(e.ctrlKey||e.metaKey||e.shiftKey){if(!1===s.enableRotate)return;U(e),p=E.ROTATE}else{if(!1===s.enablePan)return;V(e),p=E.PAN}break;default:p=E.NONE}p!==E.NONE&&(s.domElement.ownerDocument.addEventListener("pointermove",G,!1),s.domElement.ownerDocument.addEventListener("pointerup",K,!1),s.dispatchEvent(l))}(e)}}function G(e){if(!1!==s.enabled)switch(e.pointerType){case"mouse":case"pen":!function(e){if(!1===s.enabled)return;switch(e.preventDefault(),p){case E.ROTATE:if(!1===s.enableRotate)return;!function(e){R.set(e.clientX,e.clientY),H.subVectors(R,g).multiplyScalar(s.rotateSpeed);var t=s.domElement;M(2*Math.PI*H.x/t.clientHeight),j(2*Math.PI*H.y/t.clientHeight),g.copy(R),s.update()}(e);break;case E.DOLLY:if(!1===s.enableZoom)return;!function(e){w.set(e.clientX,e.clientY),A.subVectors(w,L),A.y>0?Y(N()):A.y<0&&x(N()),L.copy(w),s.update()}(e);break;case E.PAN:if(!1===s.enablePan)return;!function(e){y.set(e.clientX,e.clientY),P.subVectors(y,v).multiplyScalar(s.panSpeed),k(P.x,P.y),v.copy(y),s.update()}(e)}}(e)}}function K(e){if(!1!==s.enabled)switch(e.pointerType){case"mouse":case"pen":!function(e){if(!1===s.enabled)return;s.domElement.ownerDocument.removeEventListener("pointermove",G,!1),s.domElement.ownerDocument.removeEventListener("pointerup",K,!1),s.dispatchEvent(m),p=E.NONE}()}}function W(e){!1===s.enabled||!1===s.enableZoom||p!==E.NONE&&p!==E.ROTATE||(e.preventDefault(),e.stopPropagation(),s.dispatchEvent(l),function(e){e.deltaY<0?x(N()):e.deltaY>0&&Y(N()),s.update()}(e),s.dispatchEvent(m))}function q(e){!1!==s.enabled&&!1!==s.enableKeys&&!1!==s.enablePan&&function(e){var t=!1;switch(e.keyCode){case s.keys.UP:k(0,s.keyPanSpeed),t=!0;break;case s.keys.BOTTOM:k(0,-s.keyPanSpeed),t=!0;break;case s.keys.LEFT:k(s.keyPanSpeed,0),t=!0;break;case s.keys.RIGHT:k(-s.keyPanSpeed,0),t=!0}t&&(e.preventDefault(),s.update())}(e)}function Q(e){if(!1!==s.enabled){switch(e.preventDefault(),e.touches.length){case 1:switch(s.touches.ONE){case THREE.TOUCH.ROTATE:if(!1===s.enableRotate)return;I(e),p=E.TOUCH_ROTATE;break;case THREE.TOUCH.PAN:if(!1===s.enablePan)return;z(e),p=E.TOUCH_PAN;break;default:p=E.NONE}break;case 2:switch(s.touches.TWO){case THREE.TOUCH.DOLLY_PAN:if(!1===s.enableZoom&&!1===s.enablePan)return;!function(e){s.enableZoom&&X(e),s.enablePan&&z(e)}(e),p=E.TOUCH_DOLLY_PAN;break;case THREE.TOUCH.DOLLY_ROTATE:if(!1===s.enableZoom&&!1===s.enableRotate)return;!function(e){s.enableZoom&&X(e),s.enableRotate&&I(e)}(e),p=E.TOUCH_DOLLY_ROTATE;break;default:p=E.NONE}break;default:p=E.NONE}p!==E.NONE&&s.dispatchEvent(l)}}function J(e){if(!1!==s.enabled)switch(e.preventDefault(),e.stopPropagation(),p){case E.TOUCH_ROTATE:if(!1===s.enableRotate)return;_(e),s.update();break;case E.TOUCH_PAN:if(!1===s.enablePan)return;F(e),s.update();break;case E.TOUCH_DOLLY_PAN:if(!1===s.enableZoom&&!1===s.enablePan)return;!function(e){s.enableZoom&&Z(e),s.enablePan&&F(e)}(e),s.update();break;case E.TOUCH_DOLLY_ROTATE:if(!1===s.enableZoom&&!1===s.enableRotate)return;!function(e){s.enableZoom&&Z(e),s.enableRotate&&_(e)}(e),s.update();break;default:p=E.NONE}}function $(e){!1!==s.enabled&&(s.dispatchEvent(m),p=E.NONE)}function ee(e){!1!==s.enabled&&e.preventDefault()}s.domElement.addEventListener("contextmenu",ee,!1),s.domElement.addEventListener("pointerdown",B,!1),s.domElement.addEventListener("wheel",W,!1),s.domElement.addEventListener("touchstart",Q,!1),s.domElement.addEventListener("touchend",$,!1),s.domElement.addEventListener("touchmove",J,!1),s.domElement.addEventListener("keydown",q,!1),-1===s.domElement.tabIndex&&(s.domElement.tabIndex=0),this.update()},THREE.OrbitControls.prototype=Object.create(THREE.EventDispatcher.prototype),THREE.OrbitControls.prototype.constructor=THREE.OrbitControls,THREE.MapControls=function(e,t){THREE.OrbitControls.call(this,e,t),this.screenSpacePanning=!1,this.mouseButtons.LEFT=THREE.MOUSE.PAN,this.mouseButtons.RIGHT=THREE.MOUSE.ROTATE,this.touches.ONE=THREE.TOUCH.PAN,this.touches.TWO=THREE.TOUCH.DOLLY_ROTATE},THREE.MapControls.prototype=Object.create(THREE.EventDispatcher.prototype),THREE.MapControls.prototype.constructor=THREE.MapControls;
//# sourceMappingURL=/sm/2288bec8a622f44e94c222e6fc0b3081e489de6d1b23db5654e609b175f54b90.map
\ No newline at end of file
This diff is collapsed.
......@@ -168,9 +168,10 @@
<script src="src/errors.js"></script> <!-- Contains error messages for the user -->
<script src="src/WMTS.js"></script>
<script src="src/WCS.js"></script>
<!-- <script src="three/three.min.js"></script> -->
<script src="https://cdn.jsdelivr.net/npm/three@0.122.0/build/three.min.js"></script>
<script src="https://cdn.jsdelivr.net/npm/three@0.122.0/examples/js/controls/OrbitControls.min.js"></script>
<!--script below taken from"https://cdn.jsdelivr.net/npm/three@0.122.0/build/three.min.js"-->
<script src="three/three.min.js"></script>
<!--script below taken from"https://cdn.jsdelivr.net/npm/three@0.122.0/examples/js/controls/OrbitControls.min.js"-->
<script src="three/OrbitControls.min.js"></script>
<script src="src/wxs.three.js"></script>
<!-- Keep next line unil universe.js has been reworked -->
<script src="src/topo2.layers.js"></script>
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment