discuss@lists.openscad.org

OpenSCAD general discussion Mailing-list

View all threads

Attempt to offer path_extrude in openscad

GS
Guenther Sohler
Thu, Jan 26, 2023 4:25 PM

Hi List,

right now i am attempting to add a path_extrude function to openscad
A demonstration what i am talking about is here:

https://youtu.be/igMupYGvX1s

(sorry, its in python, but still i hope you get the idea. )
This shows an arbitrary path_extrude of a square,
but in the video you can clearly see the triangles in the faces,
so i believe the cross section at the joints is not correct.
IMHO the square must turn to a deltoid especially when the base square is
rotated by 45 degrees to be correct.
Can anybody shade some light on that for me ?

Hi List, right now i am attempting to add a path_extrude function to openscad A demonstration what i am talking about is here: https://youtu.be/igMupYGvX1s (sorry, its in python, but still i hope you get the idea. ) This shows an arbitrary path_extrude of a square, but in the video you can clearly see the triangles in the faces, so i believe the cross section at the joints is not correct. IMHO the square must turn to a deltoid especially when the base square is rotated by 45 degrees to be correct. Can anybody shade some light on that for me ?
AM
Adrian Mariano
Thu, Jan 26, 2023 9:49 PM

Guenther, I'm a little unsure of your goal here.  If you are excited to
implement path_sweep for the fun of it that's fine, of course, but this has
been done before by many people in OpenSCAD, starting with
list-comprehension-demos and also in dotSCAD, and BOSL2.  These methods
exist already as OpenSCAD code. so a demonstration isn't needed to show the
possibilities. There are some very difficult questions about how to rotate
the cross sections as you move around the path, and yes, it's entirely
possible that you've gotten it wrong...assuming that you can figure out
what "wrong" means.  It's not clear.  There was a very long thread on the
forum many years ago about the various complications.  I implemented
several different algorithms in BOSL2 for choosing how to line up the
sections.  You might want to take a look to get more understanding of the
issues.

https://github.com/revarbat/BOSL2/wiki/skin.scad#functionmodule-path_sweep

On Thu, Jan 26, 2023 at 11:26 AM Guenther Sohler guenther.sohler@gmail.com
wrote:

Hi List,

right now i am attempting to add a path_extrude function to openscad
A demonstration what i am talking about is here:

https://youtu.be/igMupYGvX1s

(sorry, its in python, but still i hope you get the idea. )
This shows an arbitrary path_extrude of a square,
but in the video you can clearly see the triangles in the faces,
so i believe the cross section at the joints is not correct.
IMHO the square must turn to a deltoid especially when the base square is
rotated by 45 degrees to be correct.
Can anybody shade some light on that for me ?


OpenSCAD mailing list
To unsubscribe send an email to discuss-leave@lists.openscad.org

Guenther, I'm a little unsure of your goal here. If you are excited to implement path_sweep for the fun of it that's fine, of course, but this has been done before by many people in OpenSCAD, starting with list-comprehension-demos and also in dotSCAD, and BOSL2. These methods exist already as OpenSCAD code. so a demonstration isn't needed to show the possibilities. There are some very difficult questions about how to rotate the cross sections as you move around the path, and yes, it's entirely possible that you've gotten it wrong...assuming that you can figure out what "wrong" means. It's not clear. There was a very long thread on the forum many years ago about the various complications. I implemented several different algorithms in BOSL2 for choosing how to line up the sections. You might want to take a look to get more understanding of the issues. https://github.com/revarbat/BOSL2/wiki/skin.scad#functionmodule-path_sweep On Thu, Jan 26, 2023 at 11:26 AM Guenther Sohler <guenther.sohler@gmail.com> wrote: > Hi List, > > right now i am attempting to add a path_extrude function to openscad > A demonstration what i am talking about is here: > > https://youtu.be/igMupYGvX1s > > (sorry, its in python, but still i hope you get the idea. ) > This shows an arbitrary path_extrude of a square, > but in the video you can clearly see the triangles in the faces, > so i believe the cross section at the joints is not correct. > IMHO the square must turn to a deltoid especially when the base square is > rotated by 45 degrees to be correct. > Can anybody shade some light on that for me ? > > > _______________________________________________ > OpenSCAD mailing list > To unsubscribe send an email to discuss-leave@lists.openscad.org >
AC
A. Craig West
Thu, Jan 26, 2023 10:11 PM

It's definitely a challenge, I spent months implementing something like
this to allow me to design arbitrary air flow paths for ducting.

On Thu, 26 Jan 2023, 16:51 Adrian Mariano, avm4@cornell.edu wrote:

