Open SCAD中文版是一款开源免费的三维CAD建模软件,与常规的三维建模软件相比,Open SCAD中文版最大的特点就是采用基于程序语言的建模方式,用户需要通过编译代码来制作模型,因此需要使用者具备一定的编程能力,有需要的用户敬请下载。

Open SCAD中文版特色介绍
OpenSCAD是一个用于创建立体三维CAD对象的软件。它是免费软件,可用于GNU /Linux,MSWindows和苹果OSX。不同于大多数自由软件,用于创建3D模型(如著名的应用Blender),OpenSCAD不专注于艺术方面的3D建模,而是专注于CAD方面。*它可能当你正在寻找一个建造3D机械零件的应用,但可能不是你在期望的你非常感兴趣的在电脑动画电影。
OpenSCAD不是一个交互建模工具。相反,它是在脚本文件中描述对象,并呈现从脚本文件中的3D模型,上面写着像一个三维的解释。这给了你(设计师)的建模过程的完全控制权,使您可以轻松地更改任何步骤在建模过程中,甚至设计所定义的配置参数。
OpenSCAD包括两个主要的建模技术:*建设性的立体几何(CSG),第二、二维轮廓映射。
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系统中支持大多数硬件。
Open SCAD中文版功能介绍
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 模型观看(三维)
Open SCAD中文版使用教程
OpenSCAD启动画面

当你第一次打开OpenSCAD时,应该会遇到启动画面。在此窗口中,你可以创建新文件,打开现有文件或打开示例。所有示例文件都写得非常好,并展示了如何使用OpenSCAD的关键概念。
在示例框中,转到Basics> CSG.scad,然后单击“打开示例”以打开简单的CSG示例文件。
OpenSCAD接口:文本编辑器

让我们首先查看OpenSCAD窗口的基本部分。OpenSCAD的界面非常简单,仅包含文本编辑器,查看区域和控制台。使用编辑器输入代码,结果模型显示在查看区域中。编辑器中的大多数按钮都是不言自明的(New,Open,Save等)。有趣的是预览,渲染和导出为STL按钮。
点击预览将在查看区域中生成快速模型。这个快速模型显示了模型外观的一般概念,但它不是最终计算的3D模型。按Render告诉OpenSCAD计算最终的3D模型,它会显示精确的读数,但生成时需要比预览更长的时间。渲染模型后,Export as STL将打开一个窗口,将模型另存为STL。
OpenSCAD接口:可视区域

“查看区域”显示3D模型。“预览”和“渲染”按钮与编辑器中的相同。两个中间的按钮组控制着查看器中的“摄像机”:左侧的按钮可以缩放或重置视图,而右侧的按钮可以将摄像机捕捉到标准视图。
最后一组按钮包括Perspective / Orthogonal按钮,Show Axes和Show Scale Marker按钮以及Show Edges按钮。在Orthogonal和Perspective之间切换会更改模型是以等距还是透视显示。(正交视图通常更适合制作机械模型,而透视更适合装饰模型)。
OpenSCAD接口:控制台

控制台显示在查看区域下方,并显示有关计算模型的技术信息。它还显示保存或导出模型的记录,并显示echo()语句的读数。那些不关心引擎盖技术计算的人不必担心控制台。
对象,动作,操作符和变量
OpenSCAD构建的每个模型都是由对象组合构建的。物体是原始形状,如立方体,圆柱体和球体,并形成每个模型的主干。对象由Actions创建并由Operators修改,Variables和Comments进一步增强了代码。
动作用于创建对象或定义变量。例如,Cube(),Cylinder()和Sphere()是创建其对应的原始对象的动作。
操作员修改对象。有许多不同的运算符,它们用于更改对象的许多不同属性,例如其大小或位置。
变量包含数字,字符串(即文本),向量和列表等值。存储在变量中的信息可以由Actions,Operators或其他变量使用。(变量将在本节的OpenSCAD教程中稍后讨论)
注释用于为阅读代码的任何人提供额外信息。它们通常用于提供有关代码的一般信息(如原作者和发布日期),并解释特定行背后的逻辑和推理。注释不会影响对象,并且在OpenSCAD解释和呈现代码时会被忽略。
(还有矢量,列表,模块和函数,但我们将在不同的OpenSCAD教程中处理这些高级概念!)
可以在OpenSCAD用户手册中找到OpenSCAD可用的所有对象,操作和操作符,以及有关如何使用它们的信息。我们将坚持使用本教程中最简单的一个,但请记住,一旦你熟悉了基础知识,就可以使用一个巨大的工具箱。
有了这个,让我们来看看CSG.scad,看看一些动作和操作符的实例!
CSG.scad示例:将对象与Union结合使用

