文档章节

OpenSCAD空间几何布尔运算

openthings
 openthings
发布于 2015/02/09 16:20
字数 363
阅读 527
收藏 2

原文地址(英): https://en.wikibooks.org/wiki/OpenSCAD_User_Manual/CSG_Modelling#difference

Union:合并

创建一个合并的对象,使用union操作符,如下图所示。

Usage example:

union() {
        cylinder (h = 4, r=1, center = true, $fn=100);
        rotate ([90,0,0]) cylinder (h = 4, r=0.9, center = true, $fn=100);
}

    注意: union是隐含的,当未使用时。但当两个对象相交时,就成为必然的操作。

Union

difference:切割

    从主对象中把所有字对象挖出,如下所示:

    Usage example:

difference() {
        cylinder (h = 4, r=1, center = true, $fn=100);
        rotate ([90,0,0]) cylinder (h = 4, r=0.9, center = true, $fn=100);
}


Difference


intersection:求交

    创建所有子对象的交集,保留重叠的部分。如下所示:

Usage example:

intersection() {
        cylinder (h = 4, r=1, center = true, $fn=100);
        rotate ([90,0,0]) cylinder (h = 4, r=0.9, center = true, $fn=100);
}


Intersection


render:渲染

总是计算CSG model(even in OpenCSG preview mode).

Usage example:
render(convexity = 1) { ... }


convexity Integer. The convexity parameter specifies the maximum number of front sides (back sides) a ray intersecting the object might penetrate. This parameter is only needed for correctly displaying the object in OpenCSG preview mode and has no effect on the polyhedron rendering.


Openscad convexity.jpg

This image shows a 2D shape with a convexity of 4, as the ray indicated in red crosses the 2D shape a maximum of 4 times. The convexity of a 3D shape would be determined in a similar way. Setting it to 10 should work fine for most cases.


本文转载自:https://en.wikibooks.org/wiki/OpenSCAD_User_Manual/CSG_Modelling#difference

openthings
粉丝 309
博文 1116
码字总数 644109
作品 1
东城
架构师
私信 提问
UbuntuKylin15.04编译OpenSCAD源码

OpenSCAD(http://www.openscad.org)是一个简单高效的三维建模软件,使用模型描述脚本进行建模,使用CGAL引擎进行几何体的空间布尔运算。这里介绍其源码编译方法,使用UbuntuKylin15.04. 把下...

openthings
2015/08/03
0
0
OpenSCAD使用总结-中文

OpenSCAD是用程序的方式生成模型,搞软件的人应该很熟悉这种方式,但习惯交互式造型设计的就不用看这个了。创建模型的方法就像是用脚本语言编写一段程序,然后编译,总体感觉简单、便捷、易学...

openthings
2015/01/29
0
0
OpenSCAD、Blender和Textmate\SublimeText遇见后发生的一切...

TextmateSublimeText是编码极客们喜爱的玩具。OpenSCAD可以用MDL(机械定义语言)的方式来构建三维几何对象,而Blender除了交互三维建模之外,也支持以Python来构建几乎任何几何对象。 现在,这...

openthings
2015/03/13
0
1
3D打印开放工具链-开源而且免费

开源的3D打印开放工具链: 3D打印机:DreamMaker,由DFRobot生产,这是中国很早做创客产品的机构。是实现同样精度的成本最低的产品了,非常酷,而且易于学习。 基础建模软件:OpenSCAD,以程...

openthings
2015/02/12
0
0
OpenSCAD中使用include或use引入外部库

一、OpenSCAD 使用include或use引入外部库 本文英文版本参考:https://en.wikibooks.org/wiki/OpenSCADUserManual/IncludeStatement ===========================...

openthings
2015/04/07
0
0

没有更多内容

加载失败,请刷新页面

加载更多

聊聊中国的通信行业:从“七国八制”到“中华”脊梁

本期文章和大家一起来聊一聊我曾经从事过的通信行业吧。最近各方面信息的泛滥,包括和华为的同学聊天,自己确实也感慨颇多。想想我自己本科主修通信工程,研究生再修信息与通信工程,从本科开...

CodeSheep
50分钟前
4
0
MDK:ARM M451M:exceed the range of code meory, continue to erase or not?

问题: 代码空间超限 几天前就遇到:exceed the range of code meory, continue to erase or not? 如下所示: 解决过程 开始以为中MDK软件的128KB限制,如是就不能生成HEX文件,应该链接时有提...

SamXIAO
57分钟前
1
1
OSChina 周六乱弹 —— 因违反《中华人民共和国治安管理处罚法》第四十四条之规定

Osc乱弹歌单(2019)请戳(这里) 【今日歌曲】 @xiaoshiyue :#今日歌曲推荐# 惊艳分享谷微的单曲《安守本份》(@网易云音乐) 《安守本份》- 谷微 手机党少年们想听歌,请使劲儿戳(这里) ...

小小编辑
今天
292
7
Angular 英雄编辑器

应用程序现在有了基本的标题。 接下来你要创建一个新的组件来显示英雄信息并且把这个组件放到应用程序的外壳里去。 创建英雄组件 使用 Angular CLI 创建一个名为 heroes 的新组件。 ng gener...

honeymoose
今天
8
0
Kernel DMA

为什么会有DMA(直接内存访问)?我们知道通常情况下,内存数据跟外设之间的通信是通过cpu来传递的。cpu运行io指令将数据从内存拷贝到外设的io端口,或者从外设的io端口拷贝到内存。由于外设...

yepanl
今天
6
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部