Hi All,
Everybody (I hope) knows that when you take a stick, put it at an
angle, and rotate it around, the cutout needed in a sheet of paper for
it to pass through is a hyperbolic curve.
module thestick () translate ([50,0,0]) rotate ([45,0,0]) cylinder (h=100, d=3, center=true);
rotate (360*$t) thestick ();
youtube.com/watch?v=CeMnhMiy59Y
What I want to do is more complex than the "stick" and the "flat
surface", but what I want to do is given the stick, what object is
swept out by the rotation of this base form.
While writing this, I think I've already found my answer:
module rsweep (angle, steps)
{
sa = angle/steps;
for (i=[0:1:steps-1])
hull () {
rotate (sa* i ) children ();
rotate (sa*(i+1)) children ();
}
}
rsweep (360, 90) thestick ();
(looks nicer with 360, 360 as the arguments, but I don't want to
overload the less powerful computers of people on this list). (You can
better see what's going on with less than 360 as the first argument.)
in case anybody needs it..... (and probably done 1000 times before)
(for the rotating stick you now difference your plane with the object
created above. I'm going to be doing something similar, but with more
complex shapes rotating and more complex things than a "thin solid").
Roger.
--
** R.E.Wolff@BitWizard.nl ** https://www.BitWizard.nl/ ** +31-15-2049110 **
** Delftechpark 11 2628 XJ Delft, The Netherlands. KVK: 27239233 **
f equals m times a. When your f is steady, and your m is going down
your a** is going up. -- Chris Hadfield about flying up the space shuttle.
** 'a' for accelleration.
Rogier Wolff wrote:
Hi All,
Everybody (I hope) knows that when you take a stick, put it at an
angle, and rotate it around, the cutout needed in a sheet of paper for
it to pass through is a hyperbolic curve.
module thestick () translate ([50,0,0]) rotate ([45,0,0]) cylinder (h=100, d=3, center=true);
rotate (360*$t) thestick ();
youtube.com/watch?v=CeMnhMiy59Y
What I want to do is more complex than the "stick" and the "flat
surface", but what I want to do is given the stick, what object is
swept out by the rotation of this base form.
While writing this, I think I've already found my answer:
module rsweep (angle, steps)
{
sa = angle/steps;
for (i=[0:1:steps-1])
hull () {
rotate (sa* i ) children ();
rotate (sa*(i+1)) children ();
}
}
rsweep (360, 90) thestick ();
(looks nicer with 360, 360 as the arguments, but I don't want to
overload the less powerful computers of people on this list). (You can
better see what's going on with less than 360 as the first argument.)
in case anybody needs it..... (and probably done 1000 times before)
(for the rotating stick you now difference your plane with the object
created above. I'm going to be doing something similar, but with more
complex shapes rotating and more complex things than a "thin solid").
Roger.
--
** R.E.Wolff@BitWizard.nl ** https://www.BitWizard.nl/ ** +31-15-2049110 **
** Delftechpark 11 2628 XJ Delft, The Netherlands. KVK: 27239233 **
f equals m times a. When your f is steady, and your m is going down
your a** is going up. -- Chris Hadfield about flying up the space shuttle.
** 'a' for accelleration.
youtube.com/watch?v=CeMnhMiy59Y (I like!)
The shape looks like the cooling tower of a power station:
module thestick () translate ([50,15,0]) rotate ([30,0,0]) cylinder (h=170, d=3, center=true);
module rsweep (angle, steps)
{
sa = angle/steps;
for (i=[0:1:steps-1])
hull () {
rotate (sa* i ) children ();
rotate (sa*(i+1)) children ();
}
}
rsweep (360, 90)
thestick ();
translate([0, 0, -88])
for (i=[1:15])
rotate([i*360/15, 90])
translate([0, 80])
rotate([0, 30, 20])
cube([33, 3, 3], center=true);
translate([0, 0, -88])
for (i=[1:15])
rotate([i*360/15+12, 90])
translate([0, 80])
rotate([0, -30, 20])
cube([33, 3, 3], center=true);
Will be interested to see what shapes you come up with!
On Sat, Oct 12, 2024 at 06:18:14PM +0200, Rogier Wolff via Discuss wrote:
I'm going to be doing something similar, but with more
complex shapes rotating and more complex things than a "thin solid").
Of course it doesn't work with more comples forms: hull doesn't only
work between the adjacent slightly-moved corresponding parts of my
complex form. :-(
Roger.
--
** R.E.Wolff@BitWizard.nl ** https://www.BitWizard.nl/ ** +31-15-2049110 **
** Delftechpark 11 2628 XJ Delft, The Netherlands. KVK: 27239233 **
f equals m times a. When your f is steady, and your m is going down
your a** is going up. -- Chris Hadfield about flying up the space shuttle.
** 'a' for accelleration.
On Sat, Oct 12, 2024 at 05:52:39PM +0000, Caddiy via Discuss wrote:
youtube.com/watch?v=CeMnhMiy59Y (I like!)
The shape looks like the cooling tower of a power station:
Absolutely! It looks like it, because it IS! Cooling towers are built
with this shape. (move the cylinder a bit down before all the rotating
and stuff to get the wider base for the cooling tower).
(And yes, you could build one of them from straight concrete bars!)
Will be interested to see what shapes you come up with!
It is a puzzle.
There are three.
You see the first, think that's impossible, think a bit more and
think... AH! Got it! and you've solved the first.
Then I need to give you the second. It looks the same. You think I
know this one. You don't.
And once you figure out the second, there is still the third. From the
outside, all of them look the same. But seeing the inside which is
inevetable if I send you the STL files to 3Dprint... the secret is
blown.
So to not spoil the fun of solving the puzzles, I can't really publish
anything.
That said... you can buy these in shops. I'm replicating them to 3D
print them myself. Curently printing... my most reliable printer has
started failing prints. I set the margin to "should probably work" but
due to an oversight I'm getting double that. So the tolerances will
probably give away the secret on these ones, but I can verify the
principles...
Roger.
--
** R.E.Wolff@BitWizard.nl ** https://www.BitWizard.nl/ ** +31-15-2049110 **
** Delftechpark 11 2628 XJ Delft, The Netherlands. KVK: 27239233 **
f equals m times a. When your f is steady, and your m is going down
your a** is going up. -- Chris Hadfield about flying up the space shuttle.
** 'a' for accelleration.
You can also figure out the overall profile by taking a number of
projections as it rotates, then rotate_extruding that shape.
This doesn't involve any hull operation, but could optionally be used to
help interpolate the step-like jaggedness that can result
between projection positions. The advantage of this is that more work is
done on 2D geometry which is a lot faster than 3D (though it's less of an
issue nowadays with manifold in dev snapshots)
module rotate_extrude3D(clearance, bounds=[1000,1000], $fa=1) {
rotate_extrude()
intersection() { // clip to positive x axis before rotate_extrude
translate([0,-bounds[1]/2]) square(bounds);
offset(delta=clearance) // add clearance to profile
union() for(a=[-90:$fa:90]) // union projections from multiple
angles
projection(cut=true) rotate([-90,a]) children();
}
}
rotate_extrude3D(0.01) thestick ();
On Sat, Oct 12, 2024 at 1:44 PM Rogier Wolff via Discuss <
discuss@lists.openscad.org> wrote:
On Sat, Oct 12, 2024 at 05:52:39PM +0000, Caddiy via Discuss wrote:
youtube.com/watch?v=CeMnhMiy59Y (I like!)
The shape looks like the cooling tower of a power station:
Absolutely! It looks like it, because it IS! Cooling towers are built
with this shape. (move the cylinder a bit down before all the rotating
and stuff to get the wider base for the cooling tower).
(And yes, you could build one of them from straight concrete bars!)
Will be interested to see what shapes you come up with!
It is a puzzle.
There are three.
You see the first, think that's impossible, think a bit more and
think... AH! Got it! and you've solved the first.
Then I need to give you the second. It looks the same. You think I
know this one. You don't.
And once you figure out the second, there is still the third. From the
outside, all of them look the same. But seeing the inside which is
inevetable if I send you the STL files to 3Dprint... the secret is
blown.
So to not spoil the fun of solving the puzzles, I can't really publish
anything.
That said... you can buy these in shops. I'm replicating them to 3D
print them myself. Curently printing... my most reliable printer has
started failing prints. I set the margin to "should probably work" but
due to an oversight I'm getting double that. So the tolerances will
probably give away the secret on these ones, but I can verify the
principles...
Roger.
--
** R.E.Wolff@BitWizard.nl ** https://www.BitWizard.nl/ ** +31-15-2049110
**
** Delftechpark 11 2628 XJ Delft, The Netherlands. KVK: 27239233 **
f equals m times a. When your f is steady, and your m is going down
your a** is going up. -- Chris Hadfield about flying up the space shuttle.
** 'a' for accelleration.
OpenSCAD mailing list
To unsubscribe send an email to discuss-leave@lists.openscad.org