700字范文,内容丰富有趣,生活中的好帮手!
700字范文 > html载入3d模型 three.js加载三维模型_郭隆邦技术博客

html载入3d模型 three.js加载三维模型_郭隆邦技术博客

时间:2024-06-02 06:46:55

相关推荐

html载入3d模型 three.js加载三维模型_郭隆邦技术博客

stl三维模型

基本所有的三维软件都支持导出.stl格式三维模型,stl三维模型不包含材质信息,你可以简单地把stl文件理解为几何体对象Geometry,本节课素材box.STL是一个立方体,

用记事本打开文件你可以看到里面的数据三个位置坐标和一个顶点法向量是一组数据,在第二章点线面的课程中讲解过三个顶点可以构成一个三角面,对于一个立方体而言需要至少12个三角面构成立方体的6个矩形平面。

stl文件数据结构

solid box //文件名字

//三角面1

facet normal 0 0 -1 //顶点法向量

outer loop

vertex 50 50 -50 //顶点位置

vertex 50 -50 -50 //顶点位置

vertex -50 50 -50 //顶点位置

endloop

endfacet

//三角面2

facet normal 0 0 -1 //顶点法向量

outer loop

vertex -50 50 -50 //顶点位置

vertex 50 -50 -50 //顶点位置

vertex -50 -50 -50 //顶点位置

endloop

endfacet

facet normal 0 1 0

.....

.....

//三角面12

facet normal -1 0 0

outer loop

vertex -50 -50 -50

vertex -50 50 50

vertex -50 50 -50

endloop

endfacet

endsolid

加载文件

可以在下载的STLLoader.js文件中找到FirstPersonControls.js控件,路径是three.js-master\examples\js\loaders。

加载文件

可以在下载的STLLoader.js文件中找到FirstPersonControls.js控件,路径是three.js-master\examples\js\loaders。

通过构造函数THREE.STLLoader()可以把.stl三维模型转化为网格模型的几何体对象Geometry,具体点说就是执行语句loader.load("box.STL", stlMesh),box.STL文件的几何数据转化为一个几何体对象,

几何体对象作为函数stlMesh()的参数使用,然后在stlMesh()函数中作为Mesh构造函数的参数来生成网格模型。

/**

* 加载stl立方体,生成网格模型

*/varloader =newTHREE.STLLoader();//创建stl模型加载器对象loader.load("box.STL",stlMesh);//加载stl完成后执行函数stlMesh()//stl加载完成后等待执行的函数functionstlMesh(stlGeometry) {varmaterial=newTHREE.MeshLambertMaterial({color:0x0000ff});//材质对象varmesh=newTHREE.Mesh(stlGeometry,material);//网格模型对象scene.add(mesh);//网格模型添加到场景中}

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。