Guenther, I'm a little unsure of your goal here.  If you are excited to
implement path_sweep for the fun of it that's fine, of course, but this has
been done before by many people in OpenSCAD, starting with
list-comprehension-demos and also in dotSCAD, and BOSL2.  These methods
exist already as OpenSCAD code. so a demonstration isn't needed to show the
possibilities. There are some very difficult questions about how to rotate
the cross sections as you move around the path, and yes, it's entirely
possible that you've gotten it wrong...assuming that you can figure out
what "wrong" means.  It's not clear.  There was a very long thread on the
forum many years ago about the various complications.  I implemented
several different algorithms in BOSL2 for choosing how to line up the
sections.  You might want to take a look to get more understanding of the
issues.

https://github.com/revarbat/BOSL2/wiki/skin.scad#functionmodule-path_sweep

On Thu, Jan 26, 2023 at 11:26 AM Guenther Sohler <
guenther.sohler@gmail.com> wrote:

Hi List,

right now i am attempting to add a path_extrude function to openscad
A demonstration what i am talking about is here:

https://youtu.be/igMupYGvX1s

(sorry, its in python, but still i hope you get the idea. )
This shows an arbitrary path_extrude of a square,
but in the video you can clearly see the triangles in the faces,
so i believe the cross section at the joints is not correct.
IMHO the square must turn to a deltoid especially when the base square is
rotated by 45 degrees to be correct.
Can anybody shade some light on that for me ?


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

It's definitely a challenge, I spent months implementing something like this to allow me to design arbitrary air flow paths for ducting. On Thu, 26 Jan 2023, 16:51 Adrian Mariano, <avm4@cornell.edu> wrote: > Guenther, I'm a little unsure of your goal here. If you are excited to > implement path_sweep for the fun of it that's fine, of course, but this has > been done before by many people in OpenSCAD, starting with > list-comprehension-demos and also in dotSCAD, and BOSL2. These methods > exist already as OpenSCAD code. so a demonstration isn't needed to show the > possibilities. There are some very difficult questions about how to rotate > the cross sections as you move around the path, and yes, it's entirely > possible that you've gotten it wrong...assuming that you can figure out > what "wrong" means. It's not clear. There was a very long thread on the > forum many years ago about the various complications. I implemented > several different algorithms in BOSL2 for choosing how to line up the > sections. You might want to take a look to get more understanding of the > issues. > > https://github.com/revarbat/BOSL2/wiki/skin.scad#functionmodule-path_sweep > > > On Thu, Jan 26, 2023 at 11:26 AM Guenther Sohler < > guenther.sohler@gmail.com> wrote: > >> Hi List, >> >> right now i am attempting to add a path_extrude function to openscad >> A demonstration what i am talking about is here: >> >> https://youtu.be/igMupYGvX1s >> >> (sorry, its in python, but still i hope you get the idea. ) >> This shows an arbitrary path_extrude of a square, >> but in the video you can clearly see the triangles in the faces, >> so i believe the cross section at the joints is not correct. >> IMHO the square must turn to a deltoid especially when the base square is >> rotated by 45 degrees to be correct. >> Can anybody shade some light on that for me ? >> >> >> _______________________________________________ >> 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 >
SP
Sanjeev Prabhakar
Fri, Jan 27, 2023 5:21 AM

it would be better to give a path without sharp corners and which is also
practically feasible.
then the testing could be more meaningful as per my understanding.
example:
[image: Screenshot 2023-01-27 at 10.40.32 AM.png]

On Thu, 26 Jan 2023 at 21:56, Guenther Sohler guenther.sohler@gmail.com
wrote:

Hi List,

right now i am attempting to add a path_extrude function to openscad
A demonstration what i am talking about is here:

https://youtu.be/igMupYGvX1s

(sorry, its in python, but still i hope you get the idea. )
This shows an arbitrary path_extrude of a square,
but in the video you can clearly see the triangles in the faces,
so i believe the cross section at the joints is not correct.
IMHO the square must turn to a deltoid especially when the base square is
rotated by 45 degrees to be correct.
Can anybody shade some light on that for me ?


OpenSCAD mailing list
To unsubscribe send an email to discuss-leave@lists.openscad.org

