discuss@lists.openscad.org

OpenSCAD general discussion Mailing-list

View all threads

Export Stl. File module

MP
Marijan Pollak
Mon, Jan 2, 2017 10:59 PM

Hi, MichaelAtOz, I do not doubt what You write that there are people here
with exceptional skills.
I would say however that any program should be as suitable for everyone as
it can be, as it has
to help user, not make his life complicated.
We say in my country "Ignorance is not knowing anything better exist".
I would also hold it true that such community is founded to clear up Bugs
and further develop
Open SCAD. I may write "Language to language translator" just to be able to
program things
normally  and strictly as required for punctuation of OPEN SCAD, which
would eliminate lot of
unintential errors and save me lot of precious TIME.
This would help only me, so why would not someone change it for everybody?
On the other hand, it is perhaps too late as thousands of examples are
writen  that would need
rewritting and there are many users adjusted to such upside down logic that
would find it hard
to adjust to change. Since I have find OPEN SCAD by finding usefull
examples, I have to stick
with that is there.
I thank You for all help You are providing, but if I as one new to SCAD get
example that do not
work, how can I make it work? I program 37+ years but I am not young any
more, am half blind
so it is hard to find all those parentheses  on keyboard because they are
seldom needed any
where else, and they are in group of keys with several characters on them,
so making mistake
is easy. I would return favours by posting all examples that were not
working for me, once I make
them work. As person with lifelong experience  in programming, I would try
to advise You abot
good practices in Programming, if You and others would care to listen.
So every example has to be fully commented, as even author may not
recognize it after some
time pases. Next it has to be fully tested to do all what it has to do. If
possible some examples
of use should be included.
I suppose main Goal of this group is to enable everyone to design 3D
objects, not to spend time
chasing their own and somebody else's Bugs..................

Mon, Jan 2, 2017 at 10:09 PM, MichaelAtOz [via OpenSCAD] <
ml-node+s1091067n19855h11@n5.nabble.com> wrote:

There are many professional programmers here with exceptional skills.

Perhaps OpenSCAD is not suitable for you.

*Admin - PM me if you need anything, *
or if I've done something stupid...

Unless specifically shown otherwise above, my contribution is in the
Public Domain; to the extent possible under law, I have waived all
copyright and related or neighbouring rights to this work.
Obviously inclusion of works of previous authors is not included in the
above.

The TPP is no simple “trade agreement.” Fight it!
http://www.ourfairdeal.org/ time is running out!


If you reply to this email, your message will be added to the discussion
below:
http://forum.openscad.org/Export-Stl-File-module-tp19829p19855.html
To unsubscribe from Export Stl. File module, click here
http://forum.openscad.org/template/NamlServlet.jtp?macro=unsubscribe_by_code&node=19829&code=b2Jlcm9ubXBAZ21haWwuY29tfDE5ODI5fC00Mzg5MzYyNzk=
.
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

--
Regards from Croatia, the Homeland of one of greatest inventors from 19th
and 20th Centuries, Engineer Nikola Tesla!

--
View this message in context: http://forum.openscad.org/Export-Stl-File-module-tp19829p19866.html
Sent from the OpenSCAD mailing list archive at Nabble.com.

Hi, MichaelAtOz, I do not doubt what You write that there are people here with exceptional skills. I would say however that any program should be as suitable for everyone as it can be, as it has to help user, not make his life complicated. We say in my country "Ignorance is not knowing anything better exist". I would also hold it true that such community is founded to clear up Bugs and further develop Open SCAD. I may write "Language to language translator" just to be able to program things normally and strictly as required for punctuation of OPEN SCAD, which would eliminate lot of unintential errors and save me lot of precious TIME. This would help only me, so why would not someone change it for everybody? On the other hand, it is perhaps too late as thousands of examples are writen that would need rewritting and there are many users adjusted to such upside down logic that would find it hard to adjust to change. Since I have find OPEN SCAD by finding usefull examples, I have to stick with that is there. I thank You for all help You are providing, but if I as one new to SCAD get example that do not work, how can I make it work? I program 37+ years but I am not young any more, am half blind so it is hard to find all those parentheses on keyboard because they are seldom needed any where else, and they are in group of keys with several characters on them, so making mistake is easy. I would return favours by posting all examples that were not working for me, once I make them work. As person with lifelong experience in programming, I would try to advise You abot good practices in Programming, if You and others would care to listen. So every example has to be fully commented, as even author may not recognize it after some time pases. Next it has to be fully tested to do all what it has to do. If possible some examples of use should be included. I suppose main Goal of this group is to enable everyone to design 3D objects, not to spend time chasing their own and somebody else's Bugs.................. Mon, Jan 2, 2017 at 10:09 PM, MichaelAtOz [via OpenSCAD] < ml-node+s1091067n19855h11@n5.nabble.com> wrote: > There are many professional programmers here with exceptional skills. > > Perhaps OpenSCAD is not suitable for you. > > > > *Admin - PM me if you need anything, * > or if I've done something stupid... > > Unless specifically shown otherwise above, my contribution is in the > Public Domain; to the extent possible under law, I have waived all > copyright and related or neighbouring rights to this work. > Obviously inclusion of works of previous authors is not included in the > above. > > The *TPP* is no simple *“trade agreement.”* *Fight it!* > http://www.ourfairdeal.org/ *time is running out!* > > > ------------------------------ > If you reply to this email, your message will be added to the discussion > below: > http://forum.openscad.org/Export-Stl-File-module-tp19829p19855.html > To unsubscribe from Export Stl. File module, click here > <http://forum.openscad.org/template/NamlServlet.jtp?macro=unsubscribe_by_code&node=19829&code=b2Jlcm9ubXBAZ21haWwuY29tfDE5ODI5fC00Mzg5MzYyNzk=> > . > 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> > -- Regards from Croatia, the Homeland of one of greatest inventors from 19th and 20th Centuries, Engineer Nikola Tesla! -- View this message in context: http://forum.openscad.org/Export-Stl-File-module-tp19829p19866.html Sent from the OpenSCAD mailing list archive at Nabble.com.
MP
Marijan Pollak
Mon, Jan 2, 2017 11:25 PM

Hi, Mark, I have program in GFA 32 BASIC tht is drawing this 2D contour, so
in one hand I can adjust it
to do same in OPEN SCAD, using 2D primitives, as I want to "Rotate extrude"
it, which I guess cannot
be done if I build it from 3D primitives.
On the other hand, this is just ONE of handfull of new turbinesthat are all
different by look, so to be able
to produce various sizes automatically using Radius, whenever it is
necesarry.
As such turbines are meant to replace old and barely effective standard
tubines which would require
differnt interfaces. I have done this with 3D MAX with 3D primitives, but
I need to work precisely.
Have many ideas but they all have to be done fast, before they evaporate
from my head.
So thanks again for helping, just do not assume that I know nothing about
programming, only OPEN
SCAD is new to me.

On Mon, Jan 2, 2017 at 10:24 PM, Mark Schafer mschafer@wireframe.biz
wrote:

I'm reluctant to suggest this but if you have a flat shape you want to
extrude then consider drawing the shape in inkscape and using the export to
openscad extension. here: http://www.thingiverse.com/thing:1065500

However this will only give you an extruded 2D cutout. Its possible you
want some kind of curved 3 dimensional shape.


OpenSCAD mailing list
Discuss@lists.openscad.org
http://lists.openscad.org/mailman/listinfo/discuss_lists.openscad.org

--
Regards from Croatia, the Homeland of one of greatest inventors from 19th
and 20th Centuries, Engineer Nikola Tesla!

