OpenSCAD 用户手册/库
OpenSCAD 使用三个库 位置,即安装库、内置库和用户定义库。
- 安装 库位置是 OpenSCAD 安装目录下的
libraries
目录。 - 内置 库位置取决于操作系统。从 2014.03 版本开始,可以使用“文件->显示库文件夹...”菜单项在系统特定文件管理器中打开它。
- Windows:
My Documents\OpenSCAD\libraries
- Linux:
$HOME/.local/share/OpenSCAD/libraries
- Mac OS X:
$HOME/Documents/OpenSCAD/libraries
- Windows:
- 可以使用 用户定义 库路径OPENSCADPATH环境变量指向库。OPENSCADPATH如果库集合位于多个位置,则可以包含多个目录,使用分号 (;) 分隔 Windows 中的目录,使用冒号 (:) 分隔 Linux/Mac OS 中的目录。例如
- Windows:
C:\Users\A_user\Documents\OpenSCAD\MyLib;C:\Thingiverse Stuff\OpenSCAD Things;D:\test_stuff
- (注意:对于 Windows,在 2014.02.22 之前的版本中,存在一个错误,阻止了上面所述的 OPENSCADPATH 中使用多个目录,它使用冒号 (:) 分隔目录。一个解决方法是,如果您的库位于 C: 盘,则可以省略驱动器号和冒号,例如
\Thingiverse Stuff\OpenSCAD Things:\stuff
。有关设置 Windows 环境变量的更多信息,请参阅 用户环境变量。 - Linux/Mac OS:
/usr/lib:/home/mylib:.
- Windows:
- OpenSCAD 必须重新启动才能识别对OPENSCADPATH环境变量的任何更改。
在 use <...>
或 include <...>
语句中指定 非完全限定 路径和文件名时,OpenSCAD 会按以下顺序查找以下目录中的文件
- 调用 .scad 文件的目录
- 用户定义 库路径 (OPENSCADPATH)
- 内置 库(即上面提到的操作系统相关位置)
- 安装 库
如果库文件本身包含 use <...>
或 include <...>
,则库 .scad 文件的目录就是“调用”文件,即在库中查找库时,它不会检查顶级 .scad 文件的目录。
例如,定义以下位置和文件:(使用OPENSCADPATH=/usr/lib:/home/lib_os:.
)
1. <installation library>/lib1.scad
2. <built-in library>/lib2.scad
3. <built-in library>/sublib/lib2.scad
4. <built-in library>/sublib/lib3.scad
5. /usr/lib/lib2.scad
6. /home/lib_os/sublib/lib3.scad
以下 include <...>
语句与指定的库文件匹配
include <lib1.scad> // #1.
include <lib2.scad> // #5.
include <sublib/lib2.scad> // #3.
include <sublib/lib3.scad> // #6.
从 2014.03 版本开始,可以在“帮助->库信息”对话框中验证当前活动的位置列表。
详细信息将显示OPENSCADPATH变量的内容和所有库位置的列表。按列表中显示的顺序搜索位置。例如;
OPENSCADPATH: /data/lib1:/data/lib2
OpenSCAD library path:
/data/lib1
/data/lib2
/home/user/.local/share/OpenSCAD/libraries
/opt/OpenSCAD/libraries
在 Windows 中,通过 控制面板
设置环境变量,选择 系统
,然后选择 高级系统设置
,单击 环境变量
。创建一个新的 用户变量
,或者编辑OPENSCADPATH如果它存在。
在 Linux 上,要简单地将环境变量添加到所有用户,可以在终端中输入
sudo sh -c 'echo "OPENSCADPATH=$HOME/openscad/libraries" >>/etc/profile'
以设置OPENSCADPATH为openscad/libraries位于每个用户的 home 目录下。为了更精细地控制环境变量,您需要编辑配置文件;例如,请参阅 此页面。
在 macOS 上,可以使用 launchctl
为当前登录用户设置环境变量
launchctl setenv OPENSCADPATH "/Users/myuser/my/own/path"
下次启动 OpenSCAD 时,该变量将可用。
OpenSCAD 包含 MCAD 库。
有许多不同的分支在流传(例如 [1],[2],[3]),其中许多分支没有维护。
MCAD 包含许多不同质量的东西,包括
- 许多常见的形状,例如圆角盒、二维和三维规则多边形和多面体
- 用于渐开线齿轮和斜齿轮的齿轮生成器。
- 步进电机安装辅助工具、步进电机和伺服电机轮廓
- 螺母、螺栓和轴承
- 螺钉和钻头
- 常见材料的材料定义
- 数学常数、曲线
- 水滴孔和多边形孔
git 存储库还包含用于抓取 OpenSCAD 代码的 python 代码、测试框架和 SolidPython,这是一个用于实体 CAD 的外部 python 库。
有关使用 MCAD 的更多详细信息,请参阅后面的章节,OpenSCAD 用户手册/MCAD。
- Belfry OpenScad 库 包含许多形状、蒙版、操纵器,以及对螺纹、齿轮、折线和贝塞尔曲线的支持。
- 用于 OpenScad 的斜面库
- BOLTS 试图构建一个标准零件和维生素库,可用于 OpenSCAD 和其他 CAD 工具。
- 凯尔特结库 用于生成凯尔特结。
- 颜色空间转换器 用于在 HSV 和 RGB 中使用颜色。
- 带尺寸的图纸 提供工具来创建三维对象的适当二维技术图纸。
- DotSCAD 包含 2D 和 3D 操作和变换的综合库,包括沿任意路径挤出、形状弯曲等。
- 圆角,由 Stephanie Shaltes 提供的全面圆角库。
- Local.scad 提供了一种灵活的方法来定位设计的部分。还用于 BOLTS。
- 密歇根理工大学的 Open Sustainability Technology Lab (MOST) 库
- Obiscad 包含各种有用的工具,特别是用于以简单而模块化的方式将模块附加到其他模块的框架。
- OpenSCAD 螺纹 库:提供符合 ISO 标准的公制和英制螺纹,并支持内螺纹和外螺纹以及多线螺纹。
- 弹球库:提供许多用于弹球设计工作的组件,包括用于部件三维打印的模型、用于 CNC 钻孔的三维部件描述以及用于部件占位面积的二维描述。
- 规则形状库 由 Giles Bathgates 提供:提供规则多边形和多面体,并包含在 MCAD 中。
- 滚珠链链轮 OpenSCAD 模块 允许您创建用于 ANSI 链和摩托车链的链轮。包含硬编码的调整系数,可能需要调整。
- SCADBoard 是一个用于在 OpenSCAD 中设计 3D 打印 PCB 的库。
- 形状库 包含许多形状,例如圆角盒、规则多边形。它也包含在 MCAD 中。
- 二维连接库 可帮助连接二维片材,这对激光切割设计很有用。
- 标尺 帮助确定 OpenSCAD 中物体的尺寸。
- 滚花表面库 由 aubenc 创建
- 文本模块 基于技术字体的风格。
- OpenSCAD 圆角, 亦可访问 https://www.thingiverse.com/thing:8812
- 单元测试框架
- 实用函数 集合。
- 工作流程库: 全面的工作流程,由 Ulrich Bär 创建
这里还列出了更多库:https://github.com/openscad/openscad/wiki/Libraries
其他 OpenSCAD 教程和文档
[edit | edit source]- "OpenSCAD 用户手册" http://www.openscad.org/documentation.html
- "在 OpenSCAD 中掌握 10 个关键技能" https://cubehero.com/2013/11/19/know-only-10-things-to-be-dangerous-in-openscad/
- "OpenScad 入门教程" http://edutechwiki.unige.ch/en/OpenScad_beginners_tutorial
- "如何使用 OpenSCAD,设计参数化 3D 对象的技巧和窍门" http://www.tridimake.com/2014/09/how-to-use-openscad-tricks-and-tips-to.html
- OpenSCAD 讨论论坛 http://forum.openscad.org