Openscad 设计碗但是。。。UI警告:对象可能不是有效的2流形,可能需要修复
我正在尝试在OpenSCAD上创建一个设计。有没有一个数学公式可以得到正确的结果 以下是我创建的代码:Openscad 设计碗但是。。。UI警告:对象可能不是有效的2流形,可能需要修复,openscad,Openscad,我正在尝试在OpenSCAD上创建一个设计。有没有一个数学公式可以得到正确的结果 以下是我创建的代码: $fn=60; module Bowl(diameter,thickness) { rim=thickness/2; half=diameter/2; union(){ // Main Bowl difference(){ // Outer Ball sphere(d=diameter);
$fn=60;
module Bowl(diameter,thickness)
{
rim=thickness/2;
half=diameter/2;
union(){
// Main Bowl
difference(){
// Outer Ball
sphere(d=diameter);
// Inner Ball
sphere(d=diameter-thickness*2);
// Cutting Cube
translate([-half-0.5,-half-0.5,-half])
cube([diameter+1,diameter+1,half+rim]);
}
// Rim
translate([0,0,rim])
difference(){
// Torus
rotate_extrude()
translate([(diameter-thickness)/2,0,0])
circle(d=thickness);
// Cutting Cube
translate([-half-0.5,-half-0.5,0])
cube([diameter+1,diameter+1,rim+1]);
}
}
}
rotate([0,180,0])
Bowl(7,1);
这里的形状是一个圆形边缘的碗,从侧面看是半圆形的
理想的形状应该是平滑的,没有边缘,但是,当前的形状有边缘,因为边缘和主体不能对齐
它给出了错误消息:
UI警告:对象可能不是有效的2流形,可能需要修复
你真的不需要切割圆环体的立方体,似乎接触到的面让人困惑。 我想这就是你想要的,不用做几何:
$fn=200;
module Bowl(diameter,thickness)
{
rim=thickness/2;
half=diameter/2;
// Main Bowl
#difference(){
// Outer Ball
sphere(d=diameter);
// Inner Ball
sphere(d=diameter-thickness*2);
// Cutting Cube
translate([-half-0.5,-half-0.5,-half])
cube([diameter+1,diameter+1,half]);
}
// Rim
difference(){
// Torus
rotate_extrude()
translate([(diameter-thickness)/2,0,0])
circle(d=thickness);
}
}
rotate([0,180,0])
Bowl(7,1);
你真的不需要切割圆环体的立方体,似乎接触到的面让人困惑。 我想这就是你想要的,不用做几何:
$fn=200;
module Bowl(diameter,thickness)
{
rim=thickness/2;
half=diameter/2;
// Main Bowl
#difference(){
// Outer Ball
sphere(d=diameter);
// Inner Ball
sphere(d=diameter-thickness*2);
// Cutting Cube
translate([-half-0.5,-half-0.5,-half])
cube([diameter+1,diameter+1,half]);
}
// Rim
difference(){
// Torus
rotate_extrude()
translate([(diameter-thickness)/2,0,0])
circle(d=thickness);
}
}
rotate([0,180,0])
Bowl(7,1);