Hi there!
I've spent a few hours designing this rounding for a part of mine, which
already is quite complex (to my eyes at least):
and now I've found that it sadly won't do since I need it angled - I'll try
to explain: at the moment it hits the smaller part in 90° angle on both
sides, but i need it in 75° on the one side and in 105° on the other.
If the discription is unclear, or you wanna take a look at the bigger
picture, this is my work in progress quadcopter frame for which arm this
rounding is for: playground_v5.scad
http://forum.openscad.org/file/n13495/playground_v5.scad
--
View this message in context: http://forum.openscad.org/are-there-easier-ways-to-get-round-edges-tp13495.html
Sent from the OpenSCAD mailing list archive at Nabble.com.
On Mon, Aug 10, 2015 at 01:47:42AM -0700, kaefert wrote:
Hi there!
I've spent a few hours designing this rounding for a part of mine, which
already is quite complex (to my eyes at least):
and now I've found that it sadly won't do since I need it angled - I'll try
to explain: at the moment it hits the smaller part in 90° angle on both
sides, but i need it in 75° on the one side and in 105° on the other.
If the discription is unclear, or you wanna take a look at the bigger
picture, this is my work in progress quadcopter frame for which arm this
rounding is for: playground_v5.scad
http://forum.openscad.org/file/n13495/playground_v5.scad
Clothbot's fillet.scad is great stuff for this purpose.
https://github.com/clothbot/ClothBotCreations/blob/master/utilities/fillet.scad
Unfortunately, it uses multiple minkowski()s which makes it horribly expensive
to use, so I try to avoid using it whenever there is a simple enough way to
implement it (e.g. 90° fillets using filleted_cylinder() and filleted_cube() in
https://github.com/hyperair/deltabob/blob/master/utils.scad).
--
Kind regards,
Loong Jin
thanks for your reply!
Is there some getting started guide or something like that for how to use
these libraries?
Regards, Thomas Käfer
2015-08-10 11:19 GMT+02:00 Chow Loong Jin [via OpenSCAD] <
ml-node+s1091067n13496h39@n5.nabble.com>:
On Mon, Aug 10, 2015 at 01:47:42AM -0700, kaefert wrote:
Hi there!
I've spent a few hours designing this rounding for a part of mine, which
already is quite complex (to my eyes at least):
and now I've found that it sadly won't do since I need it angled - I'll
try
to explain: at the moment it hits the smaller part in 90° angle on both
sides, but i need it in 75° on the one side and in 105° on the other.
If the discription is unclear, or you wanna take a look at the bigger
picture, this is my work in progress quadcopter frame for which arm this
rounding is for: playground_v5.scad
http://forum.openscad.org/file/n13495/playground_v5.scad
Clothbot's fillet.scad is great stuff for this purpose.
https://github.com/clothbot/ClothBotCreations/blob/master/utilities/fillet.scad
Unfortunately, it uses multiple minkowski()s which makes it horribly
expensive
to use, so I try to avoid using it whenever there is a simple enough way
to
implement it (e.g. 90° fillets using filleted_cylinder() and
filleted_cube() in
https://github.com/hyperair/deltabob/blob/master/utils.scad).
--
Kind regards,
Loong Jin
OpenSCAD mailing list
[hidden email] http:///user/SendEmail.jtp?type=node&node=13496&i=0
http://lists.openscad.org/mailman/listinfo/discuss_lists.openscad.org
signature.asc (836 bytes) Download Attachment
http://forum.openscad.org/attachment/13496/0/signature.asc
If you reply to this email, your message will be added to the discussion
below:
http://forum.openscad.org/are-there-easier-ways-to-get-round-edges-tp13495p13496.html
To unsubscribe from are there easier ways to get round edges?, click here
http://forum.openscad.org/template/NamlServlet.jtp?macro=unsubscribe_by_code&node=13495&code=a2FlZmVydEBnbWFpbC5jb218MTM0OTV8MTk2MTMwNjk3MQ==
.
NAML
http://forum.openscad.org/template/NamlServlet.jtp?macro=macro_viewer&id=instant_html%21nabble%3Aemail.naml&base=nabble.naml.namespaces.BasicNamespace-nabble.view.web.template.NabbleNamespace-nabble.view.web.template.NodeNamespace&breadcrumbs=notify_subscribers%21nabble%3Aemail.naml-instant_emails%21nabble%3Aemail.naml-send_instant_email%21nabble%3Aemail.naml
--
View this message in context: http://forum.openscad.org/are-there-easier-ways-to-get-round-edges-tp13495p13497.html
Sent from the OpenSCAD mailing list archive at Nabble.com.
On Mon, Aug 10, 2015 at 02:37:42AM -0700, kaefert wrote:
thanks for your reply!
Is there some getting started guide or something like that for how to use
these libraries?
You use fillet() like you would use a union(), and fillet will try to fillet any
joints it sees. It doesn't work too well with individual concave children
becauses it uses hull(), but it works very well at generating fillets at concave
joints between children.
For filleted_cylinder() and filleted_cube(), they just work like their cube()
and cylinder() counterparts, but with an additional fillet_r parameter (and in
the case of cube(), fillet_sides which allows you to specify which sides to
fillet (sometimes you don't want all the sides filleted). filleted_cube() also
has an extended "center" argument that takes an 3-element vector of sides to
center upon. MCAD's X, Y, and Z constants work well for this, like
filleted_cube(..., center = X + Y, ...);
--
Kind regards,
Loong Jin
thanks for your reply. I got filet to work but its incredibly slow, and I'm
not even close to the resolution I was thinking about....
The deltabob/utils.scad if I understood it correctly won't do angled
roundings between two objects, but only round one or multiple sides of a
single object?
Also I guess I would need to find out about this MCAD library that it seems
to depend on...
2015-08-10 12:46 GMT+02:00 Chow Loong Jin [via OpenSCAD] <
ml-node+s1091067n13498h1@n5.nabble.com>:
On Mon, Aug 10, 2015 at 02:37:42AM -0700, kaefert wrote:
thanks for your reply!
Is there some getting started guide or something like that for how to
use
these libraries?
You use fillet() like you would use a union(), and fillet will try to
fillet any
joints it sees. It doesn't work too well with individual concave children
becauses it uses hull(), but it works very well at generating fillets at
concave
joints between children.
For filleted_cylinder() and filleted_cube(), they just work like their
cube()
and cylinder() counterparts, but with an additional fillet_r parameter
(and in
the case of cube(), fillet_sides which allows you to specify which sides
to
fillet (sometimes you don't want all the sides filleted). filleted_cube()
also
has an extended "center" argument that takes an 3-element vector of sides
to
center upon. MCAD's X, Y, and Z constants work well for this, like
filleted_cube(..., center = X + Y, ...);
--
Kind regards,
Loong Jin
OpenSCAD mailing list
[hidden email] http:///user/SendEmail.jtp?type=node&node=13498&i=0
http://lists.openscad.org/mailman/listinfo/discuss_lists.openscad.org
signature.asc (836 bytes) Download Attachment
http://forum.openscad.org/attachment/13498/0/signature.asc
If you reply to this email, your message will be added to the discussion
below:
http://forum.openscad.org/are-there-easier-ways-to-get-round-edges-tp13495p13498.html
To unsubscribe from are there easier ways to get round edges?, click here
http://forum.openscad.org/template/NamlServlet.jtp?macro=unsubscribe_by_code&node=13495&code=a2FlZmVydEBnbWFpbC5jb218MTM0OTV8MTk2MTMwNjk3MQ==
.
NAML
http://forum.openscad.org/template/NamlServlet.jtp?macro=macro_viewer&id=instant_html%21nabble%3Aemail.naml&base=nabble.naml.namespaces.BasicNamespace-nabble.view.web.template.NabbleNamespace-nabble.view.web.template.NodeNamespace&breadcrumbs=notify_subscribers%21nabble%3Aemail.naml-instant_emails%21nabble%3Aemail.naml-send_instant_email%21nabble%3Aemail.naml
--
View this message in context: http://forum.openscad.org/are-there-easier-ways-to-get-round-edges-tp13495p13499.html
Sent from the OpenSCAD mailing list archive at Nabble.com.
On Mon, Aug 10, 2015 at 04:04:42AM -0700, kaefert wrote:
thanks for your reply. I got filet to work but its incredibly slow, and I'm
not even close to the resolution I was thinking about....
You can increase the resolution by specifying the radius and steps.
The deltabob/utils.scad if I understood it correctly won't do angled
roundings between two objects, but only round one or multiple sides of a
single object?
Also I guess I would need to find out about this MCAD library that it seems
to depend on...
It's just a shortcut to make a cube with a filleted base, and a cylinder with a
filleted base, because it's simple to do and much faster than using fillet (...)
{ cube (...); base (); }
--
Kind regards,
Loong Jin
As long as you can work in 2d, you can use the offset() command.
Its very fast.
2015-08-10 13:10 GMT+02:00 Chow Loong Jin hyperair@debian.org:
On Mon, Aug 10, 2015 at 04:04:42AM -0700, kaefert wrote:
thanks for your reply. I got filet to work but its incredibly slow, and
I'm
not even close to the resolution I was thinking about....
You can increase the resolution by specifying the radius and steps.
The deltabob/utils.scad if I understood it correctly won't do angled
roundings between two objects, but only round one or multiple sides of a
single object?
Also I guess I would need to find out about this MCAD library that it
seems
to depend on...
It's just a shortcut to make a cube with a filleted base, and a cylinder
with a
filleted base, because it's simple to do and much faster than using fillet
(...)
{ cube (...); base (); }
--
Kind regards,
Loong Jin
OpenSCAD mailing list
Discuss@lists.openscad.org
http://lists.openscad.org/mailman/listinfo/discuss_lists.openscad.org
--
stempeldergeschichte@googlemail.com karsten@rohrbach.de
P.S. Falls meine E-Mail kürzer ausfällt als Dir angenehm ist:
Ich probiere gerade aus kurze Antworten statt gar keine Antworten zu
schreiben.
Wenn Du gerne mehr lesen möchtest, dann lass es mich bitte wissen.
P.S. In case my e-mail is shorter than you enjoy:
I am currently trying short replies instead of no replies at all.
Please let me know, if you like to read more.
Enjoy!
Have a look at some code I once wrote:
http://www.thingiverse.com/thing:142798
It does a fillet between any (concave) shape and a plane.
It is slow, as it uses minkowsky(), but as long as you increase fn_fillet
slowly you should be fine.
2015-08-10 20:04 GMT+02:00 Peter Falke stempeldergeschichte@googlemail.com
:
As long as you can work in 2d, you can use the offset() command.
Its very fast.
2015-08-10 13:10 GMT+02:00 Chow Loong Jin hyperair@debian.org:
On Mon, Aug 10, 2015 at 04:04:42AM -0700, kaefert wrote:
thanks for your reply. I got filet to work but its incredibly slow, and
I'm
not even close to the resolution I was thinking about....
You can increase the resolution by specifying the radius and steps.
The deltabob/utils.scad if I understood it correctly won't do angled
roundings between two objects, but only round one or multiple sides of a
single object?
Also I guess I would need to find out about this MCAD library that it
seems
to depend on...
It's just a shortcut to make a cube with a filleted base, and a cylinder
with a
filleted base, because it's simple to do and much faster than using
fillet (...)
{ cube (...); base (); }
--
Kind regards,
Loong Jin
OpenSCAD mailing list
Discuss@lists.openscad.org
http://lists.openscad.org/mailman/listinfo/discuss_lists.openscad.org
--
stempeldergeschichte@googlemail.com karsten@rohrbach.de
P.S. Falls meine E-Mail kürzer ausfällt als Dir angenehm ist:
Ich probiere gerade aus kurze Antworten statt gar keine Antworten zu
schreiben.
Wenn Du gerne mehr lesen möchtest, dann lass es mich bitte wissen.
P.S. In case my e-mail is shorter than you enjoy:
I am currently trying short replies instead of no replies at all.
Please let me know, if you like to read more.
Enjoy!
--
stempeldergeschichte@googlemail.com karsten@rohrbach.de
P.S. Falls meine E-Mail kürzer ausfällt als Dir angenehm ist:
Ich probiere gerade aus kurze Antworten statt gar keine Antworten zu
schreiben.
Wenn Du gerne mehr lesen möchtest, dann lass es mich bitte wissen.
P.S. In case my e-mail is shorter than you enjoy:
I am currently trying short replies instead of no replies at all.
Please let me know, if you like to read more.
Enjoy!
Look at the sweep function made possible with the newest OpenSCAD. There are
several ways to create a path. In your case directly creating the path with
list comprehensions is the probably the best way.
A path is simply a list of transformation matrices like the multimatrix. In
the scad-utils library you can see how they are done in
"transformations.scad". Each transformation can not only have a translation
for a point on the path, it can have rotations and scaling as well. By
mathematically defining the shape you want using the scaling you can create
almost any shape. In your case the math is fairly simple.
For some reason the sweep is not part of the scad utils. It is in the list
comprehension demos. Both can be found in the OpenSCAD github
https://github.com/openscad https://github.com/openscad
Sweep uses the transformation list created for the path to transform a 2D
shape at each point. It connects the corresponding vertices of the
transformed shape back to the transformed 2D shape at the previous step
forming a polyhedron 3D shape. You could use a half circle or quarter
circle which is scaled as needed. You probably want a straight path.
The path can be almost anything. I have used this technique to fillet
unusual paths. For example, I added fillets to fins on a jet ski impeller.
The fins were sweeps as well. I could use the same base path for both.
Just change the 2D shapes and the scaling.
BTW, another great way to create paths are trajectories. They are pretty
easy to understand. The quantize_trajectories will turn the trajectories
into a path. There may be a way to add scaling directly to the trajectory,
but I usually take that path and apply the scaling in another list
comprehension.
I didn't recommend using the trajectories in your case, because I believe
you will be translating on a straight line. Your math needs to relate to
the translation values. You should do it all together.
Steve
kaefert wrote
Hi there!
I've spent a few hours designing this rounding for a part of mine, which
already is quite complex (to my eyes at least):
and now I've found that it sadly won't do since I need it angled - I'll
try to explain: at the moment it hits the smaller part in 90° angle on
both sides, but i need it in 75° on the one side and in 105° on the other.
If the discription is unclear, or you wanna take a look at the bigger
picture, this is my work in progress quadcopter frame for which arm this
rounding is for:
playground_v5.scad
http://forum.openscad.org/file/n13495/playground_v5.scad
--
View this message in context: http://forum.openscad.org/are-there-easier-ways-to-get-round-edges-tp13495p13504.html
Sent from the OpenSCAD mailing list archive at Nabble.com.
hey there guys!
Thank you for all your answers!
At the moment I've copied the fillet function suggested by Chow Loong Jin
from
https://github.com/clothbot/ClothBotCreations/blob/master/utilities/fillet.scad
(find my current development stage as attachment: )
playground_v7.scad
http://forum.openscad.org/file/n13508/playground_v7.scad
I adapted my code to just intersect the 4 raw cubes that I need it to, to
make the processing time halfway bareable. I am used to processing times of
under a second, with this library I'm at 3,5 minutes (just for the preview,
the rendering takes much longer, I think around 20 minutes but I'm not
sure...)
The suggestion by Peter Falke to use offset() won't work, cause I need a 3D
fillet.
I could not get the library also suggested by Peter Falke
http://www.thingiverse.com/thing:142798 to work. The sample does only render
a fillet for the part2() module, not for the part3() as shown in the
screenshots on thingiverse.com - I am using OpenSCAD 2015.03-1 and when it
runs your code it tells me: "DEPRECATED: child() will be removed in future
releases. Use children() instead. " - My tries to get fillets for self
designed parts all failed, though I tried only for 5 minutes or so. Maybe
you can give some explanations how to use your library. (I don't really
understand how exactly he deciceds where the fillet is needed when you only
call it with one part without the other one it should be intersecting?)
I'm now gonna take a look at the sweep function, but I guess I first need to
find out about how to make my OpenSCAD installation find dependencies like
<scad-utils/linalg.scad> and those from MCAD.
--
View this message in context: http://forum.openscad.org/are-there-easier-ways-to-get-round-edges-tp13495p13508.html
Sent from the OpenSCAD mailing list archive at Nabble.com.