OpenSCAD

OpenSCAD是一款電腦輔助設計（CAD）的自由軟體，用於建立實體3D物件。它僅支援腳本的建模器，使用自己的描述語言；3D 預覽可以互動方式操作，但無法在 3D 中互動式修改。相反地，OpenSCAD 腳本會指定幾何基本圖元（如球體、方塊、圓柱體等），並定義如何修改與組合它們（例如透過交集、差集、包絡組合或閔可夫斯基和等）來渲染 3D 模型 。因此，該程式執行的是构造实体几何（CSG）。此軟體可在 Windows、Linux 與 macOS 等作業系統上使用。

概覽
腳本語言

OpenSCAD 採用專屬腳本語言來產生 3D 圖形。此腳本語言支援函數式程式設計、參數化模組化與重複利用，以及數學運算。變數具有作用域限制，但在每個作用域（scope）之內都是不可變的。

預覽功能

為了快速預覽使用Z緩衝的模型，OpenSCAD 採用了 OpenCSG 和 OpenGL 技術。

與其他 3D 建模軟體類似，使用者可以透過滑鼠在視窗中互動式調整 3D 模型的位置。此外，還能在腳本中定義預設的「鏡頭」視角位置。

零件顏色（包含透明度）可在 3D 視圖中進行設定。

預覽相對快速，並允許在修改腳本時進行互動式修改。

模型渲染器會考慮光照，但光源不可修改。

使用
OpenSCAD 讓設計師能夠創建精確的 3D 模型與參數化設計，只需調整參數即可輕鬆修改設計.。

OpenSCAD 文件採用純 ASCII 文本格式的人類可讀腳本，在語法上可能更適合與 git 等版本控制系統整合。

因此，OpenSCAD 是一款面向程式設計師的實體建模工具.，並被推薦作為入門級的 CAD 工具，用於設計科研教育用途的科學儀器等開放硬體.。

它常被用於設計3D列印零件，這些零件可輸出為多種 3D 檔案格式。其基於腳本的參數化特性使其能整合至線上模型客製化服務，例如Thingiverse等3D列印市集上的「Customizer」工具。

對於簡單模型，可實現每秒數幀的動畫效果。動畫可影響任何參數，包括攝影機位置或零件尺寸、位置、形狀及存在狀態。動畫可錄製為一組影像，用以建立動態 GIF。

目前實驗性地支援與 Calculix 耦合進行有限元素法分析（FEM）。FreeCAD 也能導入 OpenSCAD 檔案，搭配 Calculix 或其他支援的 FEM 求解器進行分析。FreeCAD 特別設有與 OpenSCAD 互通的專用工作台。

檔案格式
匯入
可導入 DXF、SVG 與 PNG 格式的 2D 圖檔，再擠壓成型為單體零件。
能導入 STL、OFF、AMF 與 3MF 格式的 3D 零件，進行比例縮放及加減法運算處理。

匯出

OpenSCAD 的視圖與模型可輸出為多種格式，包括：

檢視畫面可匯出為 PNG 格式。
2D 模型可匯出為 SVG、DXF 與 PDF 格式。
3D 零件可匯出為基本體積的 3MF、AMF、OFF 及 STL 格式，輸出模型不包含色彩、材質或零件定義資訊。

設計
OpenSCAD 是以C++開發的 CSG 引擎封裝程式，具備圖形化使用者介面與整合式編輯器。截至 2024 年，正式釋出版本採用計算幾何演算法函式庫（CGAL）作為基礎 CSG 引擎，開發快照版本則額外支援 Manifold作為替代方案。

其腳本語法反映了函數式程式設計的哲學。類似於 Haskell，在作用域內每個「變數」都被視為常數，具有不可變性且最多只能有一個值。

平台實作
官方獨立版本以C++編寫，適用於 Windows、MacOS 和 Linux等作業系統
FreeCAD：具有 OpenSCAD 命令列介面，可替代零件求解器（part solver）或零件工作台（part workbench）使用
瀏覽器實作版本亦可使用，例如 cadhub.xyz 和 jscad.app。

另見
PLaSM：另一種用於創建 3D 物件的開源腳本語言。

註解

參考資料

 外部連結 



 Primary IRC Chat

Category:2010年軟體
Category:自由三维图形软件
Category:電腦輔助設計軟體
Category:特定领域语言
Category:使用Qt的軟體