我将STL文件上传到名为Thingiverse.com的网站,然后它会自动创建3D设计文件的预览。
我对学习网站使用哪些图书馆感兴趣。
例如此页面:https://www.thingiverse.com/thing:2405615
当我单击Thingview并查看页面的源代码时,我看到它使用了:

<script src="/thingiview/js/three.min.js?v=2"></script>
<script src="/thingiview/js/Thingiview.js?v=2"></script>
<script src="/thingiview/js/NormalControls.js?v=2"></script>
<script src="/thingiview/js/Detector.js?v=2"></script>
<script>
        var target_dom_element = $('.thingiview').get(0);

        // parse opts
        var argv = {};
        var parts = window.location.href.replace(/[?&]+([^=&]+)=([^&]*)/gi, function(m,key,value) {
            argv[key] = value;
        });

        var thingiview = new Thingiview( target_dom_element, 628, 472 );
        if ( parseInt(argv['width']) && parseInt(argv['height']) )
            thingiview.resize( parseInt(argv['width']), parseInt(argv['height']) );

        var animate = function() {
            requestAnimationFrame( animate );
            thingiview.render();
        }
        animate();

        // handle resizes
        window.addEventListener('resize', function() {
            if ( thingiview.fullscreen )
                thingiview.resize(window.innerWidth, 608);
        });

    </script>


但是,当我单击Thingview按钮时,图像的视角会改变,并且图像上的阴影和灯光也会消失。我对在STL文件中找到创建这些阴影和灯光的脚本特别感兴趣。
有没有办法找到Thingiverse如何创建设计文件的预览?我需要以相同的角度和相同的效果拍摄设计文件的快照

最佳答案

three.js允许在浏览器中显示3d对象。看起来STL文件可以直接加载到其中。他们在github仓库中有一个example。当您上传文件时,我会对其进行映像,然后将其传递到three.js,然后将其显示。所有的阴影和视觉效果都应由库处理。

07-25 23:06