OpenSCAD是用程序的方式生成模型,搞軟件的人應該很熟悉這種方式,但習慣交互式造型設計的就不用看這個了。建立模型的方法就像是用腳本語言編寫一段程序,而後編譯,整體感受簡單、便捷、易學,教程完善,安裝方便,功能強悍。html
官方網站:http://www.openscad.org/shell
詳細的教程看這裏:http://my.oschina.net/bywetech/blog/167043
編程
OpenSCAD是一個用於建立立體三維CAD對象的軟件。它是免費軟件,可用於GNU /Linux,MSWindows和蘋果OSX。不一樣於大多數自由軟件,用於建立3D模型(如著名的應用Blender),OpenSCAD不專一於藝術方面的3D建模,而是專一於CAD方面。所以,它可能當你正在尋找一個建造3D機械零件的應用,但可能不是你在指望的你很是感興趣的在電腦動畫電影。
windows
OpenSCAD不是一個交互建模工具。相反,它是在腳本文件中描述對象,並呈現從腳本文件中的3D模型,上面寫着像一個三維的解釋。這給了你(設計師)的建模過程的徹底控制權,使您能夠輕鬆地更改任何步驟在建模過程當中,甚至設計所定義的配置參數。框架
OpenSCAD包括兩個主要的建模技術:首先,建設性的立體幾何(CSG),第2、二維輪廓映射。編輯器
AutoCAD DXF (qcad, librecad )文件做爲數據交換格式的二維輪廓。除了2D路徑輸出,但也能夠從DXF文件讀取設計參數。除了讀取DXF文件,OpenSCAD還能夠讀取和建立三維模型的STL和OFF文件格式。此類openCASCADE,區別是:openCASCADE是一個標準的C++庫,自己就是專業的CAD庫;而openSCAD是利用openCSG和CGAL,這兩個標準C++庫來完成CAD, 主要以立體幾何圖像技術和openGL渲染完成CAD模型。
工具
OpenSCAD基於圖形的構創建體幾何用openGL作渲染的軟件庫,使用C++語言編寫並在windows/Linux系統中支持大多數硬件。佈局
CGAL開源項目,目標是以C++庫的形式提供方便,高效,可靠的幾何運算,CGAL應用到在諸多方面有幾何運算須要的地方,如:計算機圖形學,科學可視化,計算機輔助設計與建模,地理信息系統,分子生物學,醫學成像,機器人技術和運動規劃,網格生成,數值計算方法等等, 相見http://www.cgal.org/動畫
1 Creating a simple model 建立一個簡單模型 2 Opening an existing example model 打開一個已經存在的例子模型 3 Positioning an object 位置佈局(置位)於對象模型 4 Changing the colour of an object 更改對象模型的顏色 5 Model views 模型觀看(三維)
咱們第一個模型是建立一個簡單的2*3*4的立方提,在openSCAD的編輯器,輸入一下命令:網站
cube([2,3,4]);
編譯和透視咱們的第一個模型。立方體模型能夠編譯和預覽。(當openSCAD編輯器在中心的時候)敲擊F6鍵,是用CGAL模塊透視和編譯模型。而後點擊Design-> compile, 或者直接鍵盤敲擊F5,表示把文本輸入的命令轉換編譯成三維模型,到模型查看器,openGL的模塊。
截圖2-1:openSCAD簡單的立方體模型。
打開一個或者多個模型是從OpenSCAD的File->open (快捷鍵 Ctrl+O)就能夠打開一個文件管理窗口,選擇目標文件便可,也能夠在終端中直接輸入命令打開,openscad /home/user/xxx/example004.scad 命令是openscad,文件加上文件的路徑,或者在當前路徑可直接輸入文件名便可。
還能夠把目標文件用gedit, geany, leafpad, vi, nano之類的文本編輯器 Text Editor打開,而後將內容複製到openSCAD的文本編輯器中。
使用案例1, – example004.scad:
difference() { cube(30,center=true); sphere(20); } translate([0, 0, 30]) { cylinder(h=40, r=10); }
完成複製例子代碼後敲擊F5鍵。而後就能夠預覽你複製的代碼的透視圖。
你能夠有三種動態的預覽框架:
按住鼠標左鍵,將光標移動到模型,能夠旋轉預覽,底部的消息欄的rotate = [ 22.22 000 333],這些信息將隨着你的鼠標選擇的旋轉方向的角度而改變角度。按住shift鍵盤能夠旋轉的方向。
按住鼠標右鍵,將光標移動到模型,能夠放置和移動預覽觀看,底部消息欄的 translate = [ 22, 222, 333] 的參數將隨着鼠標的移動而改變。
3,使用鼠標的旋轉滑輪(第三鍵)能夠放大和縮小模型,也能夠用+和-鍵,或者按住鼠標的右鍵/或者按住鼠標的第三鍵,同時按住鍵盤的shift鍵,能夠放大和縮放,底部的信息欄同業在distance = 555, 的位置會伴隨這放大和縮放的改變而改變。
位移一個對象模型Positioning an object
咱們已經看到了如何建立一個簡單的立方體,咱們下一段試着使用位置移動命令來從一個已經存在的立方體放置移動出另外一個一樣的立方體。
Usage example 1 - positioning an object:
使用例子 1- 位移放置一個對象模型
cube([2,3,4]); translate([3,0,0]) { cube([2,3,4]); }
在放置(translate)命令後的那裏沒有分號。
注意:那裏沒有分號跟隨在放置位移命令。由於放置位移命令屬於跟隨的對象模型。若是分號沒有被省略掉,而後放置位移的命令的效果將會終止,那麼第二個立方體的位置將和第一個的位置是一樣的,重疊的。
咱們能夠改變一個對象模型的顏色源於給出的RGB值。之中包括傳統的RGB值從0-255浮點數使用從0.0到1.0.
使用案例1- 改變一個對象模型的顏色:
color([1,0,0]) cube([2,3,4]); translate([3,0,0]) color([0,1,0]) cube([2,3,4]); translate([6,0,0]) color([0,0,1]) cube([2,3,4]);
改變一個對象模型的顏色。顏色的名字能夠從2011.12版本(或者更新的版本)。
名字就像是網頁的顏色,例如:color(「red」) cube();
若是你想相關的命令就像是句子,而後,在句子中color()就是一個」形容詞「,能夠描述」物體「(名詞)。這樣,物體就是cube()將會建立。在句子中形容詞的位置在名詞的前面,就像:color() cube()。一樣,translate()能夠想象成一個「動詞」能夠是物體運動,就像:translate() color() cube()。
接下來的代碼將產生一樣的結果:
translate([6,0,0]) { color([0,0,1]) cube([2,3,4]); } // notice that there is NO semicolon // notice the semicolon is at the end of all related
顏色的更改僅僅侷限於預覽模式(F5),透視圖模式(F6)不支持配置的顏色。
表面查看:表面查看是初始模型查看產生,當模型代碼第一次透視。
僅CGAL網格:僅CGAL網格查看僅表示在邊面之下的」腳手架同樣的框架「,想象埃菲爾鐵塔。
OpenCSG查看:這個查看模式的功能源自 open 結構立體幾何軟件庫,生成的openGL功能的模型預覽。若是openCSG庫不可用或者顯卡或者驅動不知openGL,這個查看將沒法產生輸出圖形。
The grid only view
只有視圖顯示網格線彌補的對象,也被稱爲線框。
線框是一個三維或物理對象的視覺呈現。使用線框模型容許底層設計結構的三維模型的可視化。因爲線框效果圖是比較簡單和快速計算,他們常常使用的狀況下,高畫面的幀速率是必要的(例如,當使用一個特別複雜的3D模型,或在實時系統中的車型外觀現象)。當須要更大的圖形細節,
表面紋理能夠被自動添加完成後的初始呈現線框。這容許設計師快速審查chansolids,或旋轉對象,新的指望長期拖延的見解,並無更逼真的 rendering.The線框格式也是很是適合普遍應用於刀具路徑編程DNC(直接數字控制)機牀。線框模型也被用來做爲輸入CAM(計算機輔助製造)。線框是最抽象的和最現實的三個主要的CAD模型。這種建模方法,包括僅定義一個對象的邊緣的線,點和曲線。
下圖分別是查看選項中,選項 View-> show edge / show axes /show crosschair。