Hi, Mark, I have program in GFA 32 BASIC tht is drawing this 2D contour, so in one hand I can adjust it to do same in OPEN SCAD, using 2D primitives, as I want to "Rotate extrude" it, which I guess cannot be done if I build it from 3D primitives. On the other hand, this is just ONE of handfull of new turbinesthat are all different by look, so to be able to produce various sizes automatically using Radius, whenever it is necesarry. As such turbines are meant to replace old and barely effective standard tubines which would require differnt interfaces. I have done this with 3D MAX with 3D primitives, but I need to work precisely. Have many ideas but they all have to be done fast, before they evaporate from my head. So thanks again for helping, just do not assume that I know nothing about programming, only OPEN SCAD is new to me. On Mon, Jan 2, 2017 at 10:24 PM, Mark Schafer <mschafer@wireframe.biz> wrote: > I'm reluctant to suggest this but if you have a flat shape you want to > extrude then consider drawing the shape in inkscape and using the export to > openscad extension. here: http://www.thingiverse.com/thing:1065500 > > However this will only give you an extruded 2D cutout. Its possible you > want some kind of curved 3 dimensional shape. > > > > _______________________________________________ > OpenSCAD mailing list > Discuss@lists.openscad.org > http://lists.openscad.org/mailman/listinfo/discuss_lists.openscad.org > -- Regards from Croatia, the Homeland of one of greatest inventors from 19th and 20th Centuries, Engineer Nikola Tesla!
TP
Torsten Paul
Mon, Jan 2, 2017 11:52 PM

On 01/02/2017 11:59 PM, Marijan Pollak wrote:

So every example has to be fully commented, as even
author may not recognize it after some time pases.
Next it has to be fully tested to do all what it has
to do. If possible some examples of use should be
included.

Yes, I totally agree. We don't have a very exhaustive
"official" tutorial yet (there are some good ones linked
from the main web site).
Not long ago, we did start a collection of code snippets
as examples for specific topics.

https://en.wikibooks.org/wiki/OpenSCAD_User_Manual/Tips_and_Tricks

It's still a bit random, but if you have a list of
short topics, feel free to post the list. Maybe we
can come up with example code for some or even all
and add them to the tips&tricks page.

ciao,
Torsten.

On 01/02/2017 11:59 PM, Marijan Pollak wrote: > So every example has to be fully commented, as even > author may not recognize it after some time pases. > Next it has to be fully tested to do all what it has > to do. If possible some examples of use should be > included. > Yes, I totally agree. We don't have a very exhaustive "official" tutorial yet (there are some good ones linked from the main web site). Not long ago, we did start a collection of code snippets as examples for specific topics. https://en.wikibooks.org/wiki/OpenSCAD_User_Manual/Tips_and_Tricks It's still a bit random, but if you have a list of short topics, feel free to post the list. Maybe we can come up with example code for some or even all and add them to the tips&tricks page. ciao, Torsten.
MP
Marijan Pollak
Mon, Jan 2, 2017 11:55 PM

Thanks, I assumed so. I must check this PoliHedron forming as I would be
able ti create necesary 3D shapes directly by program.
I wonder if this would be more complex or more simple objects than ones
made by series of joining and subtracting  3D primitives.
In any case I can do it if I have correctly working examples that I can
modify to suit my plans.

On Mon, Jan 2, 2017 at 11:27 PM, Ronaldo [via OpenSCAD] <
ml-node+s1091067n19863h59@n5.nabble.com> wrote:

Marijan Pollak wrote
Dear Sir, 1st. I ment to construct whole 3D object using Points.
Next my question was that once I "Extrude" 2D draving.I do not
know if I can then add to it 3D primitives, or I have to save it as .stl
file
and then import into program that would treat it as any other 3D
object, as I saw somewhere comment that someone should not do
Extrude and use 3D objects, or cannot Extrude 3D object, which is
logical.
I also asked if Points are pairs of coordinates or each is one in line.
ThankYou for clarifying that 2D cannot be constructed in SCAD as
ther are no 2D primitives..............

There is 2D primitives in OpenSCAD. I am sorry to have given a wrong
answer before. Circle, square, polygon and text are the only 2D primitives.
There is no 1D primitives though. 2D primitives may be operated (boolean,
minkowski or hull) to get more general 2D shapes.

If you linear_extrude or rotate_extrude a 2D shape you get a 3D model that
can be operated with other 3D models. You don't need to save an stl file
and import it to do it. You cannot mix a 2D shape and a 3D model in any
boolean or minkowski or hull operators. There is no extrusion operator for
3D models. You cannot render a mix of 2D and 3D models.

To build 2D polygons you use 2D points (two coordinates). Polyhedron()
requires 3D points.

OpenSCAD CheatSheet and the Manual are invaluable sources.


If you reply to this email, your message will be added to the discussion
below:
http://forum.openscad.org/Export-Stl-File-module-tp19829p19863.html
To unsubscribe from Export Stl. File module, click here
http://forum.openscad.org/template/NamlServlet.jtp?macro=unsubscribe_by_code&node=19829&code=b2Jlcm9ubXBAZ21haWwuY29tfDE5ODI5fC00Mzg5MzYyNzk=
.
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

--
Regards from Croatia, the Homeland of one of greatest inventors from 19th
and 20th Centuries, Engineer Nikola Tesla!

--
View this message in context: http://forum.openscad.org/Export-Stl-File-module-tp19829p19869.html
Sent from the OpenSCAD mailing list archive at Nabble.com.

Thanks, I assumed so. I must check this PoliHedron forming as I would be able ti create necesary 3D shapes directly by program. I wonder if this would be more complex or more simple objects than ones made by series of joining and subtracting 3D primitives. In any case I can do it if I have correctly working examples that I can modify to suit my plans. On Mon, Jan 2, 2017 at 11:27 PM, Ronaldo [via OpenSCAD] < ml-node+s1091067n19863h59@n5.nabble.com> wrote: > Marijan Pollak wrote > Dear Sir, 1st. I ment to construct whole 3D object using Points. > Next my question was that once I "Extrude" 2D draving.I do not > know if I can then add to it 3D primitives, or I have to save it as .stl > file > and then import into program that would treat it as any other 3D > object, as I saw somewhere comment that someone should not do > Extrude and use 3D objects, or cannot Extrude 3D object, which is > logical. > I also asked if Points are pairs of coordinates or each is one in line. > ThankYou for clarifying that 2D cannot be constructed in SCAD as > ther are no 2D primitives.............. > > There is 2D primitives in OpenSCAD. I am sorry to have given a wrong > answer before. Circle, square, polygon and text are the only 2D primitives. > There is no 1D primitives though. 2D primitives may be operated (boolean, > minkowski or hull) to get more general 2D shapes. > > If you linear_extrude or rotate_extrude a 2D shape you get a 3D model that > can be operated with other 3D models. You don't need to save an stl file > and import it to do it. You cannot mix a 2D shape and a 3D model in any > boolean or minkowski or hull operators. There is no extrusion operator for > 3D models. You cannot render a mix of 2D and 3D models. > > To build 2D polygons you use 2D points (two coordinates). Polyhedron() > requires 3D points. > > OpenSCAD CheatSheet and the Manual are invaluable sources. > > ------------------------------ > If you reply to this email, your message will be added to the discussion > below: > http://forum.openscad.org/Export-Stl-File-module-tp19829p19863.html > To unsubscribe from Export Stl. File module, click here > <http://forum.openscad.org/template/NamlServlet.jtp?macro=unsubscribe_by_code&node=19829&code=b2Jlcm9ubXBAZ21haWwuY29tfDE5ODI5fC00Mzg5MzYyNzk=> > . > 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> > -- Regards from Croatia, the Homeland of one of greatest inventors from 19th and 20th Centuries, Engineer Nikola Tesla! -- View this message in context: http://forum.openscad.org/Export-Stl-File-module-tp19829p19869.html Sent from the OpenSCAD mailing list archive at Nabble.com.
MP
Marijan Pollak
Tue, Jan 3, 2017 12:22 AM

I shall do what I can, to best  of my abilities.
Can You tell me where I can find Source code of that OPEN SCAD
editor?
It would not be necesary if after cutting  one side I can rotate and cut
the rest.
I just do not know how to separate cut pieces and export just one that is
ready
for 3D printing. I found out how to delete one of cut parts by accident,
but in
some cases of huge sized pieces I would prefer if I can cut everything,
export
it all and then separate just 1/3 of pieces as other 2/3 is same.
However it would be usefull sometimes to be able to pick some cut pieces and
rejoin them. I.E. I have cone in center of turbine, which in case I cut
turbine
across the center, would be cut in many pieces, Then in case I cut out
center
using cylinder, it would be usefull to be able to put it together back as
it was.
Of course it is possible to make Module which would redraw center or even
use it as "Knife"  to cut out centerpiece, or I have to cutt this first and
save.
By the way, do You know best size of "kerf" so pieces could be joined
strongly
after 3D printing, but not be impossible to do so?

