discuss@lists.openscad.org

OpenSCAD general discussion Mailing-list

View all threads

Is this the best way to do what I want?

JD
Jerry Davis
Sun, Sep 20, 2015 2:47 PM

I had need to basically slice apart my frame that I was making.
I wanted to create as much surface area as possible for the pvc glue to
take hold.

So Instead of just creating 2 cubes to glue together I made a set of
dovetail cubes.

I figured that any way that gets the job done is a good way (like any
landing you walk away from is a good landing sort of thing).

But, since I have not been doing this too long. And am only part time at
it, I would ask if there was a better way I could have done what I did, or
would most people have done something similar?

Anyway, here is the code:

// dovetail cubes: a male that fits into a female

// in the following two modules:
//  w = width of cubes
//  l = the length of the cubes
//  t = the thickness

module malecube(w=4, l=5, t=1) {
translate([0,0,-l/2]) cube([t,w,l], center=true);
translate([-t0.5,w/2,0]) rotate([90,0,0]) linear_extrude(height=w)
polygon(
points=[[0,0],[t
0.5,t*0.5],[t,0]]
);
}

module femalecube(w=4, l=5, t=1) {
difference() {
cube([t,w,l], center=true);
translate([-t/2,w/2+0.1,-l/2-0.01])
rotate([90,0,0]) linear_extrude(height=w+0.2)
polygon(
points=[[0,0],[t0.5,t0.5],[t,0]]
);
}
}

// tests:
//translate([0,0,0]) femalecube(14, 14, 6);
//translate([0,0,-15]) malecube(14, 10, 6);

--
Extra Ham Operator: K7AZJ
Registered Linux User: 275424
Raspberry Pi and Arduino developer

The most exciting phrase to hear in science - the one that heralds new
discoveries - is not "Eureka!" but "That's funny...".
- Isaac. Asimov

I
*f you give someone a program, you will frustrate them for a day; if you
teach them how to program, you will frustrate them for a lifetime. *-
Anonymous

If writing good code requires very little comments, then writing really
excellent code requires no comments at all!
- Ken Thompson

I had need to basically slice apart my frame that I was making. I wanted to create as much surface area as possible for the pvc glue to take hold. So Instead of just creating 2 cubes to glue together I made a set of dovetail cubes. I figured that any way that gets the job done is a good way (like any landing you walk away from is a good landing sort of thing). But, since I have not been doing this too long. And am only part time at it, I would ask if there was a better way I could have done what I did, or would most people have done something similar? Anyway, here is the code: // dovetail cubes: a male that fits into a female // in the following two modules: // w = width of cubes // l = the length of the cubes // t = the thickness module malecube(w=4, l=5, t=1) { translate([0,0,-l/2]) cube([t,w,l], center=true); translate([-t*0.5,w/2,0]) rotate([90,0,0]) linear_extrude(height=w) polygon( points=[[0,0],[t*0.5,t*0.5],[t,0]] ); } module femalecube(w=4, l=5, t=1) { difference() { cube([t,w,l], center=true); translate([-t/2,w/2+0.1,-l/2-0.01]) rotate([90,0,0]) linear_extrude(height=w+0.2) polygon( points=[[0,0],[t*0.5,t*0.5],[t,0]] ); } } // tests: //translate([0,0,0]) femalecube(14, 14, 6); //translate([0,0,-15]) malecube(14, 10, 6); -- Extra Ham Operator: K7AZJ Registered Linux User: 275424 Raspberry Pi and Arduino developer *The most exciting phrase to hear in science - the one that heralds new discoveries - is not "Eureka!" but "That's funny...".*- Isaac. Asimov *I* *f you give someone a program, you will frustrate them for a day; if you teach them how to program, you will frustrate them for a lifetime. *- Anonymous *If writing good code requires very little comments, then writing really excellent code requires no comments at all!*- Ken Thompson
K
kitwallace
Sun, Sep 20, 2015 4:06 PM

Looks OK to me - lots of ways to skin a cat (what an awful expression!) with
Openscad.

I'd be tempted to remove redundancy by defining the female in terms of the
male e.g

module femalecube(w,l,t) {
difference() {
translate([0,0,l/2]) cube([t,w,l],center=true);
malecube(w,l,t);
}
}

--
View this message in context: http://forum.openscad.org/Is-this-the-best-way-to-do-what-I-want-tp13925p13927.html
Sent from the OpenSCAD mailing list archive at Nabble.com.