操作员以绿色突出显示,操作以橙色突出显示。(绿色文本是注释。)
在做任何事情之前,我们应该以不同的名称保存文件。我们将在本教程中使用代码,因此我们希望保留原始版本的安全副本。转到文件>另存为...并将其另存为“CSG_tutorial.scad”。完成后,点击“渲染”按钮以查看CSG.scad生成的对象。此示例使用Operators和Actions的不同组合生成三个单独的对象。
我们仔细看看代码。在阅读OpenSCAD代码时,更容易将事物视为代码的“块”,而不是逐行读取。CSG.scad中有三个块,其边界由代码左侧的黑线标记。每个块包含两个动作(立方体和球体)以及一个或两个操作符(平移,联合,交集,差异)。
让我们看看第一个代码块(从第3行开始到第8行结束)。此块定义了“查看区域”左侧的形状,即立方体内的球体。这段代码包含两个Operators和两个Actions:
Translate是一个根据给定的[X,Y,Z]参数移动对象的运算符。在这种情况下,它向下移动一个物体-24毫米的X轴。
Union是一个运算符,它将大括号内的所有对象组合到一个Object中。
Cube是一个创建立方体对象的Action。在这种情况下,每个立方体的边设置为15 mm,“center = true”语句告诉Action从中心绘制立方体。
Sphere是一个创建球体对象的Action。由于该数字尚未定义为半径或直径,因此OpenSCAD假定它是半径。
该块演示了在OpenSCAD中工作的两个关键概念。第一个是操作符仅应用于其边界内的对象。第一个块中的Union运算符仅组合其边界内的Cube和Sphere,并且不包含此文件中的其他对象。同样,第一个块中的Translate Operator仅适用于Unioned Object。如果没有,则此文件中的所有对象将在X轴上以-24为中心!(另请注意,运算符的边界由一对花括号定义,并且其边界内的所有内容都缩进一级。)
下一个重要概念是OpenSCAD始终按顺序执行操作,从最接近Object的Operator开始并向外工作。*在此块中,首先在Cube和Sphere上执行Union操作,然后通过Translate移动Unioned对象。即使在处理大型复杂的Operators和Actions组合时,也要从最里面的Objects / Actions开始,然后向后工作,直到到达最上面的Operator。
(眼尖的读者可能会注意到,在这个块中交换操作符不会对生成的对象产生任何影响,因为即使首先移动Cube和Sphere,Union也会起作用。*有很多次你在需要按特定顺序应用操作,因此习惯于按顺序考虑应用操作符!)
CSG.scad示例:关于语法的注释