On Tue, Jan 3, 2017 at 12:52 AM, Torsten Paul Torsten.Paul@gmx.de wrote:

On 01/02/2017 11:59 PM, Marijan Pollak wrote:

So every example has to be fully commented, as even
author may not recognize it after some time pases.
Next it has to be fully tested to do all what it has
to do. If possible some examples of use should be
included.

Yes, I totally agree. We don't have a very exhaustive
"official" tutorial yet (there are some good ones linked
from the main web site).
Not long ago, we did start a collection of code snippets
as examples for specific topics.

https://en.wikibooks.org/wiki/OpenSCAD_User_Manual/Tips_and_Tricks

It's still a bit random, but if you have a list of
short topics, feel free to post the list. Maybe we
can come up with example code for some or even all
and add them to the tips&tricks page.

ciao,
Torsten.


OpenSCAD mailing list
Discuss@lists.openscad.org
http://lists.openscad.org/mailman/listinfo/discuss_lists.openscad.org

--
Regards from Croatia, the Homeland of one of greatest inventors from 19th
and 20th Centuries, Engineer Nikola Tesla!

I shall do what I can, to best of my abilities. Can You tell me where I can find Source code of that OPEN SCAD editor? It would not be necesary if after cutting one side I can rotate and cut the rest. I just do not know how to separate cut pieces and export just one that is ready for 3D printing. I found out how to delete one of cut parts by accident, but in some cases of huge sized pieces I would prefer if I can cut everything, export it all and then separate just 1/3 of pieces as other 2/3 is same. However it would be usefull sometimes to be able to pick some cut pieces and rejoin them. I.E. I have cone in center of turbine, which in case I cut turbine across the center, would be cut in many pieces, Then in case I cut out center using cylinder, it would be usefull to be able to put it together back as it was. Of course it is possible to make Module which would redraw center or even use it as "Knife" to cut out centerpiece, or I have to cutt this first and save. By the way, do You know best size of "kerf" so pieces could be joined strongly after 3D printing, but not be impossible to do so? On Tue, Jan 3, 2017 at 12:52 AM, Torsten Paul <Torsten.Paul@gmx.de> wrote: > On 01/02/2017 11:59 PM, Marijan Pollak wrote: > > So every example has to be fully commented, as even > > author may not recognize it after some time pases. > > Next it has to be fully tested to do all what it has > > to do. If possible some examples of use should be > > included. > > > Yes, I totally agree. We don't have a very exhaustive > "official" tutorial yet (there are some good ones linked > from the main web site). > Not long ago, we did start a collection of code snippets > as examples for specific topics. > > https://en.wikibooks.org/wiki/OpenSCAD_User_Manual/Tips_and_Tricks > > It's still a bit random, but if you have a list of > short topics, feel free to post the list. Maybe we > can come up with example code for some or even all > and add them to the tips&tricks page. > > ciao, > Torsten. > > > _______________________________________________ > OpenSCAD mailing list > Discuss@lists.openscad.org > http://lists.openscad.org/mailman/listinfo/discuss_lists.openscad.org > -- Regards from Croatia, the Homeland of one of greatest inventors from 19th and 20th Centuries, Engineer Nikola Tesla!
NH
nop head
Tue, Jan 3, 2017 12:42 AM

By the way, do You know best size of "kerf" so pieces could be joined

strongly after 3D printing, but not be impossible to do so?

On a correctly calibrated printer it is 0. That is what I use whenever I
join pieces together. The problem is most people tune their objects to
match the printer instead of getting their printer to print the correct
size.

The source code of the editor is here:
https://github.com/openscad/openscad/blob/master/src/scintillaeditor.cpp

On 3 January 2017 at 00:22, Marijan Pollak oberonmp@gmail.com wrote:

I shall do what I can, to best  of my abilities.
Can You tell me where I can find Source code of that OPEN SCAD
editor?
It would not be necesary if after cutting  one side I can rotate and cut
the rest.
I just do not know how to separate cut pieces and export just one that is
ready
for 3D printing. I found out how to delete one of cut parts by accident,
but in
some cases of huge sized pieces I would prefer if I can cut everything,
export
it all and then separate just 1/3 of pieces as other 2/3 is same.
However it would be usefull sometimes to be able to pick some cut pieces
and
rejoin them. I.E. I have cone in center of turbine, which in case I cut
turbine
across the center, would be cut in many pieces, Then in case I cut out
center
using cylinder, it would be usefull to be able to put it together back as
it was.
Of course it is possible to make Module which would redraw center or even
use it as "Knife"  to cut out centerpiece, or I have to cutt this first
and save.
By the way, do You know best size of "kerf" so pieces could be joined
strongly
after 3D printing, but not be impossible to do so?

On Tue, Jan 3, 2017 at 12:52 AM, Torsten Paul Torsten.Paul@gmx.de wrote:

On 01/02/2017 11:59 PM, Marijan Pollak wrote:

So every example has to be fully commented, as even
author may not recognize it after some time pases.
Next it has to be fully tested to do all what it has
to do. If possible some examples of use should be
included.

Yes, I totally agree. We don't have a very exhaustive
"official" tutorial yet (there are some good ones linked
from the main web site).
Not long ago, we did start a collection of code snippets
as examples for specific topics.

https://en.wikibooks.org/wiki/OpenSCAD_User_Manual/Tips_and_Tricks

It's still a bit random, but if you have a list of
short topics, feel free to post the list. Maybe we
can come up with example code for some or even all
and add them to the tips&tricks page.

ciao,
Torsten.


OpenSCAD mailing list
Discuss@lists.openscad.org
http://lists.openscad.org/mailman/listinfo/discuss_lists.openscad.org

--
Regards from Croatia, the Homeland of one of greatest inventors from 19th
and 20th Centuries, Engineer Nikola Tesla!


OpenSCAD mailing list
Discuss@lists.openscad.org
http://lists.openscad.org/mailman/listinfo/discuss_lists.openscad.org

>By the way, do You know best size of "kerf" so pieces could be joined strongly after 3D printing, but not be impossible to do so? On a correctly calibrated printer it is 0. That is what I use whenever I join pieces together. The problem is most people tune their objects to match the printer instead of getting their printer to print the correct size. The source code of the editor is here: https://github.com/openscad/openscad/blob/master/src/scintillaeditor.cpp On 3 January 2017 at 00:22, Marijan Pollak <oberonmp@gmail.com> wrote: > I shall do what I can, to best of my abilities. > Can You tell me where I can find Source code of that OPEN SCAD > editor? > It would not be necesary if after cutting one side I can rotate and cut > the rest. > I just do not know how to separate cut pieces and export just one that is > ready > for 3D printing. I found out how to delete one of cut parts by accident, > but in > some cases of huge sized pieces I would prefer if I can cut everything, > export > it all and then separate just 1/3 of pieces as other 2/3 is same. > However it would be usefull sometimes to be able to pick some cut pieces > and > rejoin them. I.E. I have cone in center of turbine, which in case I cut > turbine > across the center, would be cut in many pieces, Then in case I cut out > center > using cylinder, it would be usefull to be able to put it together back as > it was. > Of course it is possible to make Module which would redraw center or even > use it as "Knife" to cut out centerpiece, or I have to cutt this first > and save. > By the way, do You know best size of "kerf" so pieces could be joined > strongly > after 3D printing, but not be impossible to do so? > > On Tue, Jan 3, 2017 at 12:52 AM, Torsten Paul <Torsten.Paul@gmx.de> wrote: > >> On 01/02/2017 11:59 PM, Marijan Pollak wrote: >> > So every example has to be fully commented, as even >> > author may not recognize it after some time pases. >> > Next it has to be fully tested to do all what it has >> > to do. If possible some examples of use should be >> > included. >> > >> Yes, I totally agree. We don't have a very exhaustive >> "official" tutorial yet (there are some good ones linked >> from the main web site). >> Not long ago, we did start a collection of code snippets >> as examples for specific topics. >> >> https://en.wikibooks.org/wiki/OpenSCAD_User_Manual/Tips_and_Tricks >> >> It's still a bit random, but if you have a list of >> short topics, feel free to post the list. Maybe we >> can come up with example code for some or even all >> and add them to the tips&tricks page. >> >> ciao, >> Torsten. >> >> >> _______________________________________________ >> OpenSCAD mailing list >> Discuss@lists.openscad.org >> http://lists.openscad.org/mailman/listinfo/discuss_lists.openscad.org >> > > > > -- > Regards from Croatia, the Homeland of one of greatest inventors from 19th > and 20th Centuries, Engineer Nikola Tesla! > > _______________________________________________ > OpenSCAD mailing list > Discuss@lists.openscad.org > http://lists.openscad.org/mailman/listinfo/discuss_lists.openscad.org > >
MP
Marijan Pollak
Tue, Jan 3, 2017 12:46 AM

