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。