it would be better to give a path without sharp corners and which is also practically feasible. then the testing could be more meaningful as per my understanding. example: [image: Screenshot 2023-01-27 at 10.40.32 AM.png] On Thu, 26 Jan 2023 at 21:56, Guenther Sohler <guenther.sohler@gmail.com> wrote: > Hi List, > > right now i am attempting to add a path_extrude function to openscad > A demonstration what i am talking about is here: > > https://youtu.be/igMupYGvX1s > > (sorry, its in python, but still i hope you get the idea. ) > This shows an arbitrary path_extrude of a square, > but in the video you can clearly see the triangles in the faces, > so i believe the cross section at the joints is not correct. > IMHO the square must turn to a deltoid especially when the base square is > rotated by 45 degrees to be correct. > Can anybody shade some light on that for me ? > > > _______________________________________________ > OpenSCAD mailing list > To unsubscribe send an email to discuss-leave@lists.openscad.org >
GS
Guenther Sohler
Fri, Jan 27, 2023 9:39 AM

Adrian,
Thank you for the hint and the direct link.
I am happy to compare my implementation against yours to see where are the
differences.

Sanjeer, Thank you for your input.
Your output looks very impressive and I want to reach that too.
Personally I believe the challenge is to get it correct with very few
points first.
The error will be much more clearly visible when choosing few points.
Finally, using many points to make it look smooth is just exercise.
Probably
spline and many other functions are viable.
Maybe its also there in BOSL2, will check later.

Thank you for your answers!

On Thu, Jan 26, 2023 at 10:50 PM Adrian Mariano avm4@cornell.edu wrote:

Guenther, I'm a little unsure of your goal here.  If you are excited to
implement path_sweep for the fun of it that's fine, of course, but this has
been done before by many people in OpenSCAD, starting with
list-comprehension-demos and also in dotSCAD, and BOSL2.  These methods
exist already as OpenSCAD code. so a demonstration isn't needed to show the
possibilities. There are some very difficult questions about how to rotate
the cross sections as you move around the path, and yes, it's entirely
possible that you've gotten it wrong...assuming that you can figure out
what "wrong" means.  It's not clear.  There was a very long thread on the
forum many years ago about the various complications.  I implemented
several different algorithms in BOSL2 for choosing how to line up the
sections.  You might want to take a look to get more understanding of the
issues.

https://github.com/revarbat/BOSL2/wiki/skin.scad#functionmodule-path_sweep

On Thu, Jan 26, 2023 at 11:26 AM Guenther Sohler <
guenther.sohler@gmail.com> wrote:

Hi List,

right now i am attempting to add a path_extrude function to openscad
A demonstration what i am talking about is here:

https://youtu.be/igMupYGvX1s

(sorry, its in python, but still i hope you get the idea. )
This shows an arbitrary path_extrude of a square,
but in the video you can clearly see the triangles in the faces,
so i believe the cross section at the joints is not correct.
IMHO the square must turn to a deltoid especially when the base square is
rotated by 45 degrees to be correct.
Can anybody shade some light on that for me ?


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

Adrian, Thank you for the hint and the direct link. I am happy to compare my implementation against yours to see where are the differences. Sanjeer, Thank you for your input. Your output looks very impressive and I want to reach that too. Personally I believe the challenge is to get it correct with very few points first. The error will be much more clearly visible when choosing few points. Finally, using many points to make it look smooth is just exercise. Probably spline and many other functions are viable. Maybe its also there in BOSL2, will check later. Thank you for your answers! On Thu, Jan 26, 2023 at 10:50 PM Adrian Mariano <avm4@cornell.edu> wrote: > Guenther, I'm a little unsure of your goal here. If you are excited to > implement path_sweep for the fun of it that's fine, of course, but this has > been done before by many people in OpenSCAD, starting with > list-comprehension-demos and also in dotSCAD, and BOSL2. These methods > exist already as OpenSCAD code. so a demonstration isn't needed to show the > possibilities. There are some very difficult questions about how to rotate > the cross sections as you move around the path, and yes, it's entirely > possible that you've gotten it wrong...assuming that you can figure out > what "wrong" means. It's not clear. There was a very long thread on the > forum many years ago about the various complications. I implemented > several different algorithms in BOSL2 for choosing how to line up the > sections. You might want to take a look to get more understanding of the > issues. > > https://github.com/revarbat/BOSL2/wiki/skin.scad#functionmodule-path_sweep > > > On Thu, Jan 26, 2023 at 11:26 AM Guenther Sohler < > guenther.sohler@gmail.com> wrote: > >> Hi List, >> >> right now i am attempting to add a path_extrude function to openscad >> A demonstration what i am talking about is here: >> >> https://youtu.be/igMupYGvX1s >> >> (sorry, its in python, but still i hope you get the idea. ) >> This shows an arbitrary path_extrude of a square, >> but in the video you can clearly see the triangles in the faces, >> so i believe the cross section at the joints is not correct. >> IMHO the square must turn to a deltoid especially when the base square is >> rotated by 45 degrees to be correct. >> Can anybody shade some light on that for me ? >> >> >> _______________________________________________ >> 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 >
AM
Adrian Mariano
Fri, Jan 27, 2023 11:43 AM