Looks OK to me - lots of ways to skin a cat (what an awful expression!) with Openscad. I'd be tempted to remove redundancy by defining the female in terms of the male e.g module femalecube(w,l,t) { difference() { translate([0,0,l/2]) cube([t,w,l],center=true); malecube(w,l,t); } } -- View this message in context: http://forum.openscad.org/Is-this-the-best-way-to-do-what-I-want-tp13925p13927.html Sent from the OpenSCAD mailing list archive at Nabble.com.
JD
Jerry Davis
Sun, Sep 20, 2015 9:00 PM

ah. didn't think of that.

--
Extra Ham Operator: K7AZJ
Registered Linux User: 275424
Raspberry Pi and Arduino developer

The most exciting phrase to hear in science - the one that heralds new
discoveries - is not "Eureka!" but "That's funny...".
- Isaac. Asimov

I
*f you give someone a program, you will frustrate them for a day; if you
teach them how to program, you will frustrate them for a lifetime. *-
Anonymous

If writing good code requires very little comments, then writing really
excellent code requires no comments at all!
- Ken Thompson

On Sun, Sep 20, 2015 at 9:06 AM, kitwallace kit.wallace@gmail.com wrote:

Looks OK to me - lots of ways to skin a cat (what an awful expression!)
with
Openscad.

I'd be tempted to remove redundancy by defining the female in terms of the
male e.g

module femalecube(w,l,t) {
difference() {
translate([0,0,l/2]) cube([t,w,l],center=true);
malecube(w,l,t);
}
}

--
View this message in context:
http://forum.openscad.org/Is-this-the-best-way-to-do-what-I-want-tp13925p13927.html
Sent from the OpenSCAD mailing list archive at Nabble.com.


OpenSCAD mailing list
Discuss@lists.openscad.org
http://lists.openscad.org/mailman/listinfo/discuss_lists.openscad.org

ah. didn't think of that. -- Extra Ham Operator: K7AZJ Registered Linux User: 275424 Raspberry Pi and Arduino developer *The most exciting phrase to hear in science - the one that heralds new discoveries - is not "Eureka!" but "That's funny...".*- Isaac. Asimov *I* *f you give someone a program, you will frustrate them for a day; if you teach them how to program, you will frustrate them for a lifetime. *- Anonymous *If writing good code requires very little comments, then writing really excellent code requires no comments at all!*- Ken Thompson On Sun, Sep 20, 2015 at 9:06 AM, kitwallace <kit.wallace@gmail.com> wrote: > Looks OK to me - lots of ways to skin a cat (what an awful expression!) > with > Openscad. > > I'd be tempted to remove redundancy by defining the female in terms of the > male e.g > > module femalecube(w,l,t) { > difference() { > translate([0,0,l/2]) cube([t,w,l],center=true); > malecube(w,l,t); > } > } > > > > -- > View this message in context: > http://forum.openscad.org/Is-this-the-best-way-to-do-what-I-want-tp13925p13927.html > Sent from the OpenSCAD mailing list archive at Nabble.com. > > _______________________________________________ > OpenSCAD mailing list > Discuss@lists.openscad.org > http://lists.openscad.org/mailman/listinfo/discuss_lists.openscad.org >
R
runsun
Sun, Sep 20, 2015 11:43 PM

jdawgaz wrote

I had need to basically slice apart my frame that I was making.
I wanted to create as much surface area as possible for the pvc glue to
take hold.

If the objective is to increase contact surface, a tongue-and-groove joint
might be better:

http://forum.openscad.org/file/n13935/20150920_tongue_joint.png

This belongs to the edge-to-edge joint category. If interested in all kinds
of possible joints, check out this book (online):  good_wood_joints
http://woodtools.nov.ru/mag/good_wood_joints/good_wood_joints0001.htm  .
The cover page of the book shows what's usually called a dovetail joint in
woodworking.


$  Runsun Pan, PhD

$ -- libs: doctest , faces ( git ), offliner ( git );

tips: hash( 1 , 2 ), sweep , var , lerp

$ -- Linux Mint 17.1 Rebecca x64  + OpenSCAD 2015.03.15/2015.04.01.nightly

--
View this message in context: http://forum.openscad.org/Is-this-the-best-way-to-do-what-I-want-tp13925p13935.html
Sent from the OpenSCAD mailing list archive at Nabble.com.

