Hi,

Guest

BR

Bob Roos

Thu, Nov 24, 2022 10:06 AM

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

*/

}

--

Best regards,

Bob mailto:roosbob@wybatap.com

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
*/
# translate([0,0,-H])cube([Wb,Wb,Wb]); // examine cross sections
}
--
Best regards,
Bob mailto:roosbob@wybatap.com

BR

Bob Roos

Thu, Nov 24, 2022 10:43 AM

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

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
> */
> # translate([0,0,-H])cube([Wb,Wb,Wb]); // examine cross sections
> }
--
have Fun,
Bob mailto:roosbob@wybatap.com

BR

Bob Roos

Thu, Nov 24, 2022 11:10 AM

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

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
>> */
>> # translate([0,0,-H])cube([Wb,Wb,Wb]); // examine cross sections
>> }
--
have Fun,
Bob mailto:roosbob@wybatap.com

AM

Adrian Mariano

Thu, Nov 24, 2022 1:38 PM

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

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
> >> */
> >> # translate([0,0,-H])cube([Wb,Wb,Wb]); // examine cross sections
> >> }
>
>
>
>
>
> --
> have Fun,
> Bob mailto:roosbob@wybatap.com
> _______________________________________________
> OpenSCAD mailing list
> To unsubscribe send an email to discuss-leave@lists.openscad.org
>

BR

Bob Roos

Thu, Nov 24, 2022 2:11 PM

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.

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

*/

# translate([0,0,-H])cube([Wb,Wb,Wb]); // examine cross sections

}

--

have Fun,

Bob mailto:roosbob@wybatap.com

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-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
>>>> */
>>>> # translate([0,0,-H])cube([Wb,Wb,Wb]); // examine cross sections
>>>> }
--
have Fun,
Bob mailto:roosbob@wybatap.com

AM

Adrian Mariano

Thu, Nov 24, 2022 2:27 PM

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

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
>> >> */
>> >> # translate([0,0,-H])cube([Wb,Wb,Wb]); // examine cross sections
>> >> }
>>
>>
>>
>>
>>
>> --
>> 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
>

BR

Bob Roos

Thu, Nov 24, 2022 3:07 PM

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:

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.

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

*/

# translate([0,0,-H])cube([Wb,Wb,Wb]); // examine cross sections

}

--

have Fun,

Bob mailto:roosbob@wybatap.com

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-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
>>>>>> */
>>>>>> # translate([0,0,-H])cube([Wb,Wb,Wb]); // examine cross sections
>>>>>> }
--
have Fun,
Bob mailto:roosbob@wybatap.com

Replying to:

Empathy v1.0
2022 ©Harmonylists.com