I agree with Sanjeev that it's better to focus on the case of points close
together.  The problem is that some of the approaches are difficult to
define, or simply won't work, if you have the points on the path very
discrete and far apart.  You need to compute tangent and normal to the
path, so how do you do that at corners on a path with very few points?
There may be end effects in this computation, which will be more of a
nuisance if you have only four points.  One of the obvious algorithms for
choosing the rotation of the sections relies on the path points being close
together and may produce bizarre results when they are too far apart.

On Fri, Jan 27, 2023 at 4:39 AM Guenther Sohler guenther.sohler@gmail.com
wrote:

Adrian,
Thank you for the hint and the direct link.
I am happy to compare my implementation against yours to see where are the
differences.

Sanjeer, Thank you for your input.
Your output looks very impressive and I want to reach that too.
Personally I believe the challenge is to get it correct with very few
points first.
The error will be much more clearly visible when choosing few points.
Finally, using many points to make it look smooth is just exercise.
Probably
spline and many other functions are viable.
Maybe its also there in BOSL2, will check later.

Thank you for your answers!

On Thu, Jan 26, 2023 at 10:50 PM Adrian Mariano avm4@cornell.edu wrote:

Guenther, I'm a little unsure of your goal here.  If you are excited to
implement path_sweep for the fun of it that's fine, of course, but this has
been done before by many people in OpenSCAD, starting with
list-comprehension-demos and also in dotSCAD, and BOSL2.  These methods
exist already as OpenSCAD code. so a demonstration isn't needed to show the
possibilities. There are some very difficult questions about how to rotate
the cross sections as you move around the path, and yes, it's entirely
possible that you've gotten it wrong...assuming that you can figure out
what "wrong" means.  It's not clear.  There was a very long thread on the
forum many years ago about the various complications.  I implemented
several different algorithms in BOSL2 for choosing how to line up the
sections.  You might want to take a look to get more understanding of the
issues.

https://github.com/revarbat/BOSL2/wiki/skin.scad#functionmodule-path_sweep

On Thu, Jan 26, 2023 at 11:26 AM Guenther Sohler <
guenther.sohler@gmail.com> wrote:

Hi List,

right now i am attempting to add a path_extrude function to openscad
A demonstration what i am talking about is here:

https://youtu.be/igMupYGvX1s

(sorry, its in python, but still i hope you get the idea. )
This shows an arbitrary path_extrude of a square,
but in the video you can clearly see the triangles in the faces,
so i believe the cross section at the joints is not correct.
IMHO the square must turn to a deltoid especially when the base square
is rotated by 45 degrees to be correct.
Can anybody shade some light on that for me ?


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


OpenSCAD mailing list
To unsubscribe send an email to discuss-leave@lists.openscad.org