现在是提及语法的一些重要观点的好时机。我们刚刚看到操作符的边界由花括号定义。*在整个代码中也可以找到其他语法,如分号和缩进。其中一些对于文件运行至关重要,而另一些则不重要。
关键语法对于代码运行是绝对必要的。如果它丢失或写入不正确,当你尝试预览或渲染模型时,OpenSCAD将抛出错误消息。
以下是OpenSCAD中的关键语法:
每个Action语句的结尾必须以分号结尾。这包括创建对象的操作以及定义变量的操作。
如上所述,花括号(又名大括号,花括号)表示Operator语句的边界。在处理复杂的OpenSCAD项目时,很容易丢失所有大括号。*当你单击大括号时,OpenSCAD会突出显示其匹配的伙伴,这会使事情变得复杂时更容易。
在非关键的语法是没有必要的模型进行编译。*它使代码更容易阅读和编辑。非关键语法的示例包括以下内容:
当你在新的操作员中时,缩进通常会增加,而当操作员完成时,缩进会减少。(在此示例中,因为Union运算符位于Translate运算符内,所以Union缩进了一个级别。因为Cube和Sphere在Union中,它们缩进了两个级别。)OpenSCAD实际上不需要缩进,但是让代码看起来干净整洁。
为了运行OpenSCAD,并不是严格需要换行符(即按Enter键)和空格。从理论上讲,你可以把整个第一个块写成一行,代码仍然可以工作:translate(){union(){cube(15,center = true); sphere(10);}}*把它们拿出来使代码难以阅读。
注释用一对斜杠(“//”)表示。OpenSCAD会忽略一对斜杠后面的所有内容,直到下一行的开头。
(附注:对于熟悉计算机编程的人,你可能会注意到这种语法与C ++基本相同.OpenSCAD主要用C ++编写,*从其母语继承了大部分语法。所以对任何人来说都是如此。熟悉Arduino编程,这应该是轻而易举的!)
CSG.scad示例:交叉点运算符

对于中间对象,再次使用立方体和球体,但使用交叉点运算符而不是联合进行组合。当给定多个对象时,Intersection会生成一个Object,该Object仅由每个重叠的Object的部分组成。换句话说,如果一个对象的任何部分不与其他对象的任何部分相交,则将其从最终的交叉形状中移除。
在第二个块中的Sphere Action之后,将以下行添加到代码中,然后点击Render按钮以显示你的更改:
translate([7.5,0,0]){cube(15,center = true); }这会增加一个额外的立方体,它通过额外的Translate语句向右移动一半长度。请注意,交叉点运算符仅考虑属于所有三个对象的段,并且不与其他两个对象重叠的部分不包含在最终的交叉对象中。
另请注意第二个Translate如何仅在第二个Cube语句中运行。操作符按顺序工作,因此仅在移动第二个多维数据集后才执行“交点操作”。
CSG.scad示例:差异运算符

最右边的形状使用差分算子。差异从另一个对象中减去一个对象,使其对创建孔和其他空间很有用。
差异如何工作(对联盟或交集)的一个重大变化是创建的对象取决于动作/对象在运算符中出现的顺序。尝试在第三个块中切换Cube和Sphere的顺序。请注意,在原始版本的代码中,如何从Cube中减去Sphere,但切换它们会强制相反。
参数化OpenSCAD
现在我们已经了解了CSG.scad示例,让我们来谈谈参数化设计。
在参数化设计中,用户可以更改模型的某些元素,并且设计的其余部分可以适应这些变化。例如,这允许一个人定义不同的螺杆直径,而不必手动筛选代码并替换每个值。
让我们尝试使我们的CSG_tutorial.scad中的三个对象更大。首先用“球体(15)”替换“球体(10)”的所有实例,从球体开始。我们还需要使立方体更大,所以将“cube(15,center = true)”替换为“cube(20,center = true)”。如果使用这些更改呈现代码,则可以看到一些问题:
球体半径与立方体尺寸的比例已经被抛弃,这意味着最终的物体看起来不再像原件那样。
对于我们修改过的中间(交点)对象,对象不再向下拆分,因为我们没有移动第二个立方体。
交点和差异对象彼此重叠,因为它们没有使用翻译运算符分开很远。
对于本OpenSCAD教程的最后一部分,我们将把简单的示例设计转换为参数设计。
制作参数模型:定义变量

我们可以尝试手动修复这些问题,但是每次我们想要更改对象的大小时我们都需要修复它们。相反,让我们做一个适当的参数化设计。
制作参数文件的关键步骤是定义变量而不是使用普通数字。变量是使用一种Action语句创建的,一旦定义了变量,我们就可以在任何可以使用数字的地方使用变量。
在文件顶部的某处添加以下Action语句(可以在第一行的注释之前或之后,但不能在第一个代码块之后):sphere_radius = 10;这将创建一个名为“sphere_radius”的变量,并使其等于10。
接下来,浏览代码并用sphere_radius 替换每个Sphere Action中的每个数字(如上图所示)。尝试渲染文件,然后更改sphere_radius并再次渲染文件。你应该看到每个球体的半径随着sphere_radius的变化而变化。
制作参数模型:定义更多变量

通过定义变量cube_length并将其设置为15(现在),使多维数据集大小的参数化方式与球半径相同。如上所述,用cube_length替换每个Cube语句中的所有数字。
现在我们可以为模型中的所有对象设置球体半径和立方体长度。但是我们怎样才能保持立方体和球体彼此成比例而不自己计算呢?是时候制作一些相关的变量了!
制作参数模型:依赖变量

关于变量的一个方便的事情是它们可以使用其他变量来定义。在其定义中使用其他变量的变量称为从属变量(与独立变量相对,不依赖于任何变量)。
如果我们独立设置sphere_radius和cube_length,我们可能会失去立方体大小与球体大小的原始比例。*我们可以通过将cube_length的定义更改为以下内容来将cube_length更改为从属变量:cube_length = sphere_radius * 1.5;
当我们讨论这个主题时,你也可以通过用translate()替换translate([7.5,0,0]),将我们在步骤4c中添加的Translate运算符从一个公司X坐标更改为一个参数。现在,中间的物体每次都会干净利落地中间!
请注意,始终需要在 它使用的变量定义之后定义从属变量。OpenSCAD逐行读取代码,因此如果你尝试定义cube_length而不定义sphere_radius,OpenSCAD将不知道该怎么做。
制作参数模型:附加的相关变量

最后要修复的是每当球体大小改变时对象之间的间距差。要解决此问题,请创建一个变量来控制每个对象之间的间距:object_separation = sphere_radius * 2 + 4;
在定义cube_length之后插入此Action,然后替换在第7行和第20行的[24,0,0]中和,分别。现在,尝试使用不同的sphere_radius值渲染代码:即使对象变大,它们也应该始终彼此分开4 mm!
IOS苹果签名软件 v8.0 最新绿色版
nsatool(360免疫工具)免费版下载 v1.0 官方最新版
管理Excel免费版下载 v5.9.12.0 官方最新版
Office2010免费版网盘下载 电脑版
安得卫士 v1.0.1.78 官方版
爱采集大师特别版本 v5.3.1.1 特别版
Aiseesoft MXF Converter免注册版本下载 v7.1.58 中文版
Ace Utilities(系统清理工具) v6.6.0.300 免费版
jv16 PowerTools 6下载 v6.0.0.1099 中文特别版
橙刀批量改名器 v1.0.0.1 官方版
卓越电脑定时关机软件下载 v2.0 电脑版
梦想划词翻译插件 v1.6.18 最新版
晓东工具箱免费版 v2021 最新版
Everything绿色版下载 v1.5.0.1400 官方版
超星云盘特别版 v4.5.4 官方版
艾奇KTV电子相册制作软件去除水印版下载 v6.90.721 绿色版





