jdawgaz wrote > I had need to basically slice apart my frame that I was making. > I wanted to create as much surface area as possible for the pvc glue to > take hold. If the objective is to increase contact surface, a tongue-and-groove joint might be better: <http://forum.openscad.org/file/n13935/20150920_tongue_joint.png> This belongs to the edge-to-edge joint category. If interested in all kinds of possible joints, check out this book (online): good_wood_joints <http://woodtools.nov.ru/mag/good_wood_joints/good_wood_joints0001.htm> . The cover page of the book shows what's usually called a dovetail joint in woodworking. ----- $ Runsun Pan, PhD $ -- libs: doctest , faces ( git ), offliner ( git ); tips: hash( 1 , 2 ), sweep , var , lerp $ -- Linux Mint 17.1 Rebecca x64 + OpenSCAD 2015.03.15/2015.04.01.nightly -- View this message in context: http://forum.openscad.org/Is-this-the-best-way-to-do-what-I-want-tp13925p13935.html Sent from the OpenSCAD mailing list archive at Nabble.com.
JD
Jerry Davis
Mon, Sep 21, 2015 12:09 AM

yep. used to do woodworking 15+ years ago.

dovetail was the wrong word to describe this.

--
Extra Ham Operator: K7AZJ
Registered Linux User: 275424
Raspberry Pi and Arduino developer

The most exciting phrase to hear in science - the one that heralds new
discoveries - is not "Eureka!" but "That's funny...".
- Isaac. Asimov

I
*f you give someone a program, you will frustrate them for a day; if you
teach them how to program, you will frustrate them for a lifetime. *-
Anonymous

If writing good code requires very little comments, then writing really
excellent code requires no comments at all!
- Ken Thompson

On Sun, Sep 20, 2015 at 4:43 PM, runsun runsun@gmail.com wrote:

jdawgaz wrote

I had need to basically slice apart my frame that I was making.
I wanted to create as much surface area as possible for the pvc glue to
take hold.

If the objective is to increase contact surface, a tongue-and-groove joint
might be better:

http://forum.openscad.org/file/n13935/20150920_tongue_joint.png

This belongs to the edge-to-edge joint category. If interested in all kinds
of possible joints, check out this book (online):  good_wood_joints
http://woodtools.nov.ru/mag/good_wood_joints/good_wood_joints0001.htm  .
The cover page of the book shows what's usually called a dovetail joint in
woodworking.


$  Runsun Pan, PhD

$ -- libs: doctest , faces ( git ), offliner ( git );

tips: hash( 1 , 2 ), sweep , var , lerp

$ -- Linux Mint 17.1 Rebecca x64  + OpenSCAD 2015.03.15/2015.04.01.nightly

--
View this message in context:
http://forum.openscad.org/Is-this-the-best-way-to-do-what-I-want-tp13925p13935.html
Sent from the OpenSCAD mailing list archive at Nabble.com.


OpenSCAD mailing list
Discuss@lists.openscad.org
http://lists.openscad.org/mailman/listinfo/discuss_lists.openscad.org

yep. used to do woodworking 15+ years ago. dovetail was the wrong word to describe this. -- Extra Ham Operator: K7AZJ Registered Linux User: 275424 Raspberry Pi and Arduino developer *The most exciting phrase to hear in science - the one that heralds new discoveries - is not "Eureka!" but "That's funny...".*- Isaac. Asimov *I* *f you give someone a program, you will frustrate them for a day; if you teach them how to program, you will frustrate them for a lifetime. *- Anonymous *If writing good code requires very little comments, then writing really excellent code requires no comments at all!*- Ken Thompson On Sun, Sep 20, 2015 at 4:43 PM, runsun <runsun@gmail.com> wrote: > jdawgaz wrote > > I had need to basically slice apart my frame that I was making. > > I wanted to create as much surface area as possible for the pvc glue to > > take hold. > > If the objective is to increase contact surface, a tongue-and-groove joint > might be better: > > <http://forum.openscad.org/file/n13935/20150920_tongue_joint.png> > > This belongs to the edge-to-edge joint category. If interested in all kinds > of possible joints, check out this book (online): good_wood_joints > <http://woodtools.nov.ru/mag/good_wood_joints/good_wood_joints0001.htm> . > The cover page of the book shows what's usually called a dovetail joint in > woodworking. > > > > ----- > > $ Runsun Pan, PhD > > $ -- libs: doctest , faces ( git ), offliner ( git ); > > tips: hash( 1 , 2 ), sweep , var , lerp > > $ -- Linux Mint 17.1 Rebecca x64 + OpenSCAD 2015.03.15/2015.04.01.nightly > > > > > -- > View this message in context: > http://forum.openscad.org/Is-this-the-best-way-to-do-what-I-want-tp13925p13935.html > Sent from the OpenSCAD mailing list archive at Nabble.com. > > _______________________________________________ > OpenSCAD mailing list > Discuss@lists.openscad.org > http://lists.openscad.org/mailman/listinfo/discuss_lists.openscad.org >
LB
L Boyd
Mon, Sep 21, 2015 3:35 AM