I agree with Sanjeev that it's better to focus on the case of points close together. The problem is that some of the approaches are difficult to define, or simply won't work, if you have the points on the path very discrete and far apart. You need to compute tangent and normal to the path, so how do you do that at corners on a path with very few points? There may be end effects in this computation, which will be more of a nuisance if you have only four points. One of the obvious algorithms for choosing the rotation of the sections relies on the path points being close together and may produce bizarre results when they are too far apart. On Fri, Jan 27, 2023 at 4:39 AM Guenther Sohler <guenther.sohler@gmail.com> wrote: > Adrian, > Thank you for the hint and the direct link. > I am happy to compare my implementation against yours to see where are the > differences. > > > Sanjeer, Thank you for your input. > Your output looks very impressive and I want to reach that too. > Personally I believe the challenge is to get it correct with very few > points first. > The error will be much more clearly visible when choosing few points. > Finally, using many points to make it look smooth is just exercise. > Probably > spline and many other functions are viable. > Maybe its also there in BOSL2, will check later. > > Thank you for your answers! > > > > > On Thu, Jan 26, 2023 at 10:50 PM Adrian Mariano <avm4@cornell.edu> wrote: > >> Guenther, I'm a little unsure of your goal here. If you are excited to >> implement path_sweep for the fun of it that's fine, of course, but this has >> been done before by many people in OpenSCAD, starting with >> list-comprehension-demos and also in dotSCAD, and BOSL2. These methods >> exist already as OpenSCAD code. so a demonstration isn't needed to show the >> possibilities. There are some very difficult questions about how to rotate >> the cross sections as you move around the path, and yes, it's entirely >> possible that you've gotten it wrong...assuming that you can figure out >> what "wrong" means. It's not clear. There was a very long thread on the >> forum many years ago about the various complications. I implemented >> several different algorithms in BOSL2 for choosing how to line up the >> sections. You might want to take a look to get more understanding of the >> issues. >> >> https://github.com/revarbat/BOSL2/wiki/skin.scad#functionmodule-path_sweep >> >> >> On Thu, Jan 26, 2023 at 11:26 AM Guenther Sohler < >> guenther.sohler@gmail.com> wrote: >> >>> Hi List, >>> >>> right now i am attempting to add a path_extrude function to openscad >>> A demonstration what i am talking about is here: >>> >>> https://youtu.be/igMupYGvX1s >>> >>> (sorry, its in python, but still i hope you get the idea. ) >>> This shows an arbitrary path_extrude of a square, >>> but in the video you can clearly see the triangles in the faces, >>> so i believe the cross section at the joints is not correct. >>> IMHO the square must turn to a deltoid especially when the base square >>> is rotated by 45 degrees to be correct. >>> Can anybody shade some light on that for me ? >>> >>> >>> _______________________________________________ >>> 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 >> > _______________________________________________ > OpenSCAD mailing list > To unsubscribe send an email to discuss-leave@lists.openscad.org >
RW
Rogier Wolff
Fri, Jan 27, 2023 12:07 PM

FYI,

Freya Holmer worked on defining a "normal" or "reference" vector along
a path recently. She works in "gaming", so she has built what she
found out into some library that she is making. So for those wishing
to delve into that, it probably pays to watch her videos on youtube
and then delve into figuring out if she has published the code.

That said, she's interested in fluid curves and motions. So all her
"paths" are neat splines....

Roger. 

On Fri, Jan 27, 2023 at 06:43:11AM -0500, Adrian Mariano wrote:

I agree with Sanjeev that it's better to focus on the case of points close
together.  The problem is that some of the approaches are difficult to
define, or simply won't work, if you have the points on the path very
discrete and far apart.  You need to compute tangent and normal to the
path, so how do you do that at corners on a path with very few points?
There may be end effects in this computation, which will be more of a
nuisance if you have only four points.  One of the obvious algorithms for
choosing the rotation of the sections relies on the path points being close
together and may produce bizarre results when they are too far apart.

On Fri, Jan 27, 2023 at 4:39 AM Guenther Sohler guenther.sohler@gmail.com
wrote:

Adrian,
Thank you for the hint and the direct link.
I am happy to compare my implementation against yours to see where are the
differences.

Sanjeer, Thank you for your input.
Your output looks very impressive and I want to reach that too.
Personally I believe the challenge is to get it correct with very few
points first.
The error will be much more clearly visible when choosing few points.
Finally, using many points to make it look smooth is just exercise.
Probably
spline and many other functions are viable.
Maybe its also there in BOSL2, will check later.

Thank you for your answers!

On Thu, Jan 26, 2023 at 10:50 PM Adrian Mariano avm4@cornell.edu wrote:

Guenther, I'm a little unsure of your goal here.  If you are excited to
implement path_sweep for the fun of it that's fine, of course, but this has
been done before by many people in OpenSCAD, starting with
list-comprehension-demos and also in dotSCAD, and BOSL2.  These methods
exist already as OpenSCAD code. so a demonstration isn't needed to show the
possibilities. There are some very difficult questions about how to rotate
the cross sections as you move around the path, and yes, it's entirely
possible that you've gotten it wrong...assuming that you can figure out
what "wrong" means.  It's not clear.  There was a very long thread on the
forum many years ago about the various complications.  I implemented
several different algorithms in BOSL2 for choosing how to line up the
sections.  You might want to take a look to get more understanding of the
issues.

https://github.com/revarbat/BOSL2/wiki/skin.scad#functionmodule-path_sweep

On Thu, Jan 26, 2023 at 11:26 AM Guenther Sohler <
guenther.sohler@gmail.com> wrote:

Hi List,

right now i am attempting to add a path_extrude function to openscad
A demonstration what i am talking about is here:

https://youtu.be/igMupYGvX1s

(sorry, its in python, but still i hope you get the idea. )
This shows an arbitrary path_extrude of a square,
but in the video you can clearly see the triangles in the faces,
so i believe the cross section at the joints is not correct.
IMHO the square must turn to a deltoid especially when the base square
is rotated by 45 degrees to be correct.
Can anybody shade some light on that for me ?


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


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