That is because in 26 Programming Languages I learned and used not single
one do not deviate
from execution in a way it is written, top down and branching.
I was also writting Compilers and Interpreters. Must be this came later
with Languages like ADA,
Python, Ruby and other, less known or specialized languages.

On Mon, Jan 2, 2017 at 9:37 PM, nop head nop.head@gmail.com wrote:

There is a large community of OpenSCAD users that have been using it for
many years and nobody but you thinks it is upside down.

There are no variables in OpenSCAD, just named constants, because it is a
language to describe an object and a description does not change over time.

On 2 January 2017 at 20:27, Marijan Pollak oberonmp@gmail.com wrote:

Dear Coleague,  So, my logic was correct in case of program execution,
so IMHO it would be more practicall that programmer write same way as
program execute. This way fewer mistakes would be made.
Also Imaga is Variable, not constant. it means "it is there" or "Object
exist"
and signal that there is file to be Imported and all previous work on
generating
Object can be skipped. Time saved is enormous, specially with very
complex
objects.
Since program execute oposite then it is written, I concluded I would
have to
write code converter to be able to follow standard logic of programming.
It would  be easier if someone change this so people drawing the Objects
would not have to adjust to way program generates Objects.
Programming is invented so they can help Programmers to write correct code
NOT that programmers should help Computer to do it upside down.
I do not know how such bug was not noted and made right.
that is Microsoft style of Programming and logic. "It is not a Bug, it is
a FEATURE"?

On Sun, Jan 1, 2017 at 7:18 PM, nophead [via OpenSCAD] <[hidden email]
http:///user/SendEmail.jtp?type=node&node=19851&i=0> wrote:

Firstly statements are not executed as such. They build a tree structure
of geometric primitives and boolean operations. The boolean operations can
be done in any order as long as the operands (which are lower branches in
the tree) have been computed first. So yes things on the right are lower
nodes on the tree and must be computed first. And yes, compound statements
like union() that can span many lines will compute all the things lower in
the tree before the union is computed.

Secondly, OpenSCAD has lexical scope, very much the same as C, so a
variable (which are actually named constants) defined in one module cannot
be accessed in a another. But you can define constants at file level scope,
so if you move imaga=1 outside the Cuts module it will be accessible in
osnova. Or you can declare it as a parameter of osnova and pass it each
time you call it.

On 1 January 2017 at 17:25, Marijan Pollak <[hidden email]
http:///user/SendEmail.jtp?type=node&node=19834&i=0> wrote:

Hi, I did not know the difference exist. It may be true that it is
parsed top to bottom, but somehow I
found that what is on the bottom of Module is executed first, then line
up and each line is executed right to left.
There is Example:
module Cuts(){

imaga=1      // Last of all , program is notified that file exist and
need not to be drawn again

//Here cut object has to be exported

;

angleMaleCut(cut = yCut1);    // Then male cut is made

angleMaleCut(cut = yCut2);

angleMaleCut(cut = yCut3);

translate ([0,0,0]);                    // It is aligned to center line

osnova();                                  // again clone or duplicate
is imported or drawn

angleFemaleCut(cut = yCut1); // then female cuts are made

angleFemaleCut(cut = yCut2);

angleFemaleCut(cut = yCut3);

translate ([-15,0,0]);                  // It is then moved  15mm on
Xcoordinate

Rotate (0,120,0,);                    // Second, iti s rotated in y
on horizontal plane

osnova();                                  // First, .stl file is
Imported  or drawn

}

//

module osnova()

{//"scadturbine.stl

echo("Object to cut=",objekt, "ima =", imaga);

if(imaga == 0){drawObject();}

else {import(objekt);}

}

in case there is more then one instruction on one line, they are
executed rightmost first

then left neigbour  one by one .

That is consistent with bottom to top execution.

I shall check again by puting some ECHO commands

However, since Imaga =1; is first command If program would work normal
way,

then ECHO would not report Zero in module osnova.

Ups!

.It seems that variables from program were not passed to Module unless
explicitely mentioned in Module

Parameter lists,which means I cannot change value in Module to be
generally available at new state?

Maxbe those multiple instractions were permutable without change of
result?

So how to do it? must put imaga = imaga, in Module parameter list?

Or something else?

Sincerely, Marijan Pollak

On Sun, Jan 1, 2017 at 3:37 PM, nop head <[hidden email]
http:///user/SendEmail.jtp?type=node&node=19834&i=1> wrote:

Note this is OpenSCAD. Open SCADA is a different, unrelated, project.

I also wonder why is everything in this programming script upside

down and rightside left.

I don't know what you mean. The Syntax and layout are similar to C and
is parsed top to bottom, left to right.

Was this originally made by Chinese?

No, Austrians.

On 1 January 2017 at 08:07, Marijan Pollak <[hidden email]
http:///user/SendEmail.jtp?type=node&node=19834&i=2> wrote:

Hello colagues, I noted there is no way to Export .stl file except by
hand,
while Import is working. IMHO, it should be easy to make new Module
ExportStl() by finding same function in Editor. Since I am New to Open
Scada, can some seasoned SCADA programmer do it?
I also wonder why is everything in this programming script upside
down and
rightside left
as compared to other Programming Languages? Was this originally made
by
Chinese?
If I have time I would turn this to normal, as well as make it
faster, this
seems awfully slow
for just few simple Objects added or subtracted one from another.
I really need such parametric 3D drawing program as in 3D Max I cannot
position things precisely by hand. I am inventor whose inventions
would save
the World, so by helping me You would help Yourself also.
What I am trying to do at moment is to find way to cut large objects
symetrically like by Puzzlecut, to be able to 3D print pieces of large
objects on small 3D printer, I.E. 25 x 25 cm
pieces of 100 cm diameter objects. I tried to attach the picture here
but
script hanged up, so this time I would try to do it separately....
Thanks in advance and I wish You all Healthy, Happy anf Prosperous
2017!

--
View this message in context: http://forum.openscad.org/Expo
rt-Stl-File-module-tp19829.html
Sent from the OpenSCAD mailing list archive at Nabble.com.


OpenSCAD mailing list
[hidden email] http:///user/SendEmail.jtp?type=node&node=19834&i=3
http://lists.openscad.org/mailman/listinfo/discuss_lists.openscad.org

--
Regards from Croatia, the Homeland of one of greatest inventors from
19th and 20th Centuries, Engineer Nikola Tesla!


OpenSCAD mailing list
[hidden email] http:///user/SendEmail.jtp?type=node&node=19834&i=5
http://lists.openscad.org/mailman/listinfo/discuss_lists.openscad.org

--
Regards from Croatia, the Homeland of one of greatest inventors from 19th
and 20th Centuries, Engineer Nikola Tesla!


View this message in context: Re: Export Stl. File module
http://forum.openscad.org/Export-Stl-File-module-tp19829p19851.html
Sent from the OpenSCAD mailing list archive http://forum.openscad.org/
at Nabble.com.


