-
Notifications
You must be signed in to change notification settings - Fork 3
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Threejs中导入以上外部模型文件所需的辅助函数是哪些? #3
Comments
Threejs中几个常用模型文件导入示例https://www.jianshu.com/p/906072e60197 THREE.js中加载不同格式的模型及动画(fbx、json和obj) 从3dMax导出供threeJS使用的带动作模型与加载(认真修改详尽版) JSON格式文件导入——使用JSONLoader函数
|
加载STL模型一直以来,如何对特定的模型进行读取和渲染操作是开发人员的难题。 储存3D模型的文件格式和标准:
1. STL模型的基本知识STL 为 stereolithography 的缩写, 含义为光固化立体造型 术。 1988 年 3D SYSTEMS 公司将其制定为接口协议。 STL 是 一种为快速原型制造技术服务的三维图形文件格式。 由于其 具有解析简单, 文件体积较小等优点, 被广泛用于工业领域。 STL 将三角形作为基础图形, 对模型表面进行组织, 因此 十分适合在电子设备上进行绘制。 同时三角形的面可以表现 流畅的曲线, 使模型外观更加细腻, 所以说使用 STL 文件对 构建高质量模型发挥重要作用。 正是由于其具有上述特性, 最近发展异常火热的3D 打印技术都是以STL 作为标准格式。 STL 格式模型在 3DS Max 中的展示效果如图1 所示。 目前的 STL 文件格式包括二进制文件 (BINARY) 和文本 文件 (ASCII) 两种。 下面将分别对这两种格式的解析方法进 行介绍。 1.1 STL 文本文件的解析方法STL 文本文件以行为单位顺序给出三角形面片的相关数 据。 每行的开头为一到两个关键字, 表明后面数据的相关含 义。 STL 文件中的关键字 facet 代表一个三角形面片的信息单 元。 此单元中包括关键字vertex 和 normal, 分别代表三角形的 顶点坐标和法向量数据。 若干个三角形面片相互组织就形成了最终的STL 三维模 型, 具体格式说明如下所示:
###1.2 vscode 3d模型预览插件 1.3 threejs & STLSTL是STLereoLithography(立体成型术)的缩写,广泛用于快速成型。例如三维打印机的模型文件通常是STL文件。 实现案例案例查看地址:https://jxtreehouse.github.io/three.js-lessions/%E6%95%99%E7%A8%8B/examples/9_import_stl_model.html
加载STL模型之前,需要使用threejs对整个渲染场景进行初始化, 主要包括新建场景、设置摄像机位置和焦点、光源位置等相关操作。
案例代码
在线预览: https://jxtreehouse.github.io/three.js-lessions/%E6%95%99%E7%A8%8B/examples/9_import_stl_model.html 1.4 API 详解
|
glTF格式 |
threejs中导入外部文件所需的辅助函数都在
https://github.com/mrdoob/three.js/tree/dev/examples/js/loaders
下可以找到。这里除了JSON模型文件的导入外,其余模型文件都需要引用其对应名称的辅助函数。例如:导入OBJ格式的模型,除了导入必要的three.js文件外,还需要在界面中引用OBJLoader.js文件。而JSONLoader函数集成在three.js中,所以无需再导入其他辅助文件!
支持的加载器(模型文件格式):
The text was updated successfully, but these errors were encountered: