I'm designing a steam engine eccentric rod, and I want a tapered cylinder
(which I have) that has also been flattened on the top and the bottom. How
do I add the flats on top of the taper?
Thanks!
scale = 25.4; // for imperal
$fn = 100;
/* center body rod (should be flatened rod) */
BodyLen = 1.753 * scale;
//BodyCtrBigEndDia = 0.1642 * scale; // flat
//BodyCtrLtlEndDia = 0.09375 * scale;
BodyCtrBigEndDia = 0.3125 * scale; // dia
BodyCtrLtlEndDia = 0.1875 * scale;
cylinder(h = BodyLen + 2, d1 = BodyCtrBigEndDia, d2 = BodyCtrLtlEndDia,
center = true);
http://forum.openscad.org/file/t2193/eccentricRod.png
--
Sent from: http://forum.openscad.org/
Subtract cubes from the sides or intersect the tapered end with a centered
cube.
On Tue, Mar 27, 2018, 12:45 PM KM6VV km6vv@arrl.net wrote:
I'm designing a steam engine eccentric rod, and I want a tapered cylinder
(which I have) that has also been flattened on the top and the bottom. How
do I add the flats on top of the taper?
Thanks!
scale = 25.4; // for imperal
$fn = 100;
/* center body rod (should be flatened rod) */
BodyLen = 1.753 * scale;
//BodyCtrBigEndDia = 0.1642 * scale; // flat
//BodyCtrLtlEndDia = 0.09375 * scale;
BodyCtrBigEndDia = 0.3125 * scale; // dia
BodyCtrLtlEndDia = 0.1875 * scale;
cylinder(h = BodyLen + 2, d1 = BodyCtrBigEndDia, d2 = BodyCtrLtlEndDia,
center = true);
http://forum.openscad.org/file/t2193/eccentricRod.png
--
Sent from: http://forum.openscad.org/
OpenSCAD mailing list
Discuss@lists.openscad.org
http://lists.openscad.org/mailman/listinfo/discuss_lists.openscad.org
Thanks for the reply.
I thought about that, but how do you 'angle' the cubes to form the necessary
taper?
--
Sent from: http://forum.openscad.org/
You can use trigonometry to work out the angle e.g. atan(h / dx) where h
is height and dx is the difference in radius of top and bottom.
On 27 March 2018 at 20:50, KM6VV km6vv@arrl.net wrote:
Thanks for the reply.
I thought about that, but how do you 'angle' the cubes to form the
necessary
taper?
--
Sent from: http://forum.openscad.org/
OpenSCAD mailing list
Discuss@lists.openscad.org
http://lists.openscad.org/mailman/listinfo/discuss_lists.openscad.org
OK, I get it. the entire cube is translated or rotated at the require angle,
and then difference'd.
Thanks.
--
Sent from: http://forum.openscad.org/
In case you are heading for a tapered cube with rounded edges you can try
something like this:
$fn=50;
linear_extrude (height = 200, scale=0.09375/0.1642) // flattend tapered rod
offset(3) square([8, .01], center=true);
--
Sent from: http://forum.openscad.org/
Thanks!
That certainly did it. I put in my other parameters. I'm going over
'offset', although I don't fully understand what's happening. I was OK up
to creating a tapered cylinder (easy).
//
---=======================
/* center body rod (flatened rod) */
//EccentricRodBodyLen = 1.753 * scale;
//EccentricRodBodyCenterOffset = 0.4142 * scale;
//EccentricRodBodyCtrBigEndDia = 0.1642 * scale; // flat
//EccentricRodBodyCtrLtlEndDia = 0.09375 * scale;
/*
*/
module Body()
{
difference()
{
translate([0, EccentricRodBodyCenterOffset - 2, 0])
rotate([-90, 0, 0])
linear_extrude(height = EccentricRodBodyLen + 3, scale =
EccentricRodBodyCtrLtlEndDia/EccentricRodBodyCtrBigEndDia)
offset(2.5)
square([EccentricRodBodyCtrBigEndDia, 0.01], center = true);
/* clean up little end Bore */
translate([0, EccentricRodCtrToCtr, 0])
linear_extrude(height = EccentricRodLtlEndBossThick, center = true)
circle(d = EccentricRodLtlEndBore, center = true);
}
}
http://forum.openscad.org/file/t2193/EccentricRod.png
--
Sent from: http://forum.openscad.org/