another improved attempt on designing a seat:
my point here is that python can improve the capability of openscad which
probably is extremely difficult with pure openscad language alone.
So it would make sense in investing some time to add python as another
language. Maybe there could be 2 separate versions
openscad file can be downloaded from here:
https://github.com/sprabhakar2006/openSCAD/blob/main/seat.scad
[image: Screenshot 2024-06-02 at 8.48.58 AM.png]
The OpenSCAD file is incomprehensible, to the point of being useless.
You are writing in Python, not in OpenSCAD. You are just using OpenSCAD
as rendering engine.
On 6/1/2024 11:28 PM, Sanjeev Prabhakar via Discuss wrote:
another improved attempt on designing a seat:
my point here is that python can improve the capability of openscad
which probably is extremely difficult with pure openscad language alone.
So it would make sense in investing some time to add python as another
language. Maybe there could be 2 separate versions
openscad file can be downloaded from here:
https://github.com/sprabhakar2006/openSCAD/blob/main/seat.scad
Screenshot 2024-06-02 at 8.48.58 AM.png
OpenSCAD mailing list
To unsubscribe send an email todiscuss-leave@lists.openscad.org
--
This email has been checked for viruses by AVG antivirus software.
www.avg.com
On Sunday, June 2, 2024 at 07:26:06 AM EDT, Jon Bondy via Discuss discuss@lists.openscad.org wrote:
The OpenSCAD file is incomprehensible, to the point of being useless. You are writing in Python, not in OpenSCAD. You are just using OpenSCAD as rendering engine.
Let's turn this around --- if there was an OpenSCAD module for representing such a design what would the interface look like?
I've asked before about representing curved surfaces in a fashion which was elegant and expressible, and which folks who do not have an understanding of higher maths could not merely grasp, but also write/use --- while a couple of techniques have been put forward, I wasn't able to wrap my mind around them, and I will readily admit to this being my deficient education.
I've actually just finished adding support for arcs in my current project:
https://github.com/WillAdams/gcodepreview
(though I need to improve it to have Z-axis movement/cutting as well, and yes, for some reason the arc generated come in as 25.1mm x 25mm curves which don't meet up so as to make a circle, and they generate an error when importing the DXF into some programs...)
Once that is done, I eventually hope to start working on adding some sort of support for curves in 3 dimensions, or representing a curved surface --- what is a way to do this which is:
- reasonably concise - expressive and powerful - suitable to be calculated out within OpenSCAD
My current plan is to just do curves of tool movement in 3 dimensions --- an overhead view of a Bézier curve for X and Y coordinates, and a representation of a side view as a curve which shows Y and Z coordinates --- to make a curved surface it would be necessary to arrange a sufficient number of toolpaths so as to represent that tool movement when cutting out that surface and ultimately this would need to be captured as G-code for making that cut.
At one point in time I had a number of links which I had researched:
https://en.wikibooks.org/wiki/OpenSCAD_User_Manual/Other_Language_Features#Surface
Thingiverse: Bezier Heart in OpenScad
http://climberg.de/page/openscad-implementation-of-bezier-curves-of-any-degrees/ https://climberg.de/post/openscad_bezier_curves
https://github.com/JustinSDK/dotSCAD [19] https://openhome.cc/eGossip/OpenSCAD/BezierCurve.html https://openhome.cc/eGossip/OpenSCAD/lib-bezier_surface.html
https://github.com/RLuckom/bezier-scad https://www.raphaelluckom.com/posts/bezier_curves.html
http://forum.openscad.org/Rectangle-with-one-curved-edge-td21097.html
http://kitwallace.tumblr.com/post/76273401911/loxodrome-in-openscad
and I would be glad of reading recommendations, or example code which is carefully and thoroughly explained.
William
-- https://designinto3d.com/
Sphinx of black quartz, judge my vow.
It seems that a lot of those links are dead and the ones that are alive are
about Beziers. I'm not sure what you're looking for. A simple
implementation of Beziers is not hard. BOSL2 has a sophisticated, highly
optimized implementation of Beziers if you're looking for something like
that. But to my mind, that really doesn't answer the question at all of
how to design curved objects, because you still need to produce the bezier
control points somehow. So how do you do that? It seems like what's needed
is some other mechanism where you can define what you want in a more human
comprehensible fashion and some intermediate process produces the requisite
control points.
On Sun, Jun 2, 2024 at 12:19 PM William F. Adams via Discuss <
discuss@lists.openscad.org> wrote:
On Sunday, June 2, 2024 at 07:26:06 AM EDT, Jon Bondy via Discuss <
discuss@lists.openscad.org> wrote:
The OpenSCAD file is incomprehensible, to the point of being useless. You
are writing in Python, not in OpenSCAD. You are just using OpenSCAD as
rendering engine.
Let's turn this around --- if there was an OpenSCAD module for
representing such a design what would the interface look like?
I've asked before about representing curved surfaces in a fashion which
was elegant and expressible, and which folks who do not have an
understanding of higher maths could not merely grasp, but also write/use
--- while a couple of techniques have been put forward, I wasn't able to
wrap my mind around them, and I will readily admit to this being my
deficient education.
I've actually just finished adding support for arcs in my current project:
https://github.com/WillAdams/gcodepreview
[image: Inline image]
(though I need to improve it to have Z-axis movement/cutting as well, and
yes, for some reason the arc generated come in as 25.1mm x 25mm curves
which don't meet up so as to make a circle, and they generate an error when
importing the DXF into some programs...)
Once that is done, I eventually hope to start working on adding some sort
of support for curves in 3 dimensions, or representing a curved surface ---
what is a way to do this which is:
My current plan is to just do curves of tool movement in 3 dimensions ---
an overhead view of a Bézier curve for X and Y coordinates, and a
representation of a side view as a curve which shows Y and Z coordinates
--- to make a curved surface it would be necessary to arrange a sufficient
number of toolpaths so as to represent that tool movement when cutting out
that surface and ultimately this would need to be captured as G-code for
making that cut.
At one point in time I had a number of links which I had researched:
-
https://en.wikibooks.org/wiki/OpenSCAD_User_Manual/Other_Language_Features#Surface
- Thingiverse: Bezier Heart in OpenScad
<https://www.thingiverse.com/thing:8483>
- https://www.thingiverse.com/thing:8931
-
http://climberg.de/page/openscad-implementation-of-bezier-curves-of-any-degrees/
https://climberg.de/post/openscad_bezier_curves
- https://github.com/JustinSDK/dotSCAD [19]
<http://forum.openscad.org/larger-number-of-control-points-for-Bezier-td22435.html>
https://openhome.cc/eGossip/OpenSCAD/BezierCurve.html
https://openhome.cc/eGossip/OpenSCAD/lib-bezier_surface.html
- http://forum.openscad.org/smooth-3-D-curves-tc7766.html
- https://github.com/RLuckom/bezier-scad
https://www.raphaelluckom.com/posts/bezier_curves.html
- http://forum.openscad.org/Rectangle-with-one-curved-edge-td21097.html
- http://kitwallace.tumblr.com/post/76273401911/loxodrome-in-openscad
- http://www.thingiverse.com/thing:1208001 [20]
<http://forum.openscad.org/Spline-interpolation-nSpline-td15207.html>
- https://www.blockscad3d.com/community/projects/68284
and I would be glad of reading recommendations, or example code which is
carefully and thoroughly explained.
William
--
https://designinto3d.com/
Sphinx of black quartz, judge my vow.
OpenSCAD mailing list
To unsubscribe send an email to discuss-leave@lists.openscad.org
I agree that what is missing is the API to do this kind of complex
curved design. As to whether that is implemented directly in OpenSCAD
or in a pre-processor or a library may be moot. That said, once I skip
over to another language, I may not return to OpenSCAD.
A different question would be "could we enhance OpenSCAD to the point
where relying on other languages is unnecessary?" I'm sure this has
been pondered in the past.
Jon
On 6/2/2024 12:16 PM, William F. Adams via Discuss wrote:
On Sunday, June 2, 2024 at 07:26:06 AM EDT, Jon Bondy via Discuss
discuss@lists.openscad.org wrote:
The OpenSCAD file is incomprehensible, to the point of being useless.
You are writing in Python, not in OpenSCAD. You are just using
OpenSCAD as rendering engine.
Let's turn this around --- if there was an OpenSCAD module for
representing such a design what would the interface look like?
--
This email has been checked for viruses by AVG antivirus software.
www.avg.com
I am not good at explaining things. When I start explaining with diagrams,
it takes too long and I don't have that much time.
You can read the code in my github file openscad1.py and I can answer some
specific questions.
There are some 18 types of arc functions defined.
Key idea in these functions is to define the arcs in 2d which are not very
tough to define in openscad language as well and thereafter the same
functions can be used in 3d arcs. What you need is a method to transform 3d
points to 2d and then back to 3d at its original location.
Also there is no complex mathematics involved here
On Sun, 2 Jun 2024 at 21:47, William F. Adams via Discuss <
discuss@lists.openscad.org> wrote:
On Sunday, June 2, 2024 at 07:26:06 AM EDT, Jon Bondy via Discuss <
discuss@lists.openscad.org> wrote:
The OpenSCAD file is incomprehensible, to the point of being useless. You
are writing in Python, not in OpenSCAD. You are just using OpenSCAD as
rendering engine.
Let's turn this around --- if there was an OpenSCAD module for
representing such a design what would the interface look like?
I've asked before about representing curved surfaces in a fashion which
was elegant and expressible, and which folks who do not have an
understanding of higher maths could not merely grasp, but also write/use
--- while a couple of techniques have been put forward, I wasn't able to
wrap my mind around them, and I will readily admit to this being my
deficient education.
I've actually just finished adding support for arcs in my current project:
https://github.com/WillAdams/gcodepreview
[image: Inline image]
(though I need to improve it to have Z-axis movement/cutting as well, and
yes, for some reason the arc generated come in as 25.1mm x 25mm curves
which don't meet up so as to make a circle, and they generate an error when
importing the DXF into some programs...)
Once that is done, I eventually hope to start working on adding some sort
of support for curves in 3 dimensions, or representing a curved surface ---
what is a way to do this which is:
My current plan is to just do curves of tool movement in 3 dimensions ---
an overhead view of a Bézier curve for X and Y coordinates, and a
representation of a side view as a curve which shows Y and Z coordinates
--- to make a curved surface it would be necessary to arrange a sufficient
number of toolpaths so as to represent that tool movement when cutting out
that surface and ultimately this would need to be captured as G-code for
making that cut.
At one point in time I had a number of links which I had researched:
-
https://en.wikibooks.org/wiki/OpenSCAD_User_Manual/Other_Language_Features#Surface
- Thingiverse: Bezier Heart in OpenScad
<https://www.thingiverse.com/thing:8483>
- https://www.thingiverse.com/thing:8931
-
http://climberg.de/page/openscad-implementation-of-bezier-curves-of-any-degrees/
https://climberg.de/post/openscad_bezier_curves
- https://github.com/JustinSDK/dotSCAD [19]
<http://forum.openscad.org/larger-number-of-control-points-for-Bezier-td22435.html>
https://openhome.cc/eGossip/OpenSCAD/BezierCurve.html
https://openhome.cc/eGossip/OpenSCAD/lib-bezier_surface.html
- http://forum.openscad.org/smooth-3-D-curves-tc7766.html
- https://github.com/RLuckom/bezier-scad
https://www.raphaelluckom.com/posts/bezier_curves.html
- http://forum.openscad.org/Rectangle-with-one-curved-edge-td21097.html
- http://kitwallace.tumblr.com/post/76273401911/loxodrome-in-openscad
- http://www.thingiverse.com/thing:1208001 [20]
<http://forum.openscad.org/Spline-interpolation-nSpline-td15207.html>
- https://www.blockscad3d.com/community/projects/68284
and I would be glad of reading recommendations, or example code which is
carefully and thoroughly explained.
William
--
https://designinto3d.com/
Sphinx of black quartz, judge my vow.
OpenSCAD mailing list
To unsubscribe send an email to discuss-leave@lists.openscad.org
Jon, I think you're underestimating the severity of the concern here. We
don't merely need an API to do this kind of design. At least to me that
suggests that a design approach exists and you just need to write its
interface. There is a perfectly satisfactory API to beziers in BOSL2, for
example. In actual fact it seems like what's needed is a design philosophy
or strategy. And indeed, if anybody has any ideas I'd be interested in
hearing them. I've implemented various things in BOSL2 that do curves
using beziers, but none are particularly general. I started with
round_corners to round the corners of a polygon, which can apply beziers to
the corners in 2d. Later I wrote rounded_prism which does a sort of
analogous thing of rounding edges of an arbitrary prism in 3d by placing
beziers at the various corners. I also implemented smooth_path which takes
a polygon and converts each edge to a bezier curve so that they meet
smoothly (C1) at the corners with a specified amount of bulge. And I
implemented join_prism() which joins various kinds of prisms or prism to
sphere or plane with a fillet. But none of this provides a general
framework for designing some arbitrarily curved 3d object.
One approach to that sort of design is to start with a polyhedron and then
smooth it. There are ways to do this such as Catmull smoothing and other
more sophisticated ones. They depend on how the starting shape is
triangulated and are hard to control, though. In particular, what if you
only want to smooth part of a polyhedron? About a year ago Martin
Herdieckerhoff posted an intriguing message about a library called Yari
that used some subdivision methods to design rounded shapes, but I don't
think I ever saw any details about how it worked, or a link to the actual
algorithm.
On Sun, Jun 2, 2024 at 8:46 PM Jon Bondy via Discuss <
discuss@lists.openscad.org> wrote:
I agree that what is missing is the API to do this kind of complex curved
design. As to whether that is implemented directly in OpenSCAD or in a
pre-processor or a library may be moot. That said, once I skip over to
another language, I may not return to OpenSCAD.
A different question would be "could we enhance OpenSCAD to the point
where relying on other languages is unnecessary?" I'm sure this has been
pondered in the past.
Jon
On 6/2/2024 12:16 PM, William F. Adams via Discuss wrote:
On Sunday, June 2, 2024 at 07:26:06 AM EDT, Jon Bondy via Discuss
discuss@lists.openscad.org discuss@lists.openscad.org wrote:
The OpenSCAD file is incomprehensible, to the point of being useless. You
are writing in Python, not in OpenSCAD. You are just using OpenSCAD as
rendering engine.
Let's turn this around --- if there was an OpenSCAD module for
representing such a design what would the interface look like?
http://www.avg.com/email-signature?utm_medium=email&utm_source=link&utm_campaign=sig-email&utm_content=emailclient
Virus-free.www.avg.com
http://www.avg.com/email-signature?utm_medium=email&utm_source=link&utm_campaign=sig-email&utm_content=emailclient
<#m_3168717318659623628_DAB4FAD8-2DD7-40BB-A1B8-4E2AA1F9FDF2>
OpenSCAD mailing list
To unsubscribe send an email to discuss-leave@lists.openscad.org
Adrian:
My use of the term API was a poor one. I think William said it better.
We need a way of thinking about such complex shapes as procedures and
functions and data, as in a C .H file, and then find a way to implement
those functions in OpenSCAD, if that is even possible. Up until now, I
thought the problem lay in OpenSCAD's quirky feature set (no variables,
minimal data structures), but now I can see that the problem is more in
finding a design approach that is practical. It seems that Sanjeev has
conceived of how to create such complex shapes. Perhaps we can learn
from what he has done, and explore how and whether these functions can
be implemented in OpenSCAD directly.
Jon
On 6/3/2024 12:37 AM, Adrian Mariano via Discuss wrote:
Jon, I think you're underestimating the severity of the concern here.
We don't merely need an API to do this kind of design. At least to me
that suggests that a design approach exists and you just need to write
its interface. There is a perfectly satisfactory API to beziers in
BOSL2, for example. In actual fact it seems like what's needed is a
design philosophy or strategy. And indeed, if anybody has any ideas
I'd be interested in hearing them. I've implemented various things in
BOSL2 that do curves using beziers, but none are particularly
general. I started with round_corners to round the corners of a
polygon, which can apply beziers to the corners in 2d. Later I wrote
rounded_prism which does a sort of analogous thing of rounding edges
of an arbitrary prism in 3d by placing beziers at the various
corners. I also implemented smooth_path which takes a polygon and
converts each edge to a bezier curve so that they meet smoothly (C1)
at the corners with a specified amount of bulge. And I implemented
join_prism() which joins various kinds of prisms or prism to sphere or
plane with a fillet. But none of this provides a general framework
for designing some arbitrarily curved 3d object.
One approach to that sort of design is to start with a polyhedron and
then smooth it. There are ways to do this such as Catmull smoothing
and other more sophisticated ones. They depend on how the starting
shape is triangulated and are hard to control, though. In particular,
what if you only want to smooth part of a polyhedron? About a year
ago Martin Herdieckerhoff posted an intriguing message about a library
called Yari that used some subdivision methods to design rounded
shapes, but I don't think I ever saw any details about how it worked,
or a link to the actual algorithm.
On Sun, Jun 2, 2024 at 8:46 PM Jon Bondy via Discuss
discuss@lists.openscad.org wrote:
I agree that what is missing is the API to do this kind of complex
curved design. As to whether that is implemented directly in
OpenSCAD or in a pre-processor or a library may be moot. That
said, once I skip over to another language, I may not return to
OpenSCAD.
A different question would be "could we enhance OpenSCAD to the
point where relying on other languages is unnecessary?" I'm sure
this has been pondered in the past.
Jon
On 6/2/2024 12:16 PM, William F. Adams via Discuss wrote:
On Sunday, June 2, 2024 at 07:26:06 AM EDT, Jon Bondy via Discuss
<discuss@lists.openscad.org> <mailto:discuss@lists.openscad.org>
wrote:
The OpenSCAD file is incomprehensible, to the point of being
useless. You are writing in Python, not in OpenSCAD. You are
just using OpenSCAD as rendering engine.
Let's turn this around --- if there was an OpenSCAD module for
representing such a design what would the interface look like?
<snip>
<http://www.avg.com/email-signature?utm_medium=email&utm_source=link&utm_campaign=sig-email&utm_content=emailclient>
Virus-free.www.avg.com
<http://www.avg.com/email-signature?utm_medium=email&utm_source=link&utm_campaign=sig-email&utm_content=emailclient>
<#m_3168717318659623628_DAB4FAD8-2DD7-40BB-A1B8-4E2AA1F9FDF2>
_______________________________________________
OpenSCAD mailing list
To unsubscribe send an email to discuss-leave@lists.openscad.org
OpenSCAD mailing list
To unsubscribe send an email todiscuss-leave@lists.openscad.org
--
This email has been checked for viruses by AVG antivirus software.
www.avg.com
Well, a C language .h file basically describes an API. Here's an example
of a solution that does a lot of interesting things. I can't find it at
the moment, but it has the ability to make joints with different levels of
continuity, so G0 or G2, but the interface is all about pointing and
clicking. https://www.xnurbs.com/
On Mon, Jun 3, 2024 at 6:06 AM Jon Bondy jon@jonbondy.com wrote:
Adrian:
My use of the term API was a poor one. I think William said it better.
We need a way of thinking about such complex shapes as procedures and
functions and data, as in a C .H file, and then find a way to implement
those functions in OpenSCAD, if that is even possible. Up until now, I
thought the problem lay in OpenSCAD's quirky feature set (no variables,
minimal data structures), but now I can see that the problem is more in
finding a design approach that is practical. It seems that Sanjeev has
conceived of how to create such complex shapes. Perhaps we can learn from
what he has done, and explore how and whether these functions can be
implemented in OpenSCAD directly.
Jon
On 6/3/2024 12:37 AM, Adrian Mariano via Discuss wrote:
Jon, I think you're underestimating the severity of the concern here. We
don't merely need an API to do this kind of design. At least to me that
suggests that a design approach exists and you just need to write its
interface. There is a perfectly satisfactory API to beziers in BOSL2, for
example. In actual fact it seems like what's needed is a design philosophy
or strategy. And indeed, if anybody has any ideas I'd be interested in
hearing them. I've implemented various things in BOSL2 that do curves
using beziers, but none are particularly general. I started with
round_corners to round the corners of a polygon, which can apply beziers to
the corners in 2d. Later I wrote rounded_prism which does a sort of
analogous thing of rounding edges of an arbitrary prism in 3d by placing
beziers at the various corners. I also implemented smooth_path which takes
a polygon and converts each edge to a bezier curve so that they meet
smoothly (C1) at the corners with a specified amount of bulge. And I
implemented join_prism() which joins various kinds of prisms or prism to
sphere or plane with a fillet. But none of this provides a general
framework for designing some arbitrarily curved 3d object.
One approach to that sort of design is to start with a polyhedron and then
smooth it. There are ways to do this such as Catmull smoothing and other
more sophisticated ones. They depend on how the starting shape is
triangulated and are hard to control, though. In particular, what if you
only want to smooth part of a polyhedron? About a year ago Martin
Herdieckerhoff posted an intriguing message about a library called Yari
that used some subdivision methods to design rounded shapes, but I don't
think I ever saw any details about how it worked, or a link to the actual
algorithm.
On Sun, Jun 2, 2024 at 8:46 PM Jon Bondy via Discuss <
discuss@lists.openscad.org> wrote:
I agree that what is missing is the API to do this kind of complex curved
design. As to whether that is implemented directly in OpenSCAD or in a
pre-processor or a library may be moot. That said, once I skip over to
another language, I may not return to OpenSCAD.
A different question would be "could we enhance OpenSCAD to the point
where relying on other languages is unnecessary?" I'm sure this has been
pondered in the past.
Jon
On 6/2/2024 12:16 PM, William F. Adams via Discuss wrote:
On Sunday, June 2, 2024 at 07:26:06 AM EDT, Jon Bondy via Discuss
discuss@lists.openscad.org discuss@lists.openscad.org wrote:
The OpenSCAD file is incomprehensible, to the point of being useless.
You are writing in Python, not in OpenSCAD. You are just using OpenSCAD as
rendering engine.
Let's turn this around --- if there was an OpenSCAD module for
representing such a design what would the interface look like?
http://www.avg.com/email-signature?utm_medium=email&utm_source=link&utm_campaign=sig-email&utm_content=emailclient
Virus-free.www.avg.com
http://www.avg.com/email-signature?utm_medium=email&utm_source=link&utm_campaign=sig-email&utm_content=emailclient
<#m_7325925207113937027_m_3168717318659623628_DAB4FAD8-2DD7-40BB-A1B8-4E2AA1F9FDF2>
OpenSCAD mailing list
To unsubscribe send an email to discuss-leave@lists.openscad.org
OpenSCAD mailing list
To unsubscribe send an email to discuss-leave@lists.openscad.org
Just FYI, the manifold backend has subdivision for smoothing shapes.
Here are some recent PRs that may be of interest:
https://github.com/elalish/manifold/pull/793
https://github.com/elalish/manifold/pull/821
It doesn't seem too hard to expose the API to openscad, but not sure if
people are happy with having this manifold specific feature. Perhaps we
should try to find more people to try this.
On 3/6/2024 18:34, Adrian Mariano via Discuss wrote:
Well, a C language .h file basically describes an API. Here's an
example of a solution that does a lot of interesting things. I can't
find it at the moment, but it has the ability to make joints with
different levels of continuity, so G0 or G2, but the interface is all
about pointing and clicking. https://www.xnurbs.com/
On Mon, Jun 3, 2024 at 6:06 AM Jon Bondy jon@jonbondy.com wrote:
Adrian:
My use of the term API was a poor one. I think William said it
better. We need a way of thinking about such complex shapes as
procedures and functions and data, as in a C .H file, and then
find a way to implement those functions in OpenSCAD, if that is
even possible. Up until now, I thought the problem lay in
OpenSCAD's quirky feature set (no variables, minimal data
structures), but now I can see that the problem is more in finding
a design approach that is practical. It seems that Sanjeev has
conceived of how to create such complex shapes. Perhaps we can
learn from what he has done, and explore how and whether these
functions can be implemented in OpenSCAD directly.
Jon
On 6/3/2024 12:37 AM, Adrian Mariano via Discuss wrote:
Jon, I think you're underestimating the severity of the concern
here. We don't merely need an API to do this kind of design. At
least to me that suggests that a design approach exists and you
just need to write its interface. There is a perfectly
satisfactory API to beziers in BOSL2, for example. In actual
fact it seems like what's needed is a design philosophy or
strategy. And indeed, if anybody has any ideas I'd be interested
in hearing them. I've implemented various things in BOSL2 that
do curves using beziers, but none are particularly general. I
started with round_corners to round the corners of a polygon,
which can apply beziers to the corners in 2d. Later I wrote
rounded_prism which does a sort of analogous thing of rounding
edges of an arbitrary prism in 3d by placing beziers at the
various corners. I also implemented smooth_path which takes a
polygon and converts each edge to a bezier curve so that they
meet smoothly (C1) at the corners with a specified amount of
bulge. And I implemented join_prism() which joins various
kinds of prisms or prism to sphere or plane with a fillet. But
none of this provides a general framework for designing some
arbitrarily curved 3d object.
One approach to that sort of design is to start with a polyhedron
and then smooth it. There are ways to do this such as Catmull
smoothing and other more sophisticated ones. They depend on how
the starting shape is triangulated and are hard to control,
though. In particular, what if you only want to smooth part of a
polyhedron? About a year ago Martin Herdieckerhoff posted an
intriguing message about a library called Yari that used some
subdivision methods to design rounded shapes, but I don't think I
ever saw any details about how it worked, or a link to the actual
algorithm.
On Sun, Jun 2, 2024 at 8:46 PM Jon Bondy via Discuss
<discuss@lists.openscad.org> wrote:
I agree that what is missing is the API to do this kind of
complex curved design. As to whether that is implemented
directly in OpenSCAD or in a pre-processor or a library may
be moot. That said, once I skip over to another language, I
may not return to OpenSCAD.
A different question would be "could we enhance OpenSCAD to
the point where relying on other languages is unnecessary?"
I'm sure this has been pondered in the past.
Jon
On 6/2/2024 12:16 PM, William F. Adams via Discuss wrote:
On Sunday, June 2, 2024 at 07:26:06 AM EDT, Jon Bondy via
Discuss <discuss@lists.openscad.org>
<mailto:discuss@lists.openscad.org> wrote:
The OpenSCAD file is incomprehensible, to the point of being
useless. You are writing in Python, not in OpenSCAD. You
are just using OpenSCAD as rendering engine.
Let's turn this around --- if there was an OpenSCAD module
for representing such a design what would the interface look
like?
<snip>
<http://www.avg.com/email-signature?utm_medium=email&utm_source=link&utm_campaign=sig-email&utm_content=emailclient>
Virus-free.www.avg.com
<http://www.avg.com/email-signature?utm_medium=email&utm_source=link&utm_campaign=sig-email&utm_content=emailclient>
<#m_7325925207113937027_m_3168717318659623628_DAB4FAD8-2DD7-40BB-A1B8-4E2AA1F9FDF2>
_______________________________________________
OpenSCAD mailing list
To unsubscribe send an email to discuss-leave@lists.openscad.org
_______________________________________________
OpenSCAD mailing list
To unsubscribe send an email todiscuss-leave@lists.openscad.org
OpenSCAD mailing list
To unsubscribe send an email todiscuss-leave@lists.openscad.org