OpenSCAD mailing list
Discuss@lists.openscad.org
http://lists.openscad.org/mailman/listinfo/discuss_lists.openscad.org

--
Regards from Croatia, the Homeland of one of greatest inventors from 19th
and 20th Centuries, Engineer Nikola Tesla!

That is because in 26 Programming Languages I learned and used not single one do not deviate from execution in a way it is written, top down and branching. I was also writting Compilers and Interpreters. Must be this came later with Languages like ADA, Python, Ruby and other, less known or specialized languages. On Mon, Jan 2, 2017 at 9:37 PM, nop head <nop.head@gmail.com> wrote: > There is a large community of OpenSCAD users that have been using it for > many years and nobody but you thinks it is upside down. > > There are no variables in OpenSCAD, just named constants, because it is a > language to describe an object and a description does not change over time. > > On 2 January 2017 at 20:27, Marijan Pollak <oberonmp@gmail.com> wrote: > >> Dear Coleague, So, my logic was correct in case of program execution, >> so IMHO it would be more practicall that programmer write same way as >> program execute. This way fewer mistakes would be made. >> Also Imaga is Variable, not constant. it means "it is there" or "Object >> exist" >> and signal that there is file to be Imported and all previous work on >> generating >> Object can be skipped. Time saved is enormous, specially with very >> complex >> objects. >> Since program execute oposite then it is written, I concluded I would >> have to >> write code converter to be able to follow standard logic of programming. >> It would be easier if someone change this so people drawing the Objects >> would not have to adjust to way program generates Objects. >> Programming is invented so they can help Programmers to write correct code >> NOT that programmers should help Computer to do it upside down. >> I do not know how such bug was not noted and made right. >> that is Microsoft style of Programming and logic. "It is not a Bug, it is >> a FEATURE"? >> >> On Sun, Jan 1, 2017 at 7:18 PM, nophead [via OpenSCAD] <[hidden email] >> <http:///user/SendEmail.jtp?type=node&node=19851&i=0>> wrote: >> >>> Firstly statements are not executed as such. They build a tree structure >>> of geometric primitives and boolean operations. The boolean operations can >>> be done in any order as long as the operands (which are lower branches in >>> the tree) have been computed first. So yes things on the right are lower >>> nodes on the tree and must be computed first. And yes, compound statements >>> like union() that can span many lines will compute all the things lower in >>> the tree before the union is computed. >>> >>> Secondly, OpenSCAD has lexical scope, very much the same as C, so a >>> variable (which are actually named constants) defined in one module cannot >>> be accessed in a another. But you can define constants at file level scope, >>> so if you move imaga=1 outside the Cuts module it will be accessible in >>> osnova. Or you can declare it as a parameter of osnova and pass it each >>> time you call it. >>> >>> On 1 January 2017 at 17:25, Marijan Pollak <[hidden email] >>> <http:///user/SendEmail.jtp?type=node&node=19834&i=0>> wrote: >>> >>>> Hi, I did not know the difference exist. It may be true that it is >>>> parsed top to bottom, but somehow I >>>> found that what is on the bottom of Module is executed first, then line >>>> up and each line is executed right to left. >>>> There is Example: >>>> module Cuts(){ >>>> >>>> imaga=1 // Last of all , program is notified that file exist and >>>> need not to be drawn again >>>> >>>> >>>> //Here cut object has to be exported >>>> >>>> ; >>>> >>>> angleMaleCut(cut = yCut1); // Then male cut is made >>>> >>>> angleMaleCut(cut = yCut2); >>>> >>>> angleMaleCut(cut = yCut3); >>>> >>>> translate ([0,0,0]); // It is aligned to center line >>>> >>>> osnova(); // again clone or duplicate >>>> is imported or drawn >>>> >>>> angleFemaleCut(cut = yCut1); // then female cuts are made >>>> >>>> angleFemaleCut(cut = yCut2); >>>> >>>> angleFemaleCut(cut = yCut3); >>>> >>>> translate ([-15,0,0]); // It is then moved 15mm on >>>> Xcoordinate >>>> >>>> Rotate (0,120,0,); // Second, iti s rotated in y >>>> on horizontal plane >>>> >>>> osnova(); // First, .stl file is >>>> Imported or drawn >>>> >>>> } >>>> >>>> // >>>> >>>> module osnova() >>>> >>>> {//"scadturbine.stl >>>> >>>> echo("Object to cut=",objekt, "ima =", imaga); >>>> >>>> if(imaga == 0){drawObject();} >>>> >>>> else {import(objekt);} >>>> >>>> } >>>> >>>> >>>> in case there is more then one instruction on one line, they are >>>> executed rightmost first >>>> >>>> then left neigbour one by one . >>>> >>>> That is consistent with bottom to top execution. >>>> >>>> I shall check again by puting some ECHO commands >>>> >>>> However, since Imaga =1; is first command If program would work normal >>>> way, >>>> >>>> then ECHO would not report Zero in module osnova. >>>> >>>> Ups! >>>> >>>> .It seems that variables from program were not passed to Module unless >>>> explicitely mentioned in Module >>>> >>>> Parameter lists,which means I cannot change value in Module to be >>>> generally available at new state? >>>> >>>> Maxbe those multiple instractions were permutable without change of >>>> result? >>>> >>>> So how to do it? must put imaga = imaga, in Module parameter list? >>>> >>>> Or something else? >>>> >>>> >>>> >>>> Sincerely, Marijan Pollak >>>> >>>> On Sun, Jan 1, 2017 at 3:37 PM, nop head <[hidden email] >>>> <http:///user/SendEmail.jtp?type=node&node=19834&i=1>> wrote: >>>> >>>>> Note this is OpenSCAD. Open SCADA is a different, unrelated, project. >>>>> >>>>> >I also wonder why is everything in this programming script upside >>>>> down and rightside left. >>>>> >>>>> I don't know what you mean. The Syntax and layout are similar to C and >>>>> is parsed top to bottom, left to right. >>>>> >>>>> >Was this originally made by Chinese? >>>>> >>>>> No, Austrians. >>>>> >>>>> On 1 January 2017 at 08:07, Marijan Pollak <[hidden email] >>>>> <http:///user/SendEmail.jtp?type=node&node=19834&i=2>> wrote: >>>>> >>>>>> Hello colagues, I noted there is no way to Export .stl file except by >>>>>> hand, >>>>>> while Import is working. IMHO, it should be easy to make new Module >>>>>> ExportStl() by finding same function in Editor. Since I am New to Open >>>>>> Scada, can some seasoned SCADA programmer do it? >>>>>> I also wonder why is everything in this programming script upside >>>>>> down and >>>>>> rightside left >>>>>> as compared to other Programming Languages? Was this originally made >>>>>> by >>>>>> Chinese? >>>>>> If I have time I would turn this to normal, as well as make it >>>>>> faster, this >>>>>> seems awfully slow >>>>>> for just few simple Objects added or subtracted one from another. >>>>>> I really need such parametric 3D drawing program as in 3D Max I cannot >>>>>> position things precisely by hand. I am inventor whose inventions >>>>>> would save >>>>>> the World, so by helping me You would help Yourself also. >>>>>> What I am trying to do at moment is to find way to cut large objects >>>>>> symetrically like by Puzzlecut, to be able to 3D print pieces of large >>>>>> objects on small 3D printer, I.E. 25 x 25 cm >>>>>> pieces of 100 cm diameter objects. I tried to attach the picture here >>>>>> but >>>>>> script hanged up, so this time I would try to do it separately.... >>>>>> Thanks in advance and I wish You all Healthy, Happy anf Prosperous >>>>>> 2017! >>>>>> >>>>>> >>>>>> >>>>>> -- >>>>>> View this message in context: http://forum.openscad.org/Expo >>>>>> rt-Stl-File-module-tp19829.html >>>>>> Sent from the OpenSCAD mailing list archive at Nabble.com. >>>>>> >>>>>> _______________________________________________ >>>>>> OpenSCAD mailing list >>>>>> [hidden email] <http:///user/SendEmail.jtp?type=node&node=19834&i=3> >>>>>> http://lists.openscad.org/mailman/listinfo/discuss_lists.openscad.org >>>>>> >>>>> >>>>> >>>>> _______________________________________________ >>>>> OpenSCAD mailing list >>>>> [hidden email] <http:///user/SendEmail.jtp?type=node&node=19834&i=4> >>>>> http://lists.openscad.org/mailman/listinfo/discuss_lists.openscad.org >>>>> >>>>> >>>> >>>> >>>> -- >>>> Regards from Croatia, the Homeland of one of greatest inventors from >>>> 19th and 20th Centuries, Engineer Nikola Tesla! >>>> >>>> _______________________________________________ >>>> OpenSCAD mailing list >>>> [hidden email] <http:///user/SendEmail.jtp?type=node&node=19834&i=5> >>>> http://lists.openscad.org/mailman/listinfo/discuss_lists.openscad.org >>>> >>>> >>> >>> _______________________________________________ >>> OpenSCAD mailing list >>> [hidden email] <http:///user/SendEmail.jtp?type=node&node=19834&i=6> >>> http://lists.openscad.org/mailman/listinfo/discuss_lists.openscad.org >>> >>> >>> ------------------------------ >>> If you reply to this email, your message will be added to the discussion >>> below: >>> http://forum.openscad.org/Export-Stl-File-module-tp19829p19834.html >>> To unsubscribe from Export Stl. File module, click here. >>> 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> >>> >> >> >> >> -- >> Regards from Croatia, the Homeland of one of greatest inventors from 19th >> and 20th Centuries, Engineer Nikola Tesla! >> >> ------------------------------ >> View this message in context: Re: Export Stl. File module >> <http://forum.openscad.org/Export-Stl-File-module-tp19829p19851.html> >> Sent from the OpenSCAD mailing list archive <http://forum.openscad.org/> >> at Nabble.com. >> >> _______________________________________________ >> OpenSCAD mailing list >> Discuss@lists.openscad.org >> http://lists.openscad.org/mailman/listinfo/discuss_lists.openscad.org >> >> > > _______________________________________________ > OpenSCAD mailing list > Discuss@lists.openscad.org > http://lists.openscad.org/mailman/listinfo/discuss_lists.openscad.org > > -- Regards from Croatia, the Homeland of one of greatest inventors from 19th and 20th Centuries, Engineer Nikola Tesla!
TP
Torsten Paul
Tue, Jan 3, 2017 12:47 AM

