gpt4 book ai didi

polygons - 删除多边形的一部分会使整个事物不呈现

转载 作者:行者123 更新时间:2023-12-05 06:43:55 26 4
gpt4 key购买 nike

所以,我做了一个棱镜:

width=30
thickness=15
polyhedron(
points=[
[width,0,0],[width,0,thickness],
[width,width,0],[width,width,thickness],
[0,width,0],[0,width,thickness]
],
faces=[
[1,3,5], [0,2,4],[1,0,2,3],[3,5,4,2],[1,5,4,0]
]
);

渲染得很好: enter image description here

然后,我删除其中的一部分:

difference () {
<THAT PRISM>
translate([0,0,thickness-5]) cylinder(r=width-10, h=6);
}

我得到的是一个不完整的多边形,而不是从其中取出圆形 block 的棱镜:enter image description here那是怎么回事?我对差异声明做错了什么?

最佳答案

你的脸方向错了,见documentation .从外面看时,点的顺序必须是顺时针的。这是正确的面孔:

faces=[
//[1,3,5], [0,2,4],[1,0,2,3],[3,5,4,2],[1,5,4,0]
[1,5,3],[0,2,4],[0,1,3,2],[3,5,4,2],[0,4,5,1]
// edit 27.07.2015 order of faces changed
]

编辑 27.07.2015:

有了你的脸,控制台中应该有这样的输出:

Top level object is a 3D object:
Simple: no
Vertices: 15
Halfedges: 30
Edges: 15
Halffacets: 4
Facets: 2
Volumes: 1
WARNING: Object may not be a valid 2-manifold and may need repair!
Rendering finished.

“简单:否”和警告是提示,您的多面体无效。如果对象有效,它将是“简单:是”,没有任何警告。

关于polygons - 删除多边形的一部分会使整个事物不呈现,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31641753/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com