scene switch

by infomejdi

JavaScript

import * as THREE from './THREE/three.module.js';
import { Mainviewer } from './Mainviewer.js';
import { ModelA } from './ModelA.js';
import { request_Animation_Frame } from './render.js';
function _(elm){return document.getElementById(elm)}
let MainViewer = new Mainviewer(_("container"));
let ModelA_Viewer = new ModelA(_("container"));
let Animation_Frame = new request_Animation_Frame();
let raycaster=new THREE.Raycaster(),mouse=new THREE.Vector2();
/////////////////////////////////////////////
// set MainViewer.scene onload
/////////////////////////////////////////////
MainViewer.initScene();
Animation_Frame.scene = MainViewer.scene
Animation_Frame.renderer = MainViewer.renderer
Animation_Frame.camera = MainViewer.camera
Animation_Frame.orbit = MainViewer.orbit
Animation_Frame.animate();
MainViewer.scene.background= new THREE.Color(0xFF0000);
//Animation_Frame.render();
/////////////////////////////////////////////
// set ModelA_Viewer.scene onload
/////////////////////////////////////////////
/*
ModelA_Viewer.initScene();
Animation_Frame.scene =ModelA_Viewer.scene
Animation_Frame.renderer =ModelA_Viewer.renderer
Animation_Frame.camera =ModelA_Viewer.camera
Animation_Frame.animate();
*/

window.addEventListener('click',function(event){
    event.preventDefault();
    mouse.x = ( event.clientX / window.innerWidth ) * 2 - 1;
	mouse.y = - ( event.clientY / window.innerHeight ) * 2 + 1;
    raycaster.setFromCamera( mouse, MainViewer.camera );
    let selectedobject;
        const intersects = raycaster.intersectObjects( MainViewer.scene.children );
        if ( intersects.length>0)
        {
            //console.log(intersects[0].object)
            selectedobject = intersects[0].object;
            intersects[0].object.material.emissive.set( 0xffffff );
        }
        else
        {
            MainViewer.scene.traverse(function(object){if(object.isMesh){object.material.emissive.set( 0x000000 );}})
        }
        
        if(selectedobject &&...