Три вопроса js geometry.center - PullRequest
0 голосов
/ 30 марта 2020

Итак, я работаю с загрузчиком 3 js 3mf, и загрузчик работает, но модель похожа на смещение и смещение поворота, поэтому я попробовал geomtry.center (); в загрузчике но не сработало киньте меня и ошибка как geometry.center это не функция. Я попробовал с геометрией. Перевод же не сработал. И геометрия.центр (); в загрузчике STL из трех js работает как брелок, но в загрузчике 3mf не работает. Итак, мой вопрос, как я могу сбросить ось к центру объекта. Спасибо Вот код от загрузчика 3mf

var camera, scene, renderer;



init();

        function init() {
            var geometry = new THREE.BufferGeometry();

            renderer = new THREE.WebGLRenderer( { antialias: true } );
            renderer.setPixelRatio( window.devicePixelRatio );
            renderer.setSize( 640, 480 );
            document.body.appendChild( renderer.domElement );

            scene = new THREE.Scene();
            scene.background = new THREE.Color( 0x333333 );

            scene.add( new THREE.AmbientLight( 0xffffff, 0.2 ) );

            camera = new THREE.PerspectiveCamera( 60, 640 / 480, 0.1, 1000 );

            // Z is up for objects intended to be 3D printed.

            camera.up.set( 0, 0, 0 );
            camera.position.set( - 80, - 90, 150 );
            scene.add( camera );

            var controls = new THREE.OrbitControls( camera, renderer.domElement );
            controls.addEventListener( 'change', render );

            controls.update();

            var pointLight = new THREE.PointLight( 0xffffff, 0.8 );
            camera.add( pointLight );
            var loader = new THREE.ThreeMFLoader();
            loader.load( 'simple.3mf', function ( geometry ) {
                 console.log(geometry);
                     geometry.center();
                scene.add( geometry );
                render();

            } );

            window.addEventListener( 'resize', onWindowResize, false );

        }

        function onWindowResize() {

            camera.aspect = 640/ 480;
            camera.updateProjectionMatrix();

            renderer.setSize( 640, 480 );

            render();

        }

        function render() {

            renderer.render( scene, camera );

        }
...