For the last week or so I have been designing up a box for some ham
radio friends of mine. All was going well until today, when I have done
/something/ that I cannot for the life of me find!
In the code below, on lines 70, 82, and 99 (the only lines with a #) are
the problem cut-outs.
I also commented out the two 'use' statements and put the modules
in-line for the purposes of this email.
F5 shows clearly that the objects are through the wall just fine- and
prior to my error, they cut holes through as designed.
But now when I F6, they still cut out on the inside of the wall, but
don't show on the outside of the wall.
This has me completely bamboozled- I'd be mighty grateful if somebody
could spot my mistake!
include <BOSL2/std.scad>
//use <C:/ownCloud/openscad files/5mm countersunk hole module.scad>
//use <C:/ownCloud/openscad files/3mm heatset insert hole module.scaD>
$fa = 1;
$fs = 0.4;
$CALLSIGN="VK7ZMS & ";
$CALLSIGN2=" VK7ZBX";
$CALLSIGN3="FIELD DAY VAN";
module 5mm_countersunk_hole()
{
$fn = 128;
translate([0,0,8])
cylinder(8, d=12);
translate([0,0,6])
cylinder(2, d1=5.1, d2=12);
translate([0,0,-15])
cylinder(25, d=5.1);
}
module 3mm_heatset_hole()
{
$fn = 128;
translate([0,0,5])
cylinder(0.6, d=5);
translate([0,0,4.5])
cylinder(0.5, d1=4.5, d2=5);
//change the length of the next cylinder so it is long
//enough to accomodate the total screw length
//so the displaced plastic has somewhere to go
//that is NOT into the insert's screw threads.
translate([0,0,-4.5])
cylinder(10, d=4.5);
}
difference()
{
//Main block
translate([-93,159,-90])
cuboid([348,350,310], rounding = 1);
//Cut out behind the 817's
translate([-98,283,-181])
cuboid([360,120,232]);
//Cut out between the 817's
translate([-93.5,277,-21])
cuboid([41,108,232], rounding = 4);
//Cuts out below the 817's
//Upper (IC7300, 240x95x238mm
translate([-93,162,-91])
cuboid([332,112,332], rounding = 4);
//Lower (Yaesu 991A, 229x80x253
translate([-93,40,-91])
cuboid([332,112,332], rounding = 4);
//Callsigns on passenger side
translate([80,88,0])rotate([0,90,0])linear_extrude(height = 2, center =
true, convexity = 10) text($CALLSIGN, font = "Liberation Sans", size=10);
translate([80,88,-69])rotate([0,90,0])linear_extrude(height = 2, center
= true, convexity = 10) text($CALLSIGN2, font = "Liberation Sans", size=10);
translate([80,60,0])rotate([0,90,0])linear_extrude(height = 2, center =
true, convexity = 10) text($CALLSIGN3, font = "Liberation Sans", size=12);
//Right side lower mike holder screw holes
for (i=[40:120:200])
rotate([0,90,0])
# translate([-50,i,75.6])
3mm_heatset_hole();
//Left side lower mike holder screw holes
for (i=[40:120:200])
rotate([0,-90,0])
translate([50,i,261.7])
3mm_heatset_hole();
//Right side upper mike holder screw holes
for (i=[229:95:330])
rotate([0,90,0])
# translate([-55,i,75.5])
3mm_heatset_hole();
//Left side upper mike holder screw holes
for (i=[229:95:330])
rotate([0,-90,0])
translate([50,i,261.7])
3mm_heatset_hole();
//Cutouts for 4x817's and their side-entry cables
for (i=[249:57:320])
translate([4,i,1])
{
//Right side 817 cutouts
cuboid([144,52,150], rounding = 4);
//Right side 817 cable cutouts
# translate([75,0,30])
cuboid([20,30,40], rounding = 5);
}
for (i=[249:57:320])
translate([-190,i,0])
{
//Left side 817 cutouts
cuboid([144,52,150], rounding = 4);
//Left side 817 cable cutouts
translate([75,0,30])
cuboid([20,30,40], rounding = 5);
}
}
//817 Left Rear retaining strips
for (i=[225:57:320])
translate([3,i,-63])
cuboid([148,4,4], rounding = 2, edges=BACK);
//817 Right Rear retaining strips
for (i=[225:57:320])
translate([-190,i,-63])
cuboid([148,4,4], rounding = 2, edges=BACK);
//Move the base and screw holes
translate([-24,8,0])
{
//Base and screw holes
difference()
{
translate([-69,-26,-90])
cuboid([348,10,310]);
rotate([270,0,0])
translate([80,230,-30])
5mm_countersunk_hole();
rotate([270,0,0])
translate([80,-50,-30])
5mm_countersunk_hole();
rotate([270,0,0])
translate([-220,-50,-30])
5mm_countersunk_hole();
rotate([270,0,0])
translate([-220,230,-30])
5mm_countersunk_hole();
}
}
A baby can be defined as an ego with a noise at one end and a smell at the other.
Your job as parents is to teach them to control all three.
My job as a grandad is to tell you how you are doing it all wrong!
Hi Ken,
Ran you file on version 2024.02.25. I think you're referring to 2 rounded rectangular and 4 circular holes that would be on the left edge of the object as you face the right-side-up text. The work fine for me with #, without #, and when I render. I tried using both manifold and cgal for rendering and both were fine.
Any chance the "something" you did wasn't in this file itself?
regards,
Lenore
On Mar 20, 2024, at 03:10, Ken via Discuss discuss@lists.openscad.org wrote:
For the last week or so I have been designing up a box for some ham radio friends of mine. All was going well until today, when I have done something that I cannot for the life of me find!
In the code below, on lines 70, 82, and 99 (the only lines with a #) are the problem cut-outs.
I also commented out the two 'use' statements and put the modules in-line for the purposes of this email.
F5 shows clearly that the objects are through the wall just fine- and prior to my error, they cut holes through as designed.
But now when I F6, they still cut out on the inside of the wall, but don't show on the outside of the wall.
This has me completely bamboozled- I'd be mighty grateful if somebody could spot my mistake!
include <BOSL2/std.scad>
//use <C:/ownCloud/openscad files/5mm countersunk hole module.scad>
//use <C:/ownCloud/openscad files/3mm heatset insert hole module.scaD>
$fa = 1;
$fs = 0.4;
$CALLSIGN="VK7ZMS & ";
$CALLSIGN2=" VK7ZBX";
$CALLSIGN3="FIELD DAY VAN";
module 5mm_countersunk_hole()
{
$fn = 128;
translate([0,0,8])
cylinder(8, d=12);
translate([0,0,6])
cylinder(2, d1=5.1, d2=12);
translate([0,0,-15])
cylinder(25, d=5.1);
}
module 3mm_heatset_hole()
{
$fn = 128;
translate([0,0,5])
cylinder(0.6, d=5);
translate([0,0,4.5])
cylinder(0.5, d1=4.5, d2=5);
//change the length of the next cylinder so it is long
//enough to accomodate the total screw length
//so the displaced plastic has somewhere to go
//that is NOT into the insert's screw threads.
translate([0,0,-4.5])
cylinder(10, d=4.5);
}
difference()
{
//Main block
translate([-93,159,-90])
cuboid([348,350,310], rounding = 1);
//Cut out behind the 817's
translate([-98,283,-181])
cuboid([360,120,232]);
//Cut out between the 817's
translate([-93.5,277,-21])
cuboid([41,108,232], rounding = 4);
//Cuts out below the 817's
//Upper (IC7300, 240x95x238mm
translate([-93,162,-91])
cuboid([332,112,332], rounding = 4);
//Lower (Yaesu 991A, 229x80x253
translate([-93,40,-91])
cuboid([332,112,332], rounding = 4);
//Callsigns on passenger side
translate([80,88,0])rotate([0,90,0])linear_extrude(height = 2, center = true, convexity = 10) text($CALLSIGN, font = "Liberation Sans", size=10);
translate([80,88,-69])rotate([0,90,0])linear_extrude(height = 2, center = true, convexity = 10) text($CALLSIGN2, font = "Liberation Sans", size=10);
translate([80,60,0])rotate([0,90,0])linear_extrude(height = 2, center = true, convexity = 10) text($CALLSIGN3, font = "Liberation Sans", size=12);
//Right side lower mike holder screw holes
for (i=[40:120:200])
rotate([0,90,0])
3mm_heatset_hole();
//Left side lower mike holder screw holes
for (i=[40:120:200])
rotate([0,-90,0])
translate([50,i,261.7])
3mm_heatset_hole();
//Right side upper mike holder screw holes
for (i=[229:95:330])
rotate([0,90,0])
3mm_heatset_hole();
//Left side upper mike holder screw holes
for (i=[229:95:330])
rotate([0,-90,0])
translate([50,i,261.7])
3mm_heatset_hole();
//Cutouts for 4x817's and their side-entry cables
for (i=[249:57:320])
translate([4,i,1])
{
//Right side 817 cutouts
cuboid([144,52,150], rounding = 4);
//Right side 817 cable cutouts
cuboid([20,30,40], rounding = 5);
}
for (i=[249:57:320])
translate([-190,i,0])
{
//Left side 817 cutouts
cuboid([144,52,150], rounding = 4);
//Left side 817 cable cutouts
translate([75,0,30])
cuboid([20,30,40], rounding = 5);
}
}
//817 Left Rear retaining strips
for (i=[225:57:320])
translate([3,i,-63])
cuboid([148,4,4], rounding = 2, edges=BACK);
//817 Right Rear retaining strips
for (i=[225:57:320])
translate([-190,i,-63])
cuboid([148,4,4], rounding = 2, edges=BACK);
//Move the base and screw holes
translate([-24,8,0])
{
//Base and screw holes
difference()
{
translate([-69,-26,-90])
cuboid([348,10,310]);
rotate([270,0,0])
translate([80,230,-30])
5mm_countersunk_hole();
rotate([270,0,0])
translate([80,-50,-30])
5mm_countersunk_hole();
rotate([270,0,0])
translate([-220,-50,-30])
5mm_countersunk_hole();
rotate([270,0,0])
translate([-220,230,-30])
5mm_countersunk_hole();
}
}
A baby can be defined as an ego with a noise at one end and a smell at the other.
Your job as parents is to teach them to control all three.
My job as a grandad is to tell you how you are doing it all wrong!
OpenSCAD mailing list
To unsubscribe send an email to discuss-leave@lists.openscad.org
Yeah, seems to work fine for me in both 2021.01 and 2024.03.05 (both
Manifold and CGAL).
Thanks Jordan & Lenore- based on your comments, I updated to 2024-03-18
and the problem has gone away. I was using a late 2023 snapshot.
Looking back at it after a night's sleep, I'm guessing maybe a reboot
might have fixed it- but no matter, whatever it was, it drove me nuts
for the better part of a day, and now it's gone!
On 2024-03-21 02:30, Jordan Brown via Discuss wrote:
Yeah, seems to work fine for me in both 2021.01 and 2024.03.05 (both
Manifold and CGAL).
OpenSCAD mailing list
To unsubscribe send an email todiscuss-leave@lists.openscad.org
A baby can be defined as an ego with a noise at one end and a smell at the other.
Your job as parents is to teach them to control all three.
My job as a grandad is to tell you how you are doing it all wrong!