--
** 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.

FYI, Freya Holmer worked on defining a "normal" or "reference" vector along a path recently. She works in "gaming", so she has built what she found out into some library that she is making. So for those wishing to delve into that, it probably pays to watch her videos on youtube and then delve into figuring out if she has published the code. That said, she's interested in fluid curves and motions. So all her "paths" are neat splines.... Roger. On Fri, Jan 27, 2023 at 06:43:11AM -0500, Adrian Mariano wrote: > I agree with Sanjeev that it's better to focus on the case of points close > together. The problem is that some of the approaches are difficult to > define, or simply won't work, if you have the points on the path very > discrete and far apart. You need to compute tangent and normal to the > path, so how do you do that at corners on a path with very few points? > There may be end effects in this computation, which will be more of a > nuisance if you have only four points. One of the obvious algorithms for > choosing the rotation of the sections relies on the path points being close > together and may produce bizarre results when they are too far apart. > > On Fri, Jan 27, 2023 at 4:39 AM Guenther Sohler <guenther.sohler@gmail.com> > wrote: > > > Adrian, > > Thank you for the hint and the direct link. > > I am happy to compare my implementation against yours to see where are the > > differences. > > > > > > Sanjeer, Thank you for your input. > > Your output looks very impressive and I want to reach that too. > > Personally I believe the challenge is to get it correct with very few > > points first. > > The error will be much more clearly visible when choosing few points. > > Finally, using many points to make it look smooth is just exercise. > > Probably > > spline and many other functions are viable. > > Maybe its also there in BOSL2, will check later. > > > > Thank you for your answers! > > > > > > > > > > On Thu, Jan 26, 2023 at 10:50 PM Adrian Mariano <avm4@cornell.edu> wrote: > > > >> Guenther, I'm a little unsure of your goal here. If you are excited to > >> implement path_sweep for the fun of it that's fine, of course, but this has > >> been done before by many people in OpenSCAD, starting with > >> list-comprehension-demos and also in dotSCAD, and BOSL2. These methods > >> exist already as OpenSCAD code. so a demonstration isn't needed to show the > >> possibilities. There are some very difficult questions about how to rotate > >> the cross sections as you move around the path, and yes, it's entirely > >> possible that you've gotten it wrong...assuming that you can figure out > >> what "wrong" means. It's not clear. There was a very long thread on the > >> forum many years ago about the various complications. I implemented > >> several different algorithms in BOSL2 for choosing how to line up the > >> sections. You might want to take a look to get more understanding of the > >> issues. > >> > >> https://github.com/revarbat/BOSL2/wiki/skin.scad#functionmodule-path_sweep > >> > >> > >> On Thu, Jan 26, 2023 at 11:26 AM Guenther Sohler < > >> guenther.sohler@gmail.com> wrote: > >> > >>> Hi List, > >>> > >>> right now i am attempting to add a path_extrude function to openscad > >>> A demonstration what i am talking about is here: > >>> > >>> https://youtu.be/igMupYGvX1s > >>> > >>> (sorry, its in python, but still i hope you get the idea. ) > >>> This shows an arbitrary path_extrude of a square, > >>> but in the video you can clearly see the triangles in the faces, > >>> so i believe the cross section at the joints is not correct. > >>> IMHO the square must turn to a deltoid especially when the base square > >>> is rotated by 45 degrees to be correct. > >>> Can anybody shade some light on that for me ? > >>> > >>> > >>> _______________________________________________ > >>> 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 > >> > > _______________________________________________ > > 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 -- ** 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.
TP
Torsten Paul
Fri, Jan 27, 2023 8:03 PM

On 27.01.23 13:07, Rogier Wolff wrote:

figuring out if she has published the code.

https://github.com/FreyaHolmer/Mathfs

It's C# for Unity though.

ciao,
Torsten.

On 27.01.23 13:07, Rogier Wolff wrote: > figuring out if she has published the code. https://github.com/FreyaHolmer/Mathfs It's C# for Unity though. ciao, Torsten.
GS
Guenther Sohler
Fri, Jan 27, 2023 8:37 PM

Hi Adrian,
There are many great effects, which you can achieve when  having the points
of the path wide enough apart.
Of course The Tangent and the normals (but especially the angle between x
and y axis) need be correct, but then it looks really cool.
With my approach I can easily immitate your solution by using many points
close together and skip the axis scaling(maybe worth an option)
My Vision and my approach which I have chosen actually came true.

https://www.youtube.com/watch?v=1m5OeK2lW4U

