Home > LIB_3DModel > create
LIB_3DModel.create() method
此 API 当前处于 BETA 预览状态,希望得到开发者的反馈。它的任何功能都可能在接下来的开发进程中被修改,请不要将它用于任何正式环境。
创建 3D 模型
签名
typescript
function create(
libraryUuid: string,
modelFile: Blob,
classification?: ILIB_ClassificationIndex | Array<string>,
unit?:
| ESYS_Unit.MILLIMETER
| ESYS_Unit.CENTIMETER
| ESYS_Unit.METER
| ESYS_Unit.MIL
| ESYS_Unit.INCH,
): Promise<Array<string> | undefined>;1
2
3
4
5
6
7
8
9
10
11
2
3
4
5
6
7
8
9
10
11
参数名
参数 | 类型 | 描述 |
|---|---|---|
libraryUuid | string | 库 UUID,可以使用 LIB_LibrariesList 内的接口获取 |
modelFile | Blob | 3D 模型文件数据 |
classification | ILIB_ClassificationIndex | Array<string> | (可选) 分类 |
unit | ESYS_Unit.MILLIMETER | ESYS_Unit.CENTIMETER | ESYS_Unit.METER | ESYS_Unit.MIL | ESYS_Unit.INCH | (可选) 单位 |
返回值
Promise<Array<string> | undefined>
创建的所有 3D 模型的 UUID
备注
传入的 modelFile 可以为多个模型文件的压缩包,EDA 将会自动提取多个模型
示例
javascript
// 1. 获取个人库 UUID
const libraryUuid = await eda.lib_LibrariesList.getPersonalLibraryUuid();
// 2. 构造一个单面片的 ASCII STL 模型文件
const stl = [
'solid example',
'facet normal 0 0 1',
'outer loop',
'vertex 0 0 0',
'vertex 10 0 0',
'vertex 0 10 0',
'endloop',
'endfacet',
'endsolid example',
].join('\n');
const blob = new Blob([stl], { type: 'model/stl' });
// 3. 导入到个人库,模型单位为毫米
const modelUuids = await eda.lib_3DModel.create(libraryUuid, blob, [], 'mm');
// 创建类保留现场
console.log('libraryUuid:', libraryUuid);
console.log('created:', modelUuids ? modelUuids.length : 0);1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24