3d打印(5):OpenSCAD软件学习

来源:互联网 发布:unity3d 动画帧事件 编辑:程序博客网 时间:2024/06/05 11:28

本文的原文连接是: http://blog.csdn.net/freewebsys/article/details/49993049 未经博主允许不得转载。
博主地址是:http://blog.csdn.net/freewebsys

1,关于openscad

为有创造力的web开发者而设计,OpenSCAD是一个创建立体3D CAD物体的得力软件。

不像大多数穿件3D模型的的自由软件,它不专注于3D模型的艺术方面而是CAD方面。
官网网站:
http://www.openscad.org/

2,打开软件


打开软件:

入门文档:
http://www.tridimake.com/2014/09/how-to-use-openscad-tricks-and-tips-to.html

3, 模型&命令一览图

http://www.openscad.org/cheatsheet/index.html

官方给的,非常全面了。

3.1,3d模型

sphere(radius | d=diameter):球形
sphere(10); //或者sphere(d=20);
默认是半径 ,也可以输入直径。

cube(size, center):长方形
cube([10,10,10]);//第二个参数设置中心
cube([10,10,10],center=true);

cylinder(h,r|d,center)圆柱形
cylinder(h=20,r=5,center=true);

cylinder(h,r1|d1,r2|d2,center):圆锥形
cylinder(h=20,r1=10,r2=5,center=true);

polyhedron(points, triangles, convexity) :多面体

polyhedron(  points=[ [10,10,0],[10,-10,0],[-10,-10,0],[-10,10,0], // the four points at base           [0,0,10]  ],                                 // the apex point   faces=[ [0,1,4],[1,2,4],[2,3,4],[3,0,4],              // each triangle side              [1,0,3],[2,1,3] ]                         // two triangles for square base );


两个参数,第一个是点,从0-5,分别是4个角和顶点。
然后画面,3个点连接成一个平面。比如[0,1,4]代表 0,1,4个点连接成的面。也就是图上的黑色的面。4个面再加上底部的2个三角形组成的面。
其中:[1,0,3],[2,1,3]也可以写成[0,1,2,3]。3个或多个点组成的面。

3.2,坐标转换

translate([x,y,z])
平移中心点,也就是从【0,0,0】移动到【x,y,z】

cube(10,center = true); translate([20,0,0]) sphere(5,center = true);

rotate([x,y,z]) 旋转分别为x,y,z旋转的角度,

rotate([45,45,45]) cube(10,center = true);

让正方形x,y,z分别旋转45°。

scale([x,y,z]) 缩放
沿 x,y,z轴进行缩放

cube(10);translate([15,0,0]) scale([0.5,1,2]) cube(10);


x轴缩小为0.5倍,y轴不变,z轴为2倍。
resize([x,y,z],auto) 调整大小:

resize(newsize=[30,20,15]) sphere(r=10);

将一个圆球变成椭圆球体。

mirror([x,y,z]) 镜像

cube([10,15,10]);mirror([1,0,0]) cube([10,15,10]);mirror([0,1,0]) cube([10,15,10]);mirror([0,0,1]) cube([10,15,10]);

将cube沿x,y,z轴进行镜像

color(“colorname”)/color([r,g,b,a]) 颜色
一个红色的立方体

color("Red",1.0) cube([10,10,10]);


支持好多种颜色:

3.3,特殊字符

* disable 禁用! show only 只显示# highlight / debug 调试% transparent / background 作为背景// 注释/**/ 多行注释

3.4,函数

和编程语言类似,初级学习还用不到。
echo(…)
for (i = [start:end]) { … }
for (i = [start:step:end]) { … }
for (i = […,…,…]) { … }
intersection_for(i = [start:end]) { … }
intersection_for(i = [start:step:end]) { … }
intersection_for(i = […,…,…]) { … }
if (…) { … }
assign (…) { … }
import(“….stl”)
linear_extrude(height,center,convexity,twist,slices)
rotate_extrude(angle,convexity)
surface(file = “….dat”,center,convexity)
projection(cut)
render(convexity)
children([idx])

4,总结

本文的原文连接是: http://blog.csdn.net/freewebsys/article/details/49993049 未经博主允许不得转载。
博主地址是:http://blog.csdn.net/freewebsys

OpenSCAD 是非常不错的cad软件,符合开发者使用。
有命令行,非常简单,可以编写程序一样的画3d图像。
比起autocad 要更简单,做一些小零件还是非常方便的。
就像用python程序开发一样,只不过这个是输出3d图像。

0 0