// import * as THREE from './js/three.module.js'; // const { Sphere } = require("./js/three.module"); var camera, scene, renderer,controls,material; var sphere; init(); animate(); function init(texture) { var container, mesh; container = document.getElementById('container'); // camera = new THREE.PerspectiveCamera(75, window.innerWidth / window.innerHeight, 1, 1100); camera = new THREE.PerspectiveCamera(90, window.innerWidth / window.innerHeight, 1, 1100); camera.target = new THREE.Vector3(0, 0, 0); scene = new THREE.Scene(); var geometry = new THREE.SphereBufferGeometry(500, 60, 40); geometry.scale(-1, 1, 1); // invert the geometry on the x-axis so that all of the faces point inward material = new THREE.MeshBasicMaterial({ color:0x0000ff}); mesh = new THREE.Mesh(geometry, material); scene.add(mesh); var geometry = new THREE.SphereBufferGeometry(5, 60, 40); geometry.scale(-1, 1, 1); // invert the geometry on the x-axis so that all of the faces point inward material = new THREE.MeshBasicMaterial({ color:0xff00ff}); sphere = new THREE.Mesh(geometry, material); scene.add(sphere); renderer = new THREE.WebGLRenderer(); renderer.setPixelRatio(window.devicePixelRatio); renderer.setSize(window.innerWidth, window.innerHeight); container.appendChild(renderer.domElement); camera.position.set( 0, 0, 10 ); window.camera=camera window.addEventListener('resize', onWindowResize, false); } function onWindowResize() { camera.aspect = window.innerWidth / window.innerHeight; camera.updateProjectionMatrix(); renderer.setSize(window.innerWidth, window.innerHeight); } function updateCameraTo(){ const coords = {x: camera.fov, y: 0} // Start at (0, 0) const fov = 30 const tween = new TWEEN.Tween(coords) // Create a new tween that modifies 'coords'. .to({x:fov,y:0}, 5000) // Move to (300, 200) in 1 second. .easing(TWEEN.Easing.Quadratic.Out) // Use an easing function to make the animation smooth. .onUpdate((e,t) => { camera.fov = coords.x camera.updateProjectionMatrix(); }) .onComplete(()=>{ camera.fov = 90 // console.log() }) .start() // Start the tween immediately. } //------------------------------------------ function animate() { requestAnimationFrame(animate); update(); } function update() { if(camera.fov>=90){ console.log(camera.fov) updateCameraTo() } TWEEN.update() renderer.render(scene, camera); } // function reloadData() { // window.location.href="pano_object_scenne_test.html"; // } var btn = new tvSysBtnBind({ id: "Jdoc", className: "ctrlBtn", currentClass: "current", keyRemoveDefault: false, effect: "base", currentIndex: 0, onLoad: function(e) { console.log(e); }, onPress:function() { var keyCode = this.event.keyCode; console.log(keyCode); switch (keyCode) { case 37: // reloadData(); break; case 39: break; case 38: break; case 40: break; default: break; } }, onEnterPress: function() { alert(12321); }, onBack: function() { } });