永发信息网

three.js 怎么使用stl文件

答案:2  悬赏:20  手机版
解决时间 2021-04-27 01:05
  • 提问者网友:活着好累
  • 2021-04-26 18:19
three.js 怎么使用stl文件
最佳答案
  • 五星知识达人网友:撞了怀
  • 2021-04-26 18:32
3D打印是当下和未来10年产品技术主流方向之一,影响深远。

对于电子商务类的3D打印网站,一个主要功能是把商品以3D的方式呈现出来,也就是3D数据可视化技术。

HTML5(WebGL)可以用来构建3D视图、立体动画、人机交互。Three.js是一个主流的JS框架用来支持和简化WebGL编程。

本例是一个简单的Three.js应用,即把一个外部可用于打印的3D标准建模文件(STL文件)载入到浏览器中绘制出来。

支持二进制和文本编码的STL文件,支持自动探测文件格式,字符编码使用UTF-8。

使用起来很简单,导入three.js(version 69), 和stlloader.js, 然后编写如下代码即可:

[javascript] view plaincopy在CODE上查看代码片派生到我的代码片
var loader = new THREE.STLLoader();
loader.addEventListener('load', function(event) {
var geometry = event.content;
scene.add(new THREE.Mesh(geometry));
});
loader.load( './models/stl/slotted_disk.stl' );
全部回答
  • 1楼网友:西风乍起
  • 2021-04-26 18:43
if (!Detector.webgl) Detector.addGetWebGLMessage();
var container, stats;
var camera, cameraTarget, scene, renderer;
init();
animate();
function init() {
container = document.createElement('div');
document.body.appendChild(container);
camera = new THREE.PerspectiveCamera(35, window.innerWidth / window.innerHeight, 1, 15);
camera.position.set(3, 0.15, 3);
cameraTarget = new THREE.Vector3(0, -0.25, 0);
scene = new THREE.Scene();
scene.fog = new THREE.Fog(0x72645b, 2, 15);
// Ground
var plane = new THREE.Mesh(
new THREE.PlaneBufferGeometry(40, 40),
new THREE.MeshPhongMaterial({
ambient: 0x999999,
color: 0x999999,
specular: 0x101010
})
);
plane.rotation.x = -Math.PI / 2;
plane.position.y = -0.5;
scene.add(plane);
plane.receiveShadow = true;
// ASCII file
var loader = new THREE.STLLoader();
loader.addEventListener('load', function(event) {
var geometry = event.content;
var material = new THREE.MeshPhongMaterial({
ambient: 0xff5533,
color: 0xff5533,
specular: 0x
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