if  it's too different from BOSL extrude maybe we can choose another name .

On Fri, Jan 27, 2023 at 1:08 PM Rogier Wolff R.E.Wolff@bitwizard.nl wrote:

FYI,

Freya Holmer worked on defining a "normal" or "reference" vector along
a path recently. She works in "gaming", so she has built what she
found out into some library that she is making. So for those wishing
to delve into that, it probably pays to watch her videos on youtube
and then delve into figuring out if she has published the code.

That said, she's interested in fluid curves and motions. So all her
"paths" are neat splines....

     Roger.

On Fri, Jan 27, 2023 at 06:43:11AM -0500, Adrian Mariano wrote:

I agree with Sanjeev that it's better to focus on the case of points

close

together.  The problem is that some of the approaches are difficult to
define, or simply won't work, if you have the points on the path very
discrete and far apart.  You need to compute tangent and normal to the
path, so how do you do that at corners on a path with very few points?
There may be end effects in this computation, which will be more of a
nuisance if you have only four points.  One of the obvious algorithms

for

choosing the rotation of the sections relies on the path points being

close

together and may produce bizarre results when they are too far apart.

On Fri, Jan 27, 2023 at 4:39 AM Guenther Sohler <

wrote:

Adrian,
Thank you for the hint and the direct link.
I am happy to compare my implementation against yours to see where are

the

differences.

Sanjeer, Thank you for your input.
Your output looks very impressive and I want to reach that too.
Personally I believe the challenge is to get it correct with very few
points first.
The error will be much more clearly visible when choosing few points.
Finally, using many points to make it look smooth is just exercise.
Probably
spline and many other functions are viable.
Maybe its also there in BOSL2, will check later.

Thank you for your answers!

On Thu, Jan 26, 2023 at 10:50 PM Adrian Mariano avm4@cornell.edu

wrote:

Guenther, I'm a little unsure of your goal here.  If you are excited

to

implement path_sweep for the fun of it that's fine, of course, but

this has

been done before by many people in OpenSCAD, starting with
list-comprehension-demos and also in dotSCAD, and BOSL2.  These

methods

exist already as OpenSCAD code. so a demonstration isn't needed to

show the

possibilities. There are some very difficult questions about how to

rotate

the cross sections as you move around the path, and yes, it's entirely
possible that you've gotten it wrong...assuming that you can figure

out

what "wrong" means.  It's not clear.  There was a very long thread on

the

forum many years ago about the various complications.  I implemented
several different algorithms in BOSL2 for choosing how to line up the
sections.  You might want to take a look to get more understanding of

the

issues.

On Thu, Jan 26, 2023 at 11:26 AM Guenther Sohler <
guenther.sohler@gmail.com> wrote:

Hi List,

right now i am attempting to add a path_extrude function to openscad
A demonstration what i am talking about is here:

https://youtu.be/igMupYGvX1s

(sorry, its in python, but still i hope you get the idea. )
This shows an arbitrary path_extrude of a square,
but in the video you can clearly see the triangles in the faces,
so i believe the cross section at the joints is not correct.
IMHO the square must turn to a deltoid especially when the base

square

is rotated by 45 degrees to be correct.
Can anybody shade some light on that for me ?


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


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

--
** 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.


OpenSCAD mailing list
To unsubscribe send an email to discuss-leave@lists.openscad.org