Remember you may need a little bit of clearance, so they will slide together
without forcing out all of the glue.

--
View this message in context: http://forum.openscad.org/Is-this-the-best-way-to-do-what-I-want-tp13925p13942.html
Sent from the OpenSCAD mailing list archive at Nabble.com.

Remember you may need a little bit of clearance, so they will slide together without forcing out all of the glue. -- View this message in context: http://forum.openscad.org/Is-this-the-best-way-to-do-what-I-want-tp13925p13942.html Sent from the OpenSCAD mailing list archive at Nabble.com.
JD
Jerry Davis
Mon, Sep 21, 2015 3:58 AM

ok. so just kinda round off the point then, to allow some glue in there?

--
Extra Ham Operator: K7AZJ
Registered Linux User: 275424
Raspberry Pi and Arduino developer

The most exciting phrase to hear in science - the one that heralds new
discoveries - is not "Eureka!" but "That's funny...".
- Isaac. Asimov

I
*f you give someone a program, you will frustrate them for a day; if you
teach them how to program, you will frustrate them for a lifetime. *-
Anonymous

If writing good code requires very little comments, then writing really
excellent code requires no comments at all!
- Ken Thompson

On Sun, Sep 20, 2015 at 8:35 PM, L Boyd lboyd@frontiernet.net wrote:

Remember you may need a little bit of clearance, so they will slide
together
without forcing out all of the glue.

--
View this message in context:
http://forum.openscad.org/Is-this-the-best-way-to-do-what-I-want-tp13925p13942.html
Sent from the OpenSCAD mailing list archive at Nabble.com.


OpenSCAD mailing list
Discuss@lists.openscad.org
http://lists.openscad.org/mailman/listinfo/discuss_lists.openscad.org

ok. so just kinda round off the point then, to allow some glue in there? -- Extra Ham Operator: K7AZJ Registered Linux User: 275424 Raspberry Pi and Arduino developer *The most exciting phrase to hear in science - the one that heralds new discoveries - is not "Eureka!" but "That's funny...".*- Isaac. Asimov *I* *f you give someone a program, you will frustrate them for a day; if you teach them how to program, you will frustrate them for a lifetime. *- Anonymous *If writing good code requires very little comments, then writing really excellent code requires no comments at all!*- Ken Thompson On Sun, Sep 20, 2015 at 8:35 PM, L Boyd <lboyd@frontiernet.net> wrote: > Remember you may need a little bit of clearance, so they will slide > together > without forcing out all of the glue. > > > > -- > View this message in context: > http://forum.openscad.org/Is-this-the-best-way-to-do-what-I-want-tp13925p13942.html > Sent from the OpenSCAD mailing list archive at Nabble.com. > > _______________________________________________ > OpenSCAD mailing list > Discuss@lists.openscad.org > http://lists.openscad.org/mailman/listinfo/discuss_lists.openscad.org >
W
wolf
Mon, Sep 21, 2015 7:33 AM

Tongue and groove is a joint intended to not-be-glued, as it makes for  poor
joint strength in tensile loading across the joint, but good strength
without glueing transverse to the tongue. Wood joints have in the past been
developed with the properties of hide glue in mind, and that means a very
brittle joint that cracks easily along the joint line. Luthiers use this
brittleness on purpose; when they need to open e.g. a violin for repairs, a
slight hit with a hammer on a glue line will separate  the top plate from
the carcass without damaging the wood, try that with a more modern glue such
as PVA (white glue).
Since the PVC glueyou want to use is rather brittle when dry, and because it
shrinks while the solvent evaporates, a tongue-and-groove joint with play
between tongue and groove would be a weak joint as it is susceptible to
impact failure. If you can, use a tapered joint, such as this:
http://forum.openscad.org/file/n13946/Taper_Joint.jpg
and clamp firmly until the glue has set. There is no need to slavishly
follow this design, all that is needed is that the long sides of the taper
are 5-10 times the dimension of the short side to make a joint at least as
strong as the base material. I have built masts that way for wooden sailing
boats. The example picture is from a commercial wood joint, where knot-free
wood has been created by cutting out the knots, and jointing the remainder
with minimum loss of material.