On 01/03/2017 01:22 AM, Marijan Pollak wrote:

Can You tell me where I can find Source code of that OPEN SCAD
editor?

There is only some wrapper code in OpenSCAD itself as we
use the QScintilla library which provides the editor component.
(https://riverbankcomputing.com/software/qscintilla/intro)

The wrapper code is in
https://github.com/openscad/openscad/blob/master/src/scintillaeditor.cpp

For cutting and separation, I don't have a general solution.
I think that does depend quite a bit on the specific model. I
tend to generate parts that are separate in the real model as
different modules, so it's relatively easy to combine those in
an assembly later, maybe with different selection.

As mentioned before, the multi-part export is not yet implemented
but can be done using the method shown here:
https://en.wikibooks.org/wiki/OpenSCAD_User_Manual/FAQ#How_can_I_export_multiple_parts_from_one_script.3F

By the way, do You know best size of "kerf" so pieces could
be joined strongly after 3D printing, but not be impossible
to do so?

I guess there are quite a lot factors that influence strength.

  • material (I've only printed PLA so far)
  • slicer settings (e.g. higher infill settings for joins?)
  • direction of printing layers relative to the join
  • usage of glue or snap fit
  • direction of forces against the join in final use case

So I don't have any simple suggestion what would make a good
join, but thinking about the various topics and some experiments
should give some reasonable results.

ciao,
Torsten.

On Tue, Jan 3, 2017 at 12:52 AM, Torsten Paul <Torsten.Paul@gmx.de mailto:Torsten.Paul@gmx.de> wrote:

 On 01/02/2017 11:59 PM, Marijan Pollak wrote:

So every example has to be fully commented, as even
author may not recognize it after some time pases.
Next it has to be fully tested to do all what it has
to do. If possible some examples of use should be
included.

 Yes, I totally agree. We don't have a very exhaustive
 "official" tutorial yet (there are some good ones linked
 from the main web site).
 Not long ago, we did start a collection of code snippets
 as examples for specific topics.

 https://en.wikibooks.org/wiki/OpenSCAD_User_Manual/Tips_and_Tricks <https://en.wikibooks.org/wiki/OpenSCAD_User_Manual/Tips_and_Tricks>

 It's still a bit random, but if you have a list of
 short topics, feel free to post the list. Maybe we
 can come up with example code for some or even all
 and add them to the tips&tricks page.

 ciao,
   Torsten.


 _______________________________________________
 OpenSCAD mailing list
 Discuss@lists.openscad.org <mailto:Discuss@lists.openscad.org>
 http://lists.openscad.org/mailman/listinfo/discuss_lists.openscad.org
 <http://lists.openscad.org/mailman/listinfo/discuss_lists.openscad.org>

--
Regards from Croatia, the Homeland of one of greatest inventors from 19th and 20th Centuries, Engineer Nikola Tesla!


OpenSCAD mailing list
Discuss@lists.openscad.org
http://lists.openscad.org/mailman/listinfo/discuss_lists.openscad.org

On 01/03/2017 01:22 AM, Marijan Pollak wrote: > Can You tell me where I can find Source code of that OPEN SCAD > editor? > There is only some wrapper code in OpenSCAD itself as we use the QScintilla library which provides the editor component. (https://riverbankcomputing.com/software/qscintilla/intro) The wrapper code is in https://github.com/openscad/openscad/blob/master/src/scintillaeditor.cpp For cutting and separation, I don't have a general solution. I think that does depend quite a bit on the specific model. I tend to generate parts that are separate in the real model as different modules, so it's relatively easy to combine those in an assembly later, maybe with different selection. As mentioned before, the multi-part export is not yet implemented but can be done using the method shown here: https://en.wikibooks.org/wiki/OpenSCAD_User_Manual/FAQ#How_can_I_export_multiple_parts_from_one_script.3F > By the way, do You know best size of "kerf" so pieces could > be joined strongly after 3D printing, but not be impossible > to do so? > I guess there are quite a lot factors that influence strength. - material (I've only printed PLA so far) - slicer settings (e.g. higher infill settings for joins?) - direction of printing layers relative to the join - usage of glue or snap fit - direction of forces against the join in final use case So I don't have any simple suggestion what would make a good join, but thinking about the various topics and some experiments should give some reasonable results. ciao, Torsten. > On Tue, Jan 3, 2017 at 12:52 AM, Torsten Paul <Torsten.Paul@gmx.de <mailto:Torsten.Paul@gmx.de>> wrote: > > On 01/02/2017 11:59 PM, Marijan Pollak wrote: > > So every example has to be fully commented, as even > > author may not recognize it after some time pases. > > Next it has to be fully tested to do all what it has > > to do. If possible some examples of use should be > > included. > > > Yes, I totally agree. We don't have a very exhaustive > "official" tutorial yet (there are some good ones linked > from the main web site). > Not long ago, we did start a collection of code snippets > as examples for specific topics. > > https://en.wikibooks.org/wiki/OpenSCAD_User_Manual/Tips_and_Tricks <https://en.wikibooks.org/wiki/OpenSCAD_User_Manual/Tips_and_Tricks> > > It's still a bit random, but if you have a list of > short topics, feel free to post the list. Maybe we > can come up with example code for some or even all > and add them to the tips&tricks page. > > ciao, > Torsten. > > > _______________________________________________ > OpenSCAD mailing list > Discuss@lists.openscad.org <mailto:Discuss@lists.openscad.org> > http://lists.openscad.org/mailman/listinfo/discuss_lists.openscad.org > <http://lists.openscad.org/mailman/listinfo/discuss_lists.openscad.org> > > > > > -- > Regards from Croatia, the Homeland of one of greatest inventors from 19th and 20th Centuries, Engineer Nikola Tesla! > > > _______________________________________________ > OpenSCAD mailing list > Discuss@lists.openscad.org > http://lists.openscad.org/mailman/listinfo/discuss_lists.openscad.org >
NH
nop head
Tue, Jan 3, 2017 1:00 AM

That is because in 26 Programming Languages I learned and used not single

one do not deviate from execution in a way it is written, top down and
branching.

Well the only programming language I know that executes things strictly in
the order I write them is Forth because it uses postfix notation. Most
languages use infix notation, so the second operand that comes after the
operator is evaluated before the operator combines them. a + b is evaluated
a b +. OpenSCAD has prefix notation, so union() { a(); b() ;} evaluates a,
then b and finally does the union. I don't find that odd at all, seems
completely natural to me. It is the same as writing union(a,b) or any
function call in C type languages. They are all prefix notation.

No matter how it is written any binary operation has to evaluate its
operands before it can do the operation. So regardless of how the source
code is written it is always a b + that is evaluated.

On 3 January 2017 at 00:47, Torsten Paul Torsten.Paul@gmx.de wrote:

On 01/03/2017 01:22 AM, Marijan Pollak wrote:

Can You tell me where I can find Source code of that OPEN SCAD
editor?

There is only some wrapper code in OpenSCAD itself as we
use the QScintilla library which provides the editor component.
(https://riverbankcomputing.com/software/qscintilla/intro)

The wrapper code is in
https://github.com/openscad/openscad/blob/master/src/scintillaeditor.cpp

For cutting and separation, I don't have a general solution.
I think that does depend quite a bit on the specific model. I
tend to generate parts that are separate in the real model as
different modules, so it's relatively easy to combine those in
an assembly later, maybe with different selection.

As mentioned before, the multi-part export is not yet implemented
but can be done using the method shown here:
https://en.wikibooks.org/wiki/OpenSCAD_User_Manual/FAQ#How_
can_I_export_multiple_parts_from_one_script.3F

By the way, do You know best size of "kerf" so pieces could
be joined strongly after 3D printing, but not be impossible
to do so?

I guess there are quite a lot factors that influence strength.

  • material (I've only printed PLA so far)
  • slicer settings (e.g. higher infill settings for joins?)
  • direction of printing layers relative to the join
  • usage of glue or snap fit
  • direction of forces against the join in final use case

So I don't have any simple suggestion what would make a good
join, but thinking about the various topics and some experiments
should give some reasonable results.

ciao,
Torsten.

On Tue, Jan 3, 2017 at 12:52 AM, Torsten Paul <Torsten.Paul@gmx.de

 On 01/02/2017 11:59 PM, Marijan Pollak wrote:

So every example has to be fully commented, as even
author may not recognize it after some time pases.
Next it has to be fully tested to do all what it has
to do. If possible some examples of use should be
included.

 Yes, I totally agree. We don't have a very exhaustive
 "official" tutorial yet (there are some good ones linked
 from the main web site).
 Not long ago, we did start a collection of code snippets
 as examples for specific topics.

 https://en.wikibooks.org/wiki/OpenSCAD_User_Manual/Tips_and_Tricks <
 It's still a bit random, but if you have a list of
 short topics, feel free to post the list. Maybe we
 can come up with example code for some or even all
 and add them to the tips&tricks page.

 ciao,
   Torsten.


 _______________________________________________
 OpenSCAD mailing list
 Discuss@lists.openscad.org <mailto:Discuss@lists.openscad.org>
 http://lists.openscad.org/mailman/listinfo/discuss_

lists.openscad.org

 <http://lists.openscad.org/mailman/listinfo/discuss_

lists.openscad.org>

--
Regards from Croatia, the Homeland of one of greatest inventors from

19th and 20th Centuries, Engineer Nikola Tesla!

>That is because in 26 Programming Languages I learned and used not single one do not deviate from execution in a way it is written, top down and branching. Well the only programming language I know that executes things strictly in the order I write them is Forth because it uses postfix notation. Most languages use infix notation, so the second operand that comes after the operator is evaluated before the operator combines them. a + b is evaluated a b +. OpenSCAD has prefix notation, so union() { a(); b() ;} evaluates a, then b and finally does the union. I don't find that odd at all, seems completely natural to me. It is the same as writing union(a,b) or any function call in C type languages. They are all prefix notation. No matter how it is written any binary operation has to evaluate its operands before it can do the operation. So regardless of how the source code is written it is always a b + that is evaluated. On 3 January 2017 at 00:47, Torsten Paul <Torsten.Paul@gmx.de> wrote: > On 01/03/2017 01:22 AM, Marijan Pollak wrote: > > Can You tell me where I can find Source code of that OPEN SCAD > > editor? > > > There is only some wrapper code in OpenSCAD itself as we > use the QScintilla library which provides the editor component. > (https://riverbankcomputing.com/software/qscintilla/intro) > > The wrapper code is in > https://github.com/openscad/openscad/blob/master/src/scintillaeditor.cpp > > For cutting and separation, I don't have a general solution. > I think that does depend quite a bit on the specific model. I > tend to generate parts that are separate in the real model as > different modules, so it's relatively easy to combine those in > an assembly later, maybe with different selection. > > As mentioned before, the multi-part export is not yet implemented > but can be done using the method shown here: > https://en.wikibooks.org/wiki/OpenSCAD_User_Manual/FAQ#How_ > can_I_export_multiple_parts_from_one_script.3F > > > By the way, do You know best size of "kerf" so pieces could > > be joined strongly after 3D printing, but not be impossible > > to do so? > > > I guess there are quite a lot factors that influence strength. > > - material (I've only printed PLA so far) > - slicer settings (e.g. higher infill settings for joins?) > - direction of printing layers relative to the join > - usage of glue or snap fit > - direction of forces against the join in final use case > > So I don't have any simple suggestion what would make a good > join, but thinking about the various topics and some experiments > should give some reasonable results. > > ciao, > Torsten. > > > > > On Tue, Jan 3, 2017 at 12:52 AM, Torsten Paul <Torsten.Paul@gmx.de > <mailto:Torsten.Paul@gmx.de>> wrote: > > > > On 01/02/2017 11:59 PM, Marijan Pollak wrote: > > > So every example has to be fully commented, as even > > > author may not recognize it after some time pases. > > > Next it has to be fully tested to do all what it has > > > to do. If possible some examples of use should be > > > included. > > > > > Yes, I totally agree. We don't have a very exhaustive > > "official" tutorial yet (there are some good ones linked > > from the main web site). > > Not long ago, we did start a collection of code snippets > > as examples for specific topics. > > > > https://en.wikibooks.org/wiki/OpenSCAD_User_Manual/Tips_and_Tricks < > https://en.wikibooks.org/wiki/OpenSCAD_User_Manual/Tips_and_Tricks> > > > > It's still a bit random, but if you have a list of > > short topics, feel free to post the list. Maybe we > > can come up with example code for some or even all > > and add them to the tips&tricks page. > > > > ciao, > > Torsten. > > > > > > _______________________________________________ > > OpenSCAD mailing list > > Discuss@lists.openscad.org <mailto:Discuss@lists.openscad.org> > > http://lists.openscad.org/mailman/listinfo/discuss_ > lists.openscad.org > > <http://lists.openscad.org/mailman/listinfo/discuss_ > lists.openscad.org> > > > > > > > > > > -- > > Regards from Croatia, the Homeland of one of greatest inventors from > 19th and 20th Centuries, Engineer Nikola Tesla! > > > > > > _______________________________________________ > > OpenSCAD mailing list > > Discuss@lists.openscad.org > > http://lists.openscad.org/mailman/listinfo/discuss_lists.openscad.org > > > > > _______________________________________________ > OpenSCAD mailing list > Discuss@lists.openscad.org > http://lists.openscad.org/mailman/listinfo/discuss_lists.openscad.org >
NH
nop head
Tue, Jan 3, 2017 1:02 AM

Lisp is also prefix notation.

On 3 January 2017 at 01:00, nop head nop.head@gmail.com wrote:

That is because in 26 Programming Languages I learned and used not single

one do not deviate from execution in a way it is written, top down and
branching.

Well the only programming language I know that executes things strictly in
the order I write them is Forth because it uses postfix notation. Most
languages use infix notation, so the second operand that comes after the
operator is evaluated before the operator combines them. a + b is evaluated
a b +. OpenSCAD has prefix notation, so union() { a(); b() ;} evaluates a,
then b and finally does the union. I don't find that odd at all, seems
completely natural to me. It is the same as writing union(a,b) or any
function call in C type languages. They are all prefix notation.

No matter how it is written any binary operation has to evaluate its
operands before it can do the operation. So regardless of how the source
code is written it is always a b + that is evaluated.

On 3 January 2017 at 00:47, Torsten Paul Torsten.Paul@gmx.de wrote:

On 01/03/2017 01:22 AM, Marijan Pollak wrote:

Can You tell me where I can find Source code of that OPEN SCAD
editor?

There is only some wrapper code in OpenSCAD itself as we
use the QScintilla library which provides the editor component.
(https://riverbankcomputing.com/software/qscintilla/intro)

The wrapper code is in
https://github.com/openscad/openscad/blob/master/src/scintillaeditor.cpp

For cutting and separation, I don't have a general solution.
I think that does depend quite a bit on the specific model. I
tend to generate parts that are separate in the real model as
different modules, so it's relatively easy to combine those in
an assembly later, maybe with different selection.

As mentioned before, the multi-part export is not yet implemented
but can be done using the method shown here:
https://en.wikibooks.org/wiki/OpenSCAD_User_Manual/FAQ#How_c
an_I_export_multiple_parts_from_one_script.3F

By the way, do You know best size of "kerf" so pieces could
be joined strongly after 3D printing, but not be impossible
to do so?

I guess there are quite a lot factors that influence strength.

  • material (I've only printed PLA so far)
  • slicer settings (e.g. higher infill settings for joins?)
  • direction of printing layers relative to the join
  • usage of glue or snap fit
  • direction of forces against the join in final use case

So I don't have any simple suggestion what would make a good
join, but thinking about the various topics and some experiments
should give some reasonable results.

ciao,
Torsten.

On Tue, Jan 3, 2017 at 12:52 AM, Torsten Paul <Torsten.Paul@gmx.de

 On 01/02/2017 11:59 PM, Marijan Pollak wrote:

So every example has to be fully commented, as even
author may not recognize it after some time pases.
Next it has to be fully tested to do all what it has
to do. If possible some examples of use should be
included.

 Yes, I totally agree. We don't have a very exhaustive
 "official" tutorial yet (there are some good ones linked
 from the main web site).
 Not long ago, we did start a collection of code snippets
 as examples for specific topics.

 https://en.wikibooks.org/wiki/OpenSCAD_User_Manual/Tips_and_Tricks
 It's still a bit random, but if you have a list of
 short topics, feel free to post the list. Maybe we
 can come up with example code for some or even all
 and add them to the tips&tricks page.

 ciao,
   Torsten.


 _______________________________________________
 OpenSCAD mailing list
 Discuss@lists.openscad.org <mailto:Discuss@lists.openscad.org>
 http://lists.openscad.org/mailman/listinfo/discuss_lists.

openscad.org

 <http://lists.openscad.org/mailman/listinfo/discuss_lists.

openscad.org>

--
Regards from Croatia, the Homeland of one of greatest inventors from

19th and 20th Centuries, Engineer Nikola Tesla!

Lisp is also prefix notation. On 3 January 2017 at 01:00, nop head <nop.head@gmail.com> wrote: > >That is because in 26 Programming Languages I learned and used not single > one do not deviate from execution in a way it is written, top down and > branching. > > Well the only programming language I know that executes things strictly in > the order I write them is Forth because it uses postfix notation. Most > languages use infix notation, so the second operand that comes after the > operator is evaluated before the operator combines them. a + b is evaluated > a b +. OpenSCAD has prefix notation, so union() { a(); b() ;} evaluates a, > then b and finally does the union. I don't find that odd at all, seems > completely natural to me. It is the same as writing union(a,b) or any > function call in C type languages. They are all prefix notation. > > No matter how it is written any binary operation has to evaluate its > operands before it can do the operation. So regardless of how the source > code is written it is always a b + that is evaluated. > > On 3 January 2017 at 00:47, Torsten Paul <Torsten.Paul@gmx.de> wrote: > >> On 01/03/2017 01:22 AM, Marijan Pollak wrote: >> > Can You tell me where I can find Source code of that OPEN SCAD >> > editor? >> > >> There is only some wrapper code in OpenSCAD itself as we >> use the QScintilla library which provides the editor component. >> (https://riverbankcomputing.com/software/qscintilla/intro) >> >> The wrapper code is in >> https://github.com/openscad/openscad/blob/master/src/scintillaeditor.cpp >> >> For cutting and separation, I don't have a general solution. >> I think that does depend quite a bit on the specific model. I >> tend to generate parts that are separate in the real model as >> different modules, so it's relatively easy to combine those in >> an assembly later, maybe with different selection. >> >> As mentioned before, the multi-part export is not yet implemented >> but can be done using the method shown here: >> https://en.wikibooks.org/wiki/OpenSCAD_User_Manual/FAQ#How_c >> an_I_export_multiple_parts_from_one_script.3F >> >> > By the way, do You know best size of "kerf" so pieces could >> > be joined strongly after 3D printing, but not be impossible >> > to do so? >> > >> I guess there are quite a lot factors that influence strength. >> >> - material (I've only printed PLA so far) >> - slicer settings (e.g. higher infill settings for joins?) >> - direction of printing layers relative to the join >> - usage of glue or snap fit >> - direction of forces against the join in final use case >> >> So I don't have any simple suggestion what would make a good >> join, but thinking about the various topics and some experiments >> should give some reasonable results. >> >> ciao, >> Torsten. >> >> >> >> > On Tue, Jan 3, 2017 at 12:52 AM, Torsten Paul <Torsten.Paul@gmx.de >> <mailto:Torsten.Paul@gmx.de>> wrote: >> > >> > On 01/02/2017 11:59 PM, Marijan Pollak wrote: >> > > So every example has to be fully commented, as even >> > > author may not recognize it after some time pases. >> > > Next it has to be fully tested to do all what it has >> > > to do. If possible some examples of use should be >> > > included. >> > > >> > Yes, I totally agree. We don't have a very exhaustive >> > "official" tutorial yet (there are some good ones linked >> > from the main web site). >> > Not long ago, we did start a collection of code snippets >> > as examples for specific topics. >> > >> > https://en.wikibooks.org/wiki/OpenSCAD_User_Manual/Tips_and_Tricks >> <https://en.wikibooks.org/wiki/OpenSCAD_User_Manual/Tips_and_Tricks> >> > >> > It's still a bit random, but if you have a list of >> > short topics, feel free to post the list. Maybe we >> > can come up with example code for some or even all >> > and add them to the tips&tricks page. >> > >> > ciao, >> > Torsten. >> > >> > >> > _______________________________________________ >> > OpenSCAD mailing list >> > Discuss@lists.openscad.org <mailto:Discuss@lists.openscad.org> >> > http://lists.openscad.org/mailman/listinfo/discuss_lists. >> openscad.org >> > <http://lists.openscad.org/mailman/listinfo/discuss_lists. >> openscad.org> >> > >> > >> > >> > >> > -- >> > Regards from Croatia, the Homeland of one of greatest inventors from >> 19th and 20th Centuries, Engineer Nikola Tesla! >> > >> > >> > _______________________________________________ >> > OpenSCAD mailing list >> > Discuss@lists.openscad.org >> > http://lists.openscad.org/mailman/listinfo/discuss_lists.openscad.org >> > >> >> >> _______________________________________________ >> OpenSCAD mailing list >> Discuss@lists.openscad.org >> http://lists.openscad.org/mailman/listinfo/discuss_lists.openscad.org >> > >