Hi Adrian, There are many great effects, which you can achieve when having the points of the path wide enough apart. Of course The Tangent and the normals (but especially the angle between x and y axis) need be correct, but then it looks really cool. With my approach I can easily immitate your solution by using many points close together and skip the axis scaling(maybe worth an option) My Vision and my approach which I have chosen actually came true. https://www.youtube.com/watch?v=1m5OeK2lW4U if it's too different from BOSL extrude maybe we can choose another name . On Fri, Jan 27, 2023 at 1:08 PM Rogier Wolff <R.E.Wolff@bitwizard.nl> wrote: > > FYI, > > Freya Holmer worked on defining a "normal" or "reference" vector along > a path recently. She works in "gaming", so she has built what she > found out into some library that she is making. So for those wishing > to delve into that, it probably pays to watch her videos on youtube > and then delve into figuring out if she has published the code. > > That said, she's interested in fluid curves and motions. So all her > "paths" are neat splines.... > > Roger. > > On Fri, Jan 27, 2023 at 06:43:11AM -0500, Adrian Mariano wrote: > > I agree with Sanjeev that it's better to focus on the case of points > close > > together. The problem is that some of the approaches are difficult to > > define, or simply won't work, if you have the points on the path very > > discrete and far apart. You need to compute tangent and normal to the > > path, so how do you do that at corners on a path with very few points? > > There may be end effects in this computation, which will be more of a > > nuisance if you have only four points. One of the obvious algorithms > for > > choosing the rotation of the sections relies on the path points being > close > > together and may produce bizarre results when they are too far apart. > > > > On Fri, Jan 27, 2023 at 4:39 AM Guenther Sohler < > guenther.sohler@gmail.com> > > wrote: > > > > > Adrian, > > > Thank you for the hint and the direct link. > > > I am happy to compare my implementation against yours to see where are > the > > > differences. > > > > > > > > > Sanjeer, Thank you for your input. > > > Your output looks very impressive and I want to reach that too. > > > Personally I believe the challenge is to get it correct with very few > > > points first. > > > The error will be much more clearly visible when choosing few points. > > > Finally, using many points to make it look smooth is just exercise. > > > Probably > > > spline and many other functions are viable. > > > Maybe its also there in BOSL2, will check later. > > > > > > Thank you for your answers! > > > > > > > > > > > > > > > On Thu, Jan 26, 2023 at 10:50 PM Adrian Mariano <avm4@cornell.edu> > wrote: > > > > > >> Guenther, I'm a little unsure of your goal here. If you are excited > to > > >> implement path_sweep for the fun of it that's fine, of course, but > this has > > >> been done before by many people in OpenSCAD, starting with > > >> list-comprehension-demos and also in dotSCAD, and BOSL2. These > methods > > >> exist already as OpenSCAD code. so a demonstration isn't needed to > show the > > >> possibilities. There are some very difficult questions about how to > rotate > > >> the cross sections as you move around the path, and yes, it's entirely > > >> possible that you've gotten it wrong...assuming that you can figure > out > > >> what "wrong" means. It's not clear. There was a very long thread on > the > > >> forum many years ago about the various complications. I implemented > > >> several different algorithms in BOSL2 for choosing how to line up the > > >> sections. You might want to take a look to get more understanding of > the > > >> issues. > > >> > > >> > https://github.com/revarbat/BOSL2/wiki/skin.scad#functionmodule-path_sweep > > >> > > >> > > >> On Thu, Jan 26, 2023 at 11:26 AM Guenther Sohler < > > >> guenther.sohler@gmail.com> wrote: > > >> > > >>> Hi List, > > >>> > > >>> right now i am attempting to add a path_extrude function to openscad > > >>> A demonstration what i am talking about is here: > > >>> > > >>> https://youtu.be/igMupYGvX1s > > >>> > > >>> (sorry, its in python, but still i hope you get the idea. ) > > >>> This shows an arbitrary path_extrude of a square, > > >>> but in the video you can clearly see the triangles in the faces, > > >>> so i believe the cross section at the joints is not correct. > > >>> IMHO the square must turn to a deltoid especially when the base > square > > >>> is rotated by 45 degrees to be correct. > > >>> Can anybody shade some light on that for me ? > > >>> > > >>> > > >>> _______________________________________________ > > >>> 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 > > >> > > > _______________________________________________ > > > 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 > > > -- > ** 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. > _______________________________________________ > OpenSCAD mailing list > To unsubscribe send an email to discuss-leave@lists.openscad.org >
AM
Adrian Mariano
Fri, Jan 27, 2023 9:25 PM

I can't find anything Freya Holmer did on this topic.  Can you give a
specific reference?  It didn't appear that the code addressed this topic,
and in any case, reading code is not the best way to learn the method.

On Fri, Jan 27, 2023 at 3:05 PM Torsten Paul Torsten.Paul@gmx.de wrote:

On 27.01.23 13:07, Rogier Wolff wrote:

figuring out if she has published the code.

https://github.com/FreyaHolmer/Mathfs

It's C# for Unity though.

ciao,
Torsten.


OpenSCAD mailing list
To unsubscribe send an email to discuss-leave@lists.openscad.org

I can't find anything Freya Holmer did on this topic. Can you give a specific reference? It didn't appear that the code addressed this topic, and in any case, reading code is not the best way to learn the method. On Fri, Jan 27, 2023 at 3:05 PM Torsten Paul <Torsten.Paul@gmx.de> wrote: > On 27.01.23 13:07, Rogier Wolff wrote: > > figuring out if she has published the code. > > https://github.com/FreyaHolmer/Mathfs > > It's C# for Unity though. > > ciao, > Torsten. > _______________________________________________ > OpenSCAD mailing list > To unsubscribe send an email to discuss-leave@lists.openscad.org >