Hello OpenSCAD,
When I look at the F5 rendering of this I get exactly what I want.
F6 seems to have turned the difference inside out and with the cube in there for looking at cross sections (thank you to Roger Wolf) it gives an error on F6 but OK on F5.
Thank you for your help. Yes, I am inconsistent with use of cylinder and cyl. Just learning to use BOSL more.
Bob
// top hat for earnest
// Bob Roos
// November 21, 2022
$fn = 36;
include <BOSL2/std.scad>
Wb = 100;
Wh = 60;
H = 45;
T = 2.5;
MH = 3; // attachment hole for rubber band
difference(){
union(){
cyl(d=Wh,h=H,rounding=2); // main part of hat
translate([0,0,H/2])cyl(d=Wb,h=T,rounding=2); // brim
}
translate([0,0,T])cylinder(d=Wh-2T,h=H,center=true); // remove central part
/
#translate([0,-(Wh+T)/2,(H)/2])cylinder(d=MH,h=T,center=true); // attachment hole
#rotate(9)translate([0,-(Wh+T)/2,(H)/2])cylinder(d=MH,h=T,center=true); // attachment hole
#rotate(189)translate([0,-(Wh+T)/2,(H)/2])cylinder(d=MH,h=T,center=true); // attachment hole
#rotate(180)translate([0,-(Wh+T)/2,(H)/2])cylinder(d=MH,h=T,center=true); // attachment hole
*/
}
--
Best regards,
Bob mailto:roosbob@wybatap.com
Hi OpenSCAD,
Seems the culprit is the rounding on
cyl(d=Wh,h=H,rounding=2); // main part of hat
I only wanted rounding on the top so I need to look up more about it on BOSL2
Bob
Thursday, November 24, 2022, 5:06:20 AM, you wrote:
Hello OpenSCAD,
When I look at the F5 rendering of this I get exactly what I want.
F6 seems to have turned the difference inside out and with the cube in there for looking at cross sections (thank you to Roger Wolf) it gives an error on F6 but OK on F5.
Thank you for your help. Yes, I am inconsistent with use of cylinder and cyl. Just learning to use BOSL more.
Bob
// top hat for earnest
// Bob Roos
// November 21, 2022
$fn = 36;
include <BOSL2/std.scad>
Wb = 100;
Wh = 60;
H = 45;
T = 2.5;
MH = 3; // attachment hole for rubber band
difference(){
union(){
cyl(d=Wh,h=H,rounding=2); // main part of hat
translate([0,0,H/2])cyl(d=Wb,h=T,rounding=2); // brim
}
translate([0,0,T])cylinder(d=Wh-2T,h=H,center=true); // remove central part
/
#translate([0,-(Wh+T)/2,(H)/2])cylinder(d=MH,h=T,center=true); // attachment hole
#rotate(9)translate([0,-(Wh+T)/2,(H)/2])cylinder(d=MH,h=T,center=true); // attachment hole
#rotate(189)translate([0,-(Wh+T)/2,(H)/2])cylinder(d=MH,h=T,center=true); // attachment hole
#rotate(180)translate([0,-(Wh+T)/2,(H)/2])cylinder(d=MH,h=T,center=true); // attachment hole
*/
}
--
have Fun,
Bob mailto:roosbob@wybatap.com
Hi Bob,
needed to say rounding1 instead of rounding. BOSL2 is great!
Bob
Thursday, November 24, 2022, 5:43:01 AM, you wrote:
Hi OpenSCAD,
Seems the culprit is the rounding on
cyl(d=Wh,h=H,rounding=2); // main part of hat
I only wanted rounding on the top so I need to look up more about it on BOSL2
Bob
Thursday, November 24, 2022, 5:06:20 AM, you wrote:
Hello OpenSCAD,
When I look at the F5 rendering of this I get exactly what I want.
F6 seems to have turned the difference inside out and with the cube in there for looking at cross sections (thank you to Roger Wolf) it gives an error on F6 but OK on F5.
Thank you for your help. Yes, I am inconsistent with use of cylinder and cyl. Just learning to use BOSL more.
Bob
// top hat for earnest
// Bob Roos
// November 21, 2022
$fn = 36;
include <BOSL2/std.scad>
Wb = 100;
Wh = 60;
H = 45;
T = 2.5;
MH = 3; // attachment hole for rubber band
difference(){
union(){
cyl(d=Wh,h=H,rounding=2); // main part of hat
translate([0,0,H/2])cyl(d=Wb,h=T,rounding=2); // brim
}
translate([0,0,T])cylinder(d=Wh-2T,h=H,center=true); // remove central part
/
#translate([0,-(Wh+T)/2,(H)/2])cylinder(d=MH,h=T,center=true); // attachment hole
#rotate(9)translate([0,-(Wh+T)/2,(H)/2])cylinder(d=MH,h=T,center=true); // attachment hole
#rotate(189)translate([0,-(Wh+T)/2,(H)/2])cylinder(d=MH,h=T,center=true); // attachment hole
#rotate(180)translate([0,-(Wh+T)/2,(H)/2])cylinder(d=MH,h=T,center=true); // attachment hole
*/
}
--
have Fun,
Bob mailto:roosbob@wybatap.com
I'm not sure what you were seeing about F5 and F6 disagreeing. I get an
error from F6, and it's because the rounding is too big to fit and creates
a non-manifold self-intersecting shape. This is actually a BOSL2 bug: you
should get an error from BOSL2 that tells you your rounding is too big to
fit.
[image: image.png]
On Thu, Nov 24, 2022 at 6:11 AM Bob Roos roosbob@wybatap.com wrote:
Hi Bob,
needed to say rounding1 instead of rounding. BOSL2 is great!
Bob
Thursday, November 24, 2022, 5:43:01 AM, you wrote:
Hi OpenSCAD,
Seems the culprit is the rounding on
cyl(d=Wh,h=H,rounding=2); // main part of hat
I only wanted rounding on the top so I need to look up more about it on
BOSL2
Bob
Thursday, November 24, 2022, 5:06:20 AM, you wrote:
Hello OpenSCAD,
When I look at the F5 rendering of this I get exactly what I want.
F6 seems to have turned the difference inside out and with the cube in
there for looking at cross sections (thank you to Roger Wolf) it gives an
error on F6 but OK on F5.
Thank you for your help. Yes, I am inconsistent with use of cylinder
and cyl. Just learning to use BOSL more.
Bob
// top hat for earnest
// Bob Roos
// November 21, 2022
$fn = 36;
include <BOSL2/std.scad>
Wb = 100;
Wh = 60;
H = 45;
T = 2.5;
MH = 3; // attachment hole for rubber band
difference(){
union(){
cyl(d=Wh,h=H,rounding=2); // main part of hat
translate([0,0,H/2])cyl(d=Wb,h=T,rounding=2); // brim
}
translate([0,0,T])cylinder(d=Wh-2*T,h=H,center=true); // remove
central part
/*
#translate([0,-(Wh+T)/2,(H)/2])cylinder(d=MH,h=T,center=true); //
attachment hole
#rotate(9)translate([0,-(Wh+T)/2,(H)/2])cylinder(d=MH,h=T,center=true);
// attachment hole
#rotate(189)translate([0,-(Wh+T)/2,(H)/2])cylinder(d=MH,h=T,center=true);
// attachment hole
#rotate(180)translate([0,-(Wh+T)/2,(H)/2])cylinder(d=MH,h=T,center=true);
// attachment hole
*/
}
--
have Fun,
Bob mailto:roosbob@wybatap.com
OpenSCAD mailing list
To unsubscribe send an email to discuss-leave@lists.openscad.org
Hi Adrian,
I tried to reproduce the error again. I changed rounding1 to rounding and the F6 image came out as expected with the rounding at the bottom showing.
That really should not be there so rounding1 is the answer. It is not too big for the that cylinder.
Adding the cutaway cube back in makes no difference. It renders perfectly. I don't get it. I wish I had copied the original error, but what good is that if it can't be reproduced.
Bob
Thursday, November 24, 2022, 8:38:06 AM, you wrote:
I'm not sure what you were seeing about F5 and F6 disagreeing. I get an error from F6, and it's because the rounding is too big to fit and creates a non-manifold self-intersecting shape. This is actually a BOSL2 bug: you should get an error from BOSL2 that tells you your rounding is too big to fit.
On Thu, Nov 24, 2022 at 6:11 AM Bob Roos roosbob@wybatap.com wrote:
Hi Bob,
needed to say rounding1 instead of rounding. BOSL2 is great!
Bob
Thursday, November 24, 2022, 5:43:01 AM, you wrote:
Hi OpenSCAD,
Seems the culprit is the rounding on
cyl(d=Wh,h=H,rounding=2); // main part of hat
I only wanted rounding on the top so I need to look up more about it on BOSL2
Bob
Thursday, November 24, 2022, 5:06:20 AM, you wrote:
Hello OpenSCAD,
When I look at the F5 rendering of this I get exactly what I want.
F6 seems to have turned the difference inside out and with the cube in there for looking at cross sections (thank you to Roger Wolf) it gives an error on F6 but OK on F5.
Thank you for your help. Yes, I am inconsistent with use of cylinder and cyl. Just learning to use BOSL more.
Bob
// top hat for earnest
// Bob Roos
// November 21, 2022
$fn = 36;
include <BOSL2/std.scad>
Wb = 100;
Wh = 60;
H = 45;
T = 2.5;
MH = 3; // attachment hole for rubber band
difference(){
union(){
cyl(d=Wh,h=H,rounding=2); // main part of hat
translate([0,0,H/2])cyl(d=Wb,h=T,rounding=2); // brim
}
translate([0,0,T])cylinder(d=Wh-2T,h=H,center=true); // remove central part
/
#translate([0,-(Wh+T)/2,(H)/2])cylinder(d=MH,h=T,center=true); // attachment hole
#rotate(9)translate([0,-(Wh+T)/2,(H)/2])cylinder(d=MH,h=T,center=true); // attachment hole
#rotate(189)translate([0,-(Wh+T)/2,(H)/2])cylinder(d=MH,h=T,center=true); // attachment hole
#rotate(180)translate([0,-(Wh+T)/2,(H)/2])cylinder(d=MH,h=T,center=true); // attachment hole
*/
# translate([0,0,-H])cube([Wb,Wb,Wb]); // examine cross sections
}
--
have Fun,
Bob mailto:roosbob@wybatap.com
The code I copied from your example had a cylinder with a height of T=2.5
and a rounding of 2. This means round both ends with radius 2, which
doesn't fit in a total height of 2.5. This is on the brim part of the
hat. I don't know what you wanted to do, maybe a rounding of T/2? But as
coded it does not fit and should be an error, and that is why F6 gives an
error. Your picture is zoomed in so I'm not sure where it is in the
model, but somewhere else than the place I'm looking.
On Thu, Nov 24, 2022 at 9:11 AM Bob Roos roosbob@wybatap.com wrote:
Hi Adrian,
I tried to reproduce the error again. I changed rounding1 to rounding and
the F6 image came out as expected with the rounding at the bottom showing.
That really should not be there so rounding1 is the answer. It is not
too big for the that cylinder.
Adding the cutaway cube back in makes no difference. It renders
perfectly. I don't get it. I wish I had copied the original error, but
what good is that if it can't be reproduced.
Bob
Thursday, November 24, 2022, 8:38:06 AM, you wrote:
I'm not sure what you were seeing about F5 and F6 disagreeing. I get an
error from F6, and it's because the rounding is too big to fit and creates
a non-manifold self-intersecting shape. This is actually a BOSL2 bug: you
should get an error from BOSL2 that tells you your rounding is too big to
fit.
[image: image.png]
On Thu, Nov 24, 2022 at 6:11 AM Bob Roos roosbob@wybatap.com wrote:
Hi Bob,
needed to say rounding1 instead of rounding. BOSL2 is great!
Bob
Thursday, November 24, 2022, 5:43:01 AM, you wrote:
Hi OpenSCAD,
Seems the culprit is the rounding on
cyl(d=Wh,h=H,rounding=2); // main part of hat
I only wanted rounding on the top so I need to look up more about it on
BOSL2
Bob
Thursday, November 24, 2022, 5:06:20 AM, you wrote:
Hello OpenSCAD,
When I look at the F5 rendering of this I get exactly what I want.
F6 seems to have turned the difference inside out and with the cube in
there for looking at cross sections (thank you to Roger Wolf) it gives an
error on F6 but OK on F5.
Thank you for your help. Yes, I am inconsistent with use of cylinder
and cyl. Just learning to use BOSL more.
Bob
// top hat for earnest
// Bob Roos
// November 21, 2022
$fn = 36;
include <BOSL2/std.scad>
Wb = 100;
Wh = 60;
H = 45;
T = 2.5;
MH = 3; // attachment hole for rubber band
difference(){
union(){
cyl(d=Wh,h=H,rounding=2); // main part of hat
translate([0,0,H/2])cyl(d=Wb,h=T,rounding=2); // brim
}
translate([0,0,T])cylinder(d=Wh-2*T,h=H,center=true); // remove
central part
/*
#translate([0,-(Wh+T)/2,(H)/2])cylinder(d=MH,h=T,center=true); //
attachment hole
#rotate(9)translate([0,-(Wh+T)/2,(H)/2])cylinder(d=MH,h=T,center=true);
// attachment hole
#rotate(189)translate([0,-(Wh+T)/2,(H)/2])cylinder(d=MH,h=T,center=true);
// attachment hole
#rotate(180)translate([0,-(Wh+T)/2,(H)/2])cylinder(d=MH,h=T,center=true);
// attachment hole
*/
}
--
have Fun,
Bob mailto:roosbob@wybatap.com
OpenSCAD mailing list
To unsubscribe send an email to discuss-leave@lists.openscad.org
--
have Fun,
Bob mailto:roosbob@wybatap.com
roosbob@wybatap.com
OpenSCAD mailing list
To unsubscribe send an email to discuss-leave@lists.openscad.org
Hi Adrian,
You are correct it is somewhere else. The line above the one you were looking at.
H = 45;
cyl(d=Wh,h=H,rounding=2); // main part of hat
I changed that to rounding1=2.
Anyway, thank you to all for your help, I got the print I wanted and my grandson is delighted.
Bob
Thursday, November 24, 2022, 9:27:43 AM, you wrote:
The code I copied from your example had a cylinder with a height of T=2.5 and a rounding of 2. This means round both ends with radius 2, which doesn't fit in a total height of 2.5. This is on the brim part of the hat. I don't know what you wanted to do, maybe a rounding of T/2? But as coded it does not fit and should be an error, and that is why F6 gives an error. Your picture is zoomed in so I'm not sure where it is in the model, but somewhere else than the place I'm looking.
On Thu, Nov 24, 2022 at 9:11 AM Bob Roos roosbob@wybatap.com wrote:
Hi Adrian,
I tried to reproduce the error again. I changed rounding1 to rounding and the F6 image came out as expected with the rounding at the bottom showing.
That really should not be there so rounding1 is the answer. It is not too big for the that cylinder.
Adding the cutaway cube back in makes no difference. It renders perfectly. I don't get it. I wish I had copied the original error, but what good is that if it can't be reproduced.
Bob
Thursday, November 24, 2022, 8:38:06 AM, you wrote:
I'm not sure what you were seeing about F5 and F6 disagreeing. I get an error from F6, and it's because the rounding is too big to fit and creates a non-manifold self-intersecting shape. This is actually a BOSL2 bug: you should get an error from BOSL2 that tells you your rounding is too big to fit.
On Thu, Nov 24, 2022 at 6:11 AM Bob Roos roosbob@wybatap.com wrote:
Hi Bob,
needed to say rounding1 instead of rounding. BOSL2 is great!
Bob
Thursday, November 24, 2022, 5:43:01 AM, you wrote:
Hi OpenSCAD,
Seems the culprit is the rounding on
cyl(d=Wh,h=H,rounding=2); // main part of hat
I only wanted rounding on the top so I need to look up more about it on BOSL2
Bob
Thursday, November 24, 2022, 5:06:20 AM, you wrote:
Hello OpenSCAD,
When I look at the F5 rendering of this I get exactly what I want.
F6 seems to have turned the difference inside out and with the cube in there for looking at cross sections (thank you to Roger Wolf) it gives an error on F6 but OK on F5.
Thank you for your help. Yes, I am inconsistent with use of cylinder and cyl. Just learning to use BOSL more.
Bob
// top hat for earnest
// Bob Roos
// November 21, 2022
$fn = 36;
include <BOSL2/std.scad>
Wb = 100;
Wh = 60;
H = 45;
T = 2.5;
MH = 3; // attachment hole for rubber band
difference(){
union(){
cyl(d=Wh,h=H,rounding=2); // main part of hat
translate([0,0,H/2])cyl(d=Wb,h=T,rounding=2); // brim
}
translate([0,0,T])cylinder(d=Wh-2T,h=H,center=true); // remove central part
/
#translate([0,-(Wh+T)/2,(H)/2])cylinder(d=MH,h=T,center=true); // attachment hole
#rotate(9)translate([0,-(Wh+T)/2,(H)/2])cylinder(d=MH,h=T,center=true); // attachment hole
#rotate(189)translate([0,-(Wh+T)/2,(H)/2])cylinder(d=MH,h=T,center=true); // attachment hole
#rotate(180)translate([0,-(Wh+T)/2,(H)/2])cylinder(d=MH,h=T,center=true); // attachment hole
*/
# translate([0,0,-H])cube([Wb,Wb,Wb]); // examine cross sections
}
--
have Fun,
Bob mailto:roosbob@wybatap.com