Install
openclaw skills install 3d-modeling-super提供完整3D建模、编辑、渲染、格式转换及3D打印预处理功能,支持参数化建模和批量高效处理。
openclaw skills install 3d-modeling-superVersion: 1.0.0
Author: OpenClaw Team
Category: 3D Modeling & Design
Last Updated: 2026-05-16
3D建模与模型处理是OpenClaw生态系统中的一款超级技能,为AI Agent提供完整的三维计算机辅助设计(CAD)能力。该技能集成了12大核心功能模块,覆盖从基础几何体生成到专业3D打印预处理的全流程3D处理能力。无论是快速原型设计、复杂模型编辑、高质量渲染输出,还是批量格式转换,本技能都能提供专业级的3D处理解决方案。
本技能基于业界领先的开源3D处理技术栈构建,采用trimesh作为核心几何引擎,pyvista提供高质量可视化渲染,numpy-stl处理3D打印标准格式,结合numpy和scipy进行数值计算和优化算法。所有功能均采用真实算法实现,无任何模拟或占位代码,确保在实际生产环境中稳定运行。
技能设计遵循模块化架构,每个功能模块既可以独立调用,也可以组合使用形成复杂的3D处理工作流。支持的3D文件格式涵盖STL、OBJ、PLY、GLB、FBX、3DS等行业主流格式,实现了不同CAD软件之间的无缝数据交换。内置的参数化建模引擎支持通过数学参数驱动模型生成,为自动化设计和批量生产提供强大支持。
3D打印预处理模块专门针对增材制造优化,提供模型修复、壁厚检查、支撑生成、切片预览等专业功能,帮助用户在打印前发现并解决潜在问题。模型测量和优化模块确保输出模型的几何质量和打印可行性,大幅提升3D打印成功率。
提供完整的参数化基本几何体创建功能,支持所有标准3D图元的快速生成。
支持的几何体类型:
核心特性:所有几何体支持自定义位置坐标、欧拉旋转角、全局缩放因子,生成的模型自动进行法线计算和拓扑优化。
提供专业级的3D模型变换和编辑功能,支持精确的几何操作。
变换操作:
布尔运算:
高级编辑:
完整的材质属性管理和纹理映射系统。
材质属性:
纹理处理:
基于VTK的高质量离线和实时渲染引擎。
光照系统:
相机设置:
渲染输出:
支持行业主流3D格式的双向转换。
输入格式:STL、OBJ、PLY、GLB、GLTF、3DS、FBX、DAE、WRL 输出格式:STL、OBJ、PLY、GLB、GLTF、3DS
转换特性:
数学驱动的参数化建模系统。
参数化生成:
参数化曲线:
参数化曲面:
专业的增材制造前处理工具。
模型修复:
打印检查:
支撑生成:
切片预览:
精确的3D几何测量和分析。
尺寸测量:
体积与质量:
拓扑分析:
专业的网格优化和简化算法。
减面优化:
拓扑优化:
质量修复:
高效的批量处理工作流。
批量操作:
处理特性:
灵活的模型数据交换接口。
导入功能:
导出功能:
交互式3D查看和预览功能。
交互功能:
显示模式:
辅助功能:
| 格式 | 扩展名 | 导入 | 导出 | 说明 |
|---|---|---|---|---|
| Stereolithography | .stl | ✅ | ✅ | 3D打印标准格式,支持ASCII/二进制 |
| Wavefront Object | .obj | ✅ | ✅ | 通用交换格式,支持材质和UV |
| Polygon File Format | .ply | ✅ | ✅ | 斯坦福多边形格式,支持顶点色 |
| GL Transmission Format | .glb | ✅ | ✅ | 二进制GLTF,单文件打包 |
| GL Transmission Format | .gltf | ✅ | ✅ | JSON格式,支持外部资源 |
| 3D Studio | .3ds | ✅ | ✅ | 3ds Max经典格式 |
| Filmbox | .fbx | ✅ | ⚠️ | Autodesk格式,需额外依赖 |
| COLLADA | .dae | ✅ | ✅ | 数字资产交换格式 |
| VRML | .wrl | ✅ | ✅ | 虚拟现实建模语言 |
pip install trimesh pyvista numpy-stl numpy scipy
# 布尔运算增强
pip install pyglet shapely
# FBX格式支持
pip install fbx
# 高级渲染
pip install pyvistaqt
环境变量:
OPENCLAW_3D_OUTPUT_DIR: 输出文件目录OPENCLAW_3D_CACHE_SIZE: 内存缓存大小(MB)OPENCLAW_3D_RENDER_QUALITY: 渲染质量(high/medium/low)# 生成一个半径为50mm的球体并保存为STL
params = {
"operation": "generate_primitive",
"primitive_type": "sphere",
"size": 50,
"subdivisions": 4,
"output_file": "sphere_50mm.stl"
}
result = execute(params)
# 1. 生成立方体
cube = execute({
"operation": "generate_primitive",
"primitive_type": "box",
"extents": [100, 100, 100]
})
# 2. 生成圆柱体
cylinder = execute({
"operation": "generate_primitive",
"primitive_type": "cylinder",
"size": 30,
"height": 120
})
# 3. 布尔差集运算
result = execute({
"operation": "boolean",
"boolean_type": "difference",
"mesh1_id": cube["data"]["mesh_id"],
"mesh2_id": cylinder["data"]["mesh_id"],
"output_file": "cube_with_hole.stl"
})
# 测量导入的模型
result = execute({
"operation": "measure",
"mesh_id": "imported_model_12345"
})
print(f"尺寸: {result['data']['dimensions']}")
print(f"体积: {result['data']['volume']} mm³")
print(f"表面积: {result['data']['surface_area']} mm²")
# 将模型面数减少50%
result = execute({
"operation": "optimize",
"optimization_type": "decimate",
"mesh_id": "high_poly_model",
"target_ratio": 0.5,
"output_file": "optimized_model.stl"
})
# STL转OBJ
result = execute({
"operation": "convert_format",
"input_file": "input_model.stl",
"output_file": "output_model.obj"
})
# 模型修复和壁厚检查
result = execute({
"operation": "print_preprocess",
"preprocess_operation": "repair",
"mesh_id": "imported_model"
})
# 检查壁厚(最小1.2mm)
thickness_check = execute({
"operation": "print_preprocess",
"preprocess_operation": "wall_thickness_check",
"mesh_id": "repaired_model",
"min_thickness": 1.2
})
# 渲染模型并保存PNG
result = execute({
"operation": "render",
"mesh_id": "final_model",
"color": "#4A90D9",
"show_edges": True,
"background_color": "white",
"azimuth": 45,
"elevation": 30,
"window_size": [1920, 1080],
"output_image": "render_output.png"
})
# 创建六边形拉伸
result = execute({
"operation": "parametric",
"model_type": "extrusion",
"polygon_points": [
[50, 0], [25, 43.3], [-25, 43.3],
[-50, 0], [-25, -43.3], [25, -43.3]
],
"height": 20,
"output_file": "hexagon_prism.stl"
})
# 将目录下所有OBJ转换为STL
result = execute({
"operation": "batch_process",
"batch_operation": "convert_format",
"input_directory": "./obj_files",
"output_directory": "./stl_output",
"target_format": ".stl"
})
# 打开交互式3D查看器
result = execute({
"operation": "visualize",
"mesh_id": "my_model",
"color": "lightblue",
"show_edges": True,
"style": "surface",
"background": "white",
"title": "我的3D模型"
})
| 中文触发词 | 英文触发词 |
|---|---|
| 3D建模 | 3D modeling |
| 生成3D模型 | generate 3D model |
| 3D打印 | 3D printing |
| 模型处理 | model processing |
| 3D渲染 | 3D rendering |
| 格式转换 | format conversion |
| 模型优化 | model optimization |
| 几何体生成 | primitive generation |
| 布尔运算 | boolean operation |
| 参数化建模 | parametric modeling |
| 模型测量 | model measurement |
| 3D可视化 | 3D visualization |
| STL处理 | STL processing |
| 网格处理 | mesh processing |
| CAD建模 | CAD modeling |
trimesh 4.4+
pyvista 0.47+
numpy-stl 2.1+
numpy 1.24+
scipy 1.10+
模块化架构:
性能优化:
初始发布版本
✨ 新功能:
🔧 技术实现:
📚 文档:
| 操作 | 典型模型(10k面) | 大型模型(100k面) |
|---|---|---|
| 几何体生成 | <100ms | <500ms |
| 布尔运算 | <500ms | <3s |
| 格式转换 | <200ms | <2s |
| 模型测量 | <50ms | <200ms |
| 网格简化 | <300ms | <2s |
| 高清渲染 | <1s | <3s |
技能内置完整的错误处理机制:
所有错误均返回结构化错误信息,包含错误类型、描述和建议解决方案。
本技能为OpenClaw生态系统的官方超级技能,严格遵循OpenClaw技能开发规范,保证与OpenClaw平台的完美兼容。