--
View this message in context: http://forum.openscad.org/Is-this-the-best-way-to-do-what-I-want-tp13925p13946.html
Sent from the OpenSCAD mailing list archive at Nabble.com.

Tongue and groove is a joint intended to not-be-glued, as it makes for poor joint strength in tensile loading across the joint, but good strength without glueing transverse to the tongue. Wood joints have in the past been developed with the properties of hide glue in mind, and that means a very brittle joint that cracks easily along the joint line. Luthiers use this brittleness on purpose; when they need to open e.g. a violin for repairs, a slight hit with a hammer on a glue line will separate the top plate from the carcass without damaging the wood, try that with a more modern glue such as PVA (white glue). Since the PVC glueyou want to use is rather brittle when dry, and because it shrinks while the solvent evaporates, a tongue-and-groove joint with play between tongue and groove would be a weak joint as it is susceptible to impact failure. If you can, use a tapered joint, such as this: <http://forum.openscad.org/file/n13946/Taper_Joint.jpg> and clamp firmly until the glue has set. There is no need to slavishly follow this design, all that is needed is that the long sides of the taper are 5-10 times the dimension of the short side to make a joint at least as strong as the base material. I have built masts that way for wooden sailing boats. The example picture is from a commercial wood joint, where knot-free wood has been created by cutting out the knots, and jointing the remainder with minimum loss of material. -- View this message in context: http://forum.openscad.org/Is-this-the-best-way-to-do-what-I-want-tp13925p13946.html Sent from the OpenSCAD mailing list archive at Nabble.com.
R
runsun
Tue, Sep 22, 2015 5:55 AM

Hi wolf, very helpful tips. Do you have a blog ?


$  Runsun Pan, PhD

$ -- libs: doctest , faces ( git ), offliner ( git );

tips: hash( 1 , 2 ), sweep , var , lerp

$ -- Linux Mint 17.1 Rebecca x64  + OpenSCAD 2015.03.15/2015.04.01.nightly

--
View this message in context: http://forum.openscad.org/Is-this-the-best-way-to-do-what-I-want-tp13925p13952.html
Sent from the OpenSCAD mailing list archive at Nabble.com.

Hi wolf, very helpful tips. Do you have a blog ? ----- $ Runsun Pan, PhD $ -- libs: doctest , faces ( git ), offliner ( git ); tips: hash( 1 , 2 ), sweep , var , lerp $ -- Linux Mint 17.1 Rebecca x64 + OpenSCAD 2015.03.15/2015.04.01.nightly -- View this message in context: http://forum.openscad.org/Is-this-the-best-way-to-do-what-I-want-tp13925p13952.html Sent from the OpenSCAD mailing list archive at Nabble.com.
W
wolf
Tue, Sep 22, 2015 10:04 PM

Sorry, Runsun, no blog. One of the applications of tongue and groove is in
floor boards, which are nailed to the substrate and where the tongue and
groove's key purpose is to suppress warping. But parquet is glued, using
either a latex (rubber) or bitumen based glue, with enough mineral filler
added that it can bridge 1 or 2 mm gaps, and therefor not tongue and
grooved. But Laminated Flooring has a "click-on" edge, a variant of tongue
and groove, that permits the boards to keep together without nailing or
glueing. Laminated Flooring just free-floats on a thin mat of styrofoam.

--
View this message in context: http://forum.openscad.org/Is-this-the-best-way-to-do-what-I-want-tp13925p13965.html
Sent from the OpenSCAD mailing list archive at Nabble.com.

Sorry, Runsun, no blog. One of the applications of tongue and groove is in floor boards, which are nailed to the substrate and where the tongue and groove's key purpose is to suppress warping. But parquet is glued, using either a latex (rubber) or bitumen based glue, with enough mineral filler added that it can bridge 1 or 2 mm gaps, and therefor not tongue and grooved. But Laminated Flooring has a "click-on" edge, a variant of tongue and groove, that permits the boards to keep together without nailing or glueing. Laminated Flooring just free-floats on a thin mat of styrofoam. -- View this message in context: http://forum.openscad.org/Is-this-the-best-way-to-do-what-I-want-tp13925p13965.html Sent from the OpenSCAD mailing list archive at Nabble.com.