A
aespielberg
Thu, Jul 23, 2015 6:03 PM
Hi all,
I am currently working on a research project in fabrication. I am hoping to
make my work more accessible by including it as a plug-in to one of several
general CAD/design tools. I am currently considering OpenSCAD, Sketchup,
Meshmixer, and Blender, but I use OpenSCAD already for a lot of my research,
so I would like to use it if possible.
I am hoping in particular for a way I can develop a plug-in to OpenSCAD,
rather than developing directly in the core API. I would like users to be
able to download my package, and then install it as an add-on. Is there
infrastructure for doing this or something similar with OpenSCAD?
--
View this message in context: http://forum.openscad.org/Plugin-API-for-OpenSCAD-tp13273.html
Sent from the OpenSCAD mailing list archive at Nabble.com.
Hi all,
I am currently working on a research project in fabrication. I am hoping to
make my work more accessible by including it as a plug-in to one of several
general CAD/design tools. I am currently considering OpenSCAD, Sketchup,
Meshmixer, and Blender, but I use OpenSCAD already for a lot of my research,
so I would like to use it if possible.
I am hoping in particular for a way I can develop a plug-in to OpenSCAD,
rather than developing directly in the core API. I would like users to be
able to download my package, and then install it as an add-on. Is there
infrastructure for doing this or something similar with OpenSCAD?
--
View this message in context: http://forum.openscad.org/Plugin-API-for-OpenSCAD-tp13273.html
Sent from the OpenSCAD mailing list archive at Nabble.com.
TP
Torsten Paul
Thu, Jul 23, 2015 6:30 PM
On 07/23/2015 08:03 PM, aespielberg wrote:
I am currently working on a research project in fabrication. I am hoping to
make my work more accessible by including it as a plug-in to one of several
general CAD/design tools. I am currently considering OpenSCAD, Sketchup,
Meshmixer, and Blender, but I use OpenSCAD already for a lot of my research,
so I would like to use it if possible.
Any online pointers for the curious?
I am hoping in particular for a way I can develop a plug-in to OpenSCAD,
rather than developing directly in the core API. I would like users to be
able to download my package, and then install it as an add-on. Is there
infrastructure for doing this or something similar with OpenSCAD?
There is currently no plug-in API. What type of functionality is it about?
Why would a plug-in be better than having the feature integrated?
ciao,
Torsten.
On 07/23/2015 08:03 PM, aespielberg wrote:
> I am currently working on a research project in fabrication. I am hoping to
> make my work more accessible by including it as a plug-in to one of several
> general CAD/design tools. I am currently considering OpenSCAD, Sketchup,
> Meshmixer, and Blender, but I use OpenSCAD already for a lot of my research,
> so I would like to use it if possible.
>
Any online pointers for the curious?
> I am hoping in particular for a way I can develop a plug-in to OpenSCAD,
> rather than developing directly in the core API. I would like users to be
> able to download my package, and then install it as an add-on. Is there
> infrastructure for doing this or something similar with OpenSCAD?
>
There is currently no plug-in API. What type of functionality is it about?
Why would a plug-in be better than having the feature integrated?
ciao,
Torsten.
AS
Andrew Spielberg
Thu, Jul 23, 2015 8:10 PM
Hi Torsten,
No online stuff yet - some stuff is submitted but it's not published yet.
A bunch of stuff in the works. But I have some infrastructure up for using
OpenSCAD and would like to make the most of it for as long as possible.
The functionality is something that is not related to geometric modeling.
I'm looking for a way to, essentially, place specific electronics on
objects being fabricated. It's not something that you'd want in the core
functionality of OpenSCAD, because that's not something OpenSCAD is
typically used for. But, if people wanted to use my system, it would be
nice to be able to have it built on top of OpenSCAD.
-Andy S.
Andrew Spielberg
PhD Student
MIT - Computer Science and Artificial Intelligence Laboratory
On Thu, Jul 23, 2015 at 2:30 PM, Torsten Paul Torsten.Paul@gmx.de wrote:
On 07/23/2015 08:03 PM, aespielberg wrote:
I am currently working on a research project in fabrication. I am hoping
to
make my work more accessible by including it as a plug-in to one of
several
general CAD/design tools. I am currently considering OpenSCAD, Sketchup,
Meshmixer, and Blender, but I use OpenSCAD already for a lot of my
research,
so I would like to use it if possible.
Any online pointers for the curious?
I am hoping in particular for a way I can develop a plug-in to OpenSCAD,
rather than developing directly in the core API. I would like users to be
able to download my package, and then install it as an add-on. Is there
infrastructure for doing this or something similar with OpenSCAD?
There is currently no plug-in API. What type of functionality is it
Hi Torsten,
No online stuff yet - some stuff is submitted but it's not published yet.
A bunch of stuff in the works. But I have some infrastructure up for using
OpenSCAD and would like to make the most of it for as long as possible.
The functionality is something that is not related to geometric modeling.
I'm looking for a way to, essentially, place specific electronics on
objects being fabricated. It's not something that you'd want in the core
functionality of OpenSCAD, because that's not something OpenSCAD is
typically used for. But, if people wanted to use my system, it would be
nice to be able to have it built on top of OpenSCAD.
-Andy S.
Andrew Spielberg
PhD Student
MIT - Computer Science and Artificial Intelligence Laboratory
On Thu, Jul 23, 2015 at 2:30 PM, Torsten Paul <Torsten.Paul@gmx.de> wrote:
> On 07/23/2015 08:03 PM, aespielberg wrote:
>
>> I am currently working on a research project in fabrication. I am hoping
>> to
>> make my work more accessible by including it as a plug-in to one of
>> several
>> general CAD/design tools. I am currently considering OpenSCAD, Sketchup,
>> Meshmixer, and Blender, but I use OpenSCAD already for a lot of my
>> research,
>> so I would like to use it if possible.
>>
>> Any online pointers for the curious?
>
> I am hoping in particular for a way I can develop a plug-in to OpenSCAD,
>> rather than developing directly in the core API. I would like users to be
>> able to download my package, and then install it as an add-on. Is there
>> infrastructure for doing this or something similar with OpenSCAD?
>>
>> There is currently no plug-in API. What type of functionality is it
> about?
> Why would a plug-in be better than having the feature integrated?
>
> ciao,
> Torsten.
>
>
> _______________________________________________
> OpenSCAD mailing list
> Discuss@lists.openscad.org
> http://lists.openscad.org/mailman/listinfo/discuss_lists.openscad.org
>
TP
Torsten Paul
Thu, Jul 23, 2015 9:11 PM
On 07/23/2015 10:10 PM, Andrew Spielberg wrote:
I'm looking for a way to, essentially, place specific electronics on
objects being fabricated. It's not something that you'd want in the core
functionality of OpenSCAD, because that's not something OpenSCAD is
typically used for. But, if people wanted to use my system, it would be
nice to be able to have it built on top of OpenSCAD.
Ahh, Déjà vu. Did we talk on IRC a while ago?
Right, that's probably not exactly near the main focus of OpenSCAD.
And even if there was an API, that would likely provide some access
to the geometric models created.
How does OpenSCAD fit into the picture? Like you have one OpenSCAD
model describing some kind of case and other models describing
electronics parts which are then placed inside or on-top of that
case?
Or to look from the API perspective... Assuming you could just wish
any API you'd like, what functions would that have?
One possibility might be to use OpenSCAD as back-end just feeding
the sources and retrieve and analyze/measure/combine the output
models.
ciao,
Torsten.
On 07/23/2015 10:10 PM, Andrew Spielberg wrote:
> I'm looking for a way to, essentially, place specific electronics on
> objects being fabricated. It's not something that you'd want in the core
> functionality of OpenSCAD, because that's not something OpenSCAD is
> typically used for. But, if people wanted to use my system, it would be
> nice to be able to have it built on top of OpenSCAD.
>
Ahh, Déjà vu. Did we talk on IRC a while ago?
Right, that's probably not exactly near the main focus of OpenSCAD.
And even if there was an API, that would likely provide some access
to the geometric models created.
How does OpenSCAD fit into the picture? Like you have one OpenSCAD
model describing some kind of case and other models describing
electronics parts which are then placed inside or on-top of that
case?
Or to look from the API perspective... Assuming you could just wish
any API you'd like, what functions would that have?
One possibility might be to use OpenSCAD as back-end just feeding
the sources and retrieve and analyze/measure/combine the output
models.
ciao,
Torsten.
DM
doug moen
Thu, Jul 23, 2015 9:11 PM
Hi Andy. I have questions, I'd like to understand how the OpenSCAD
integration is supposed to work.
- Would you be adding new operations to the OpenSCAD language? New data
types?
- What kind of output do you need to generate? Is the result an STL
file, or something different from the current export formats?
- Do you need to extend the OpenSCAD GUI?
Since you gave your affiliation, I thought it okay to google you. "These
days I am creating tools to enable users to quickly design, program, and
3-D print their own personal robots using data-driven tools." OpenSCAD
certainly is used for designing 3D printed robots, and one of the original
use cases was for modelling 3D printers, so your project might be of more
interest to the community than you suggested.
On 23 July 2015 at 16:10, Andrew Spielberg aespielberg@gmail.com wrote:
Hi Torsten,
No online stuff yet - some stuff is submitted but it's not published yet.
A bunch of stuff in the works. But I have some infrastructure up for using
OpenSCAD and would like to make the most of it for as long as possible.
The functionality is something that is not related to geometric modeling.
I'm looking for a way to, essentially, place specific electronics on
objects being fabricated. It's not something that you'd want in the core
functionality of OpenSCAD, because that's not something OpenSCAD is
typically used for. But, if people wanted to use my system, it would be
nice to be able to have it built on top of OpenSCAD.
-Andy S.
Andrew Spielberg
PhD Student
MIT - Computer Science and Artificial Intelligence Laboratory
On Thu, Jul 23, 2015 at 2:30 PM, Torsten Paul Torsten.Paul@gmx.de wrote:
On 07/23/2015 08:03 PM, aespielberg wrote:
I am currently working on a research project in fabrication. I am
hoping to
make my work more accessible by including it as a plug-in to one of
several
general CAD/design tools. I am currently considering OpenSCAD, Sketchup,
Meshmixer, and Blender, but I use OpenSCAD already for a lot of my
research,
so I would like to use it if possible.
Any online pointers for the curious?
I am hoping in particular for a way I can develop a plug-in to OpenSCAD,
rather than developing directly in the core API. I would like users to
be
able to download my package, and then install it as an add-on. Is there
infrastructure for doing this or something similar with OpenSCAD?
There is currently no plug-in API. What type of functionality is it
Hi Andy. I have questions, I'd like to understand how the OpenSCAD
integration is supposed to work.
- Would you be adding new operations to the OpenSCAD language? New data
types?
- What kind of output do you need to generate? Is the result an STL
file, or something different from the current export formats?
- Do you need to extend the OpenSCAD GUI?
Since you gave your affiliation, I thought it okay to google you. "These
days I am creating tools to enable users to quickly design, program, and
3-D print their own personal robots using data-driven tools." OpenSCAD
certainly is used for designing 3D printed robots, and one of the original
use cases was for modelling 3D printers, so your project might be of more
interest to the community than you suggested.
On 23 July 2015 at 16:10, Andrew Spielberg <aespielberg@gmail.com> wrote:
> Hi Torsten,
>
> No online stuff yet - some stuff is submitted but it's not published yet.
> A bunch of stuff in the works. But I have some infrastructure up for using
> OpenSCAD and would like to make the most of it for as long as possible.
>
> The functionality is something that is not related to geometric modeling.
> I'm looking for a way to, essentially, place specific electronics on
> objects being fabricated. It's not something that you'd want in the core
> functionality of OpenSCAD, because that's not something OpenSCAD is
> typically used for. But, if people wanted to use my system, it would be
> nice to be able to have it built on top of OpenSCAD.
>
> -Andy S.
>
> Andrew Spielberg
> PhD Student
> MIT - Computer Science and Artificial Intelligence Laboratory
>
> On Thu, Jul 23, 2015 at 2:30 PM, Torsten Paul <Torsten.Paul@gmx.de> wrote:
>
>> On 07/23/2015 08:03 PM, aespielberg wrote:
>>
>>> I am currently working on a research project in fabrication. I am
>>> hoping to
>>> make my work more accessible by including it as a plug-in to one of
>>> several
>>> general CAD/design tools. I am currently considering OpenSCAD, Sketchup,
>>> Meshmixer, and Blender, but I use OpenSCAD already for a lot of my
>>> research,
>>> so I would like to use it if possible.
>>>
>>> Any online pointers for the curious?
>>
>> I am hoping in particular for a way I can develop a plug-in to OpenSCAD,
>>> rather than developing directly in the core API. I would like users to
>>> be
>>> able to download my package, and then install it as an add-on. Is there
>>> infrastructure for doing this or something similar with OpenSCAD?
>>>
>>> There is currently no plug-in API. What type of functionality is it
>> about?
>> Why would a plug-in be better than having the feature integrated?
>>
>> ciao,
>> Torsten.
>>
>>
>> _______________________________________________
>> 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
>
>
AS
Andrew Spielberg
Thu, Jul 23, 2015 10:02 PM
Oops - I keep meaning to disable my signature for exactly that reason >_>
Torsten: Nope, I don't frequent IRC much - that definitely wasn't me. But
I'm not surprised there are a bunch of people wanting to do that sort of
thing.
We are still fleshing out exactly what we want to do - going to decide on
our scope and platform we'll be developing on in the next week. But we
should have an OpenSCAD model with a bunch of parts. And then we plan on
placing an electronic device in a particular location. Ideally, we'd like
to tag it with some metadata. Beyond that, I am not 100% positive what
else we need to do yet.
From an API perspective, for plug-in development, I don't typically think
too much about that - usually I just have to deal with whatever the API
developer came up with :-p. But I suppose mostly I'd want to be able to
define a special display window (allowing me to override the default output
with a personalized output), the ability to add more custom built-in
functions to the language (maybe like an include statement), and the
ability to add to the export options by overriding some default function.
That's the high-level idea of what I'm thinking. And maybe have all the
new things added color-coded so users knew that that was plug-in specific.
That's sort of what I was thinking.
So, reviewing Doug's list now that I've typed this out, it seems we're
matched up pretty well on what I was thinking.
I've used OpenSCAD as a backend before for my research and it works very
well for that purpose - and I may go that route again, although that
requires me to create a GUI from scratch, which will likely then be much
more crude than I'd like. Or I may fork the project and embed my
functionality directly (not ideal because then I won't be able to keep up
with how OpenSCAD evolves), or I may go a different route altogether.
Doug: We use OpenSCAD for robotics a bit, and it's been working quite well,
but I think the specific electronics we have in mind for *this *particular
project are probably outside the scope of something you'd permanently want
in OpenSCAD.
-Andy S.
On Thu, Jul 23, 2015 at 5:11 PM, doug moen doug@moens.org wrote:
Hi Andy. I have questions, I'd like to understand how the OpenSCAD
integration is supposed to work.
- Would you be adding new operations to the OpenSCAD language? New
data types?
- What kind of output do you need to generate? Is the result an STL
file, or something different from the current export formats?
- Do you need to extend the OpenSCAD GUI?
Since you gave your affiliation, I thought it okay to google you. "These
days I am creating tools to enable users to quickly design, program, and
3-D print their own personal robots using data-driven tools." OpenSCAD
certainly is used for designing 3D printed robots, and one of the original
use cases was for modelling 3D printers, so your project might be of more
interest to the community than you suggested.
On 23 July 2015 at 16:10, Andrew Spielberg aespielberg@gmail.com wrote:
Hi Torsten,
No online stuff yet - some stuff is submitted but it's not published
yet. A bunch of stuff in the works. But I have some infrastructure up for
using OpenSCAD and would like to make the most of it for as long as
possible.
The functionality is something that is not related to geometric
modeling. I'm looking for a way to, essentially, place specific
electronics on objects being fabricated. It's not something that you'd
want in the core functionality of OpenSCAD, because that's not something
OpenSCAD is typically used for. But, if people wanted to use my system, it
would be nice to be able to have it built on top of OpenSCAD.
-Andy S.
Andrew Spielberg
PhD Student
MIT - Computer Science and Artificial Intelligence Laboratory
On Thu, Jul 23, 2015 at 2:30 PM, Torsten Paul Torsten.Paul@gmx.de
wrote:
On 07/23/2015 08:03 PM, aespielberg wrote:
I am currently working on a research project in fabrication. I am
hoping to
make my work more accessible by including it as a plug-in to one of
several
general CAD/design tools. I am currently considering OpenSCAD,
Sketchup,
Meshmixer, and Blender, but I use OpenSCAD already for a lot of my
research,
so I would like to use it if possible.
Any online pointers for the curious?
I am hoping in particular for a way I can develop a plug-in to OpenSCAD,
rather than developing directly in the core API. I would like users to
be
able to download my package, and then install it as an add-on. Is there
infrastructure for doing this or something similar with OpenSCAD?
There is currently no plug-in API. What type of functionality is it
Oops - I keep meaning to disable my signature for exactly that reason >_>
Torsten: Nope, I don't frequent IRC much - that definitely wasn't me. But
I'm not surprised there are a bunch of people wanting to do that sort of
thing.
We are still fleshing out exactly what we want to do - going to decide on
our scope and platform we'll be developing on in the next week. But we
should have an OpenSCAD model with a bunch of parts. And then we plan on
placing an electronic device in a particular location. Ideally, we'd like
to tag it with some metadata. Beyond that, I am not 100% positive what
else we need to do yet.
>From an API perspective, for plug-in development, I don't typically think
too much about that - usually I just have to deal with whatever the API
developer came up with :-p. But I suppose mostly I'd want to be able to
define a special display window (allowing me to override the default output
with a personalized output), the ability to add more custom built-in
functions to the language (maybe like an include statement), and the
ability to add to the export options by overriding some default function.
That's the high-level idea of what I'm thinking. And maybe have all the
new things added color-coded so users knew that that was plug-in specific.
That's sort of what I was thinking.
So, reviewing Doug's list now that I've typed this out, it seems we're
matched up pretty well on what I was thinking.
I've used OpenSCAD as a backend before for my research and it works very
well for that purpose - and I may go that route again, although that
requires me to create a GUI from scratch, which will likely then be much
more crude than I'd like. Or I may fork the project and embed my
functionality directly (not ideal because then I won't be able to keep up
with how OpenSCAD evolves), or I may go a different route altogether.
Doug: We use OpenSCAD for robotics a bit, and it's been working quite well,
but I think the specific electronics we have in mind for *this *particular
project are probably outside the scope of something you'd permanently want
in OpenSCAD.
-Andy S.
On Thu, Jul 23, 2015 at 5:11 PM, doug moen <doug@moens.org> wrote:
> Hi Andy. I have questions, I'd like to understand how the OpenSCAD
> integration is supposed to work.
>
> - Would you be adding new operations to the OpenSCAD language? New
> data types?
> - What kind of output do you need to generate? Is the result an STL
> file, or something different from the current export formats?
> - Do you need to extend the OpenSCAD GUI?
>
> Since you gave your affiliation, I thought it okay to google you. "These
> days I am creating tools to enable users to quickly design, program, and
> 3-D print their own personal robots using data-driven tools." OpenSCAD
> certainly is used for designing 3D printed robots, and one of the original
> use cases was for modelling 3D printers, so your project might be of more
> interest to the community than you suggested.
>
> On 23 July 2015 at 16:10, Andrew Spielberg <aespielberg@gmail.com> wrote:
>
>> Hi Torsten,
>>
>> No online stuff yet - some stuff is submitted but it's not published
>> yet. A bunch of stuff in the works. But I have some infrastructure up for
>> using OpenSCAD and would like to make the most of it for as long as
>> possible.
>>
>> The functionality is something that is not related to geometric
>> modeling. I'm looking for a way to, essentially, place specific
>> electronics on objects being fabricated. It's not something that you'd
>> want in the core functionality of OpenSCAD, because that's not something
>> OpenSCAD is typically used for. But, if people wanted to use my system, it
>> would be nice to be able to have it built on top of OpenSCAD.
>>
>> -Andy S.
>>
>> Andrew Spielberg
>> PhD Student
>> MIT - Computer Science and Artificial Intelligence Laboratory
>>
>> On Thu, Jul 23, 2015 at 2:30 PM, Torsten Paul <Torsten.Paul@gmx.de>
>> wrote:
>>
>>> On 07/23/2015 08:03 PM, aespielberg wrote:
>>>
>>>> I am currently working on a research project in fabrication. I am
>>>> hoping to
>>>> make my work more accessible by including it as a plug-in to one of
>>>> several
>>>> general CAD/design tools. I am currently considering OpenSCAD,
>>>> Sketchup,
>>>> Meshmixer, and Blender, but I use OpenSCAD already for a lot of my
>>>> research,
>>>> so I would like to use it if possible.
>>>>
>>>> Any online pointers for the curious?
>>>
>>> I am hoping in particular for a way I can develop a plug-in to OpenSCAD,
>>>> rather than developing directly in the core API. I would like users to
>>>> be
>>>> able to download my package, and then install it as an add-on. Is there
>>>> infrastructure for doing this or something similar with OpenSCAD?
>>>>
>>>> There is currently no plug-in API. What type of functionality is it
>>> about?
>>> Why would a plug-in be better than having the feature integrated?
>>>
>>> ciao,
>>> Torsten.
>>>
>>>
>>> _______________________________________________
>>> 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
>>
>>
>
> _______________________________________________
> OpenSCAD mailing list
> Discuss@lists.openscad.org
> http://lists.openscad.org/mailman/listinfo/discuss_lists.openscad.org
>
>
M
MichaelAtOz
Thu, Jul 23, 2015 10:36 PM
Hi Andy,
What licence is typically applied to your work? Is that part of the reason
for a plug-in?
Michael
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. This work is published globally via the internet. :) Inclusion of works of previous authors is not included in the above.
View this message in context: http://forum.openscad.org/Plugin-API-for-OpenSCAD-tp13273p13282.html
Sent from the OpenSCAD mailing list archive at Nabble.com.
Hi Andy,
What licence is typically applied to your work? Is that part of the reason
for a plug-in?
Michael
-----
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. This work is published globally via the internet. :) 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/
--
View this message in context: http://forum.openscad.org/Plugin-API-for-OpenSCAD-tp13273p13282.html
Sent from the OpenSCAD mailing list archive at Nabble.com.
DM
doug moen
Fri, Jul 24, 2015 12:26 PM
OpenSCAD may already have some of the capabilities you need:
- There is an include statement. You can define an external library of
functions, implemented as an OpenSCAD script, and include it into
another OpenSCAD program.
- The 'color' module can be used to apply an arbitrary color to a
geometric object; the color is only visible in preview mode, and
doesn't affect the exported model.
- The background modifier '%' allows you to include additional
geometry that is displayed in preview mode, but which is not part of
the final rendered model that is exported to STL. This additional
background geometry can be colored. This might be useful for
visualizing electronic components which are not part of the rendered
model.
You mention "adding to the export options". Currently, people do this
by abusing the "echo" command, which prints diagnostic messages to
either the console window, or to standard error if openscad is invoked
non-interactively from the command line. The trick used is to invoke
OpenSCAD non-interactively on an OpenSCAD script, collect the standard
error output, extract the 'echo' output and transform that into the
file that you wanted to export.
All of this is potentially useful if you are using OpenSCAD strictly
as a back end. As for adding an application specific front-end GUI to
OpenSCAD, I am not sure how that would work. What I can say is that
OpenSCAD is written in C++ and uses the Qt library to construct its
GUI. So you could write your GUI in Qt and hack that into OpenSCAD.
Hypothetically, if we supported a GUI automation API, then your GUI
could run as a separate program, and control the OpenSCAD GUI using
this automation API. There are existing tools for automating a QT GUI
without modifying the program (they are used for automated GUI
testing), and maybe that approach would be useful for your front end.
Lots of projects use OpenSCAD as a back end. It's not something I have
much experience with. It's possible you could use OpenSCAD as a back
end in its current state. It's also possible that we could add
features that would make this easier for you, and which would also be
of general interest to other people using OpenSCAD as a back end.
Doug Moen.
On 23/07/2015, Andrew Spielberg aespielberg@gmail.com wrote:
Oops - I keep meaning to disable my signature for exactly that reason >_>
Torsten: Nope, I don't frequent IRC much - that definitely wasn't me. But
I'm not surprised there are a bunch of people wanting to do that sort of
thing.
We are still fleshing out exactly what we want to do - going to decide on
our scope and platform we'll be developing on in the next week. But we
should have an OpenSCAD model with a bunch of parts. And then we plan on
placing an electronic device in a particular location. Ideally, we'd like
to tag it with some metadata. Beyond that, I am not 100% positive what
else we need to do yet.
From an API perspective, for plug-in development, I don't typically think
too much about that - usually I just have to deal with whatever the API
developer came up with :-p. But I suppose mostly I'd want to be able to
define a special display window (allowing me to override the default output
with a personalized output), the ability to add more custom built-in
functions to the language (maybe like an include statement), and the
ability to add to the export options by overriding some default function.
That's the high-level idea of what I'm thinking. And maybe have all the
new things added color-coded so users knew that that was plug-in specific.
That's sort of what I was thinking.
So, reviewing Doug's list now that I've typed this out, it seems we're
matched up pretty well on what I was thinking.
I've used OpenSCAD as a backend before for my research and it works very
well for that purpose - and I may go that route again, although that
requires me to create a GUI from scratch, which will likely then be much
more crude than I'd like. Or I may fork the project and embed my
functionality directly (not ideal because then I won't be able to keep up
with how OpenSCAD evolves), or I may go a different route altogether.
Doug: We use OpenSCAD for robotics a bit, and it's been working quite well,
but I think the specific electronics we have in mind for *this *particular
project are probably outside the scope of something you'd permanently want
in OpenSCAD.
-Andy S.
On Thu, Jul 23, 2015 at 5:11 PM, doug moen doug@moens.org wrote:
Hi Andy. I have questions, I'd like to understand how the OpenSCAD
integration is supposed to work.
- Would you be adding new operations to the OpenSCAD language? New
data types?
- What kind of output do you need to generate? Is the result an STL
file, or something different from the current export formats?
- Do you need to extend the OpenSCAD GUI?
Since you gave your affiliation, I thought it okay to google you. "These
days I am creating tools to enable users to quickly design, program, and
3-D print their own personal robots using data-driven tools." OpenSCAD
certainly is used for designing 3D printed robots, and one of the
original
use cases was for modelling 3D printers, so your project might be of more
interest to the community than you suggested.
On 23 July 2015 at 16:10, Andrew Spielberg aespielberg@gmail.com wrote:
Hi Torsten,
No online stuff yet - some stuff is submitted but it's not published
yet. A bunch of stuff in the works. But I have some infrastructure up
for
using OpenSCAD and would like to make the most of it for as long as
possible.
The functionality is something that is not related to geometric
modeling. I'm looking for a way to, essentially, place specific
electronics on objects being fabricated. It's not something that you'd
want in the core functionality of OpenSCAD, because that's not something
OpenSCAD is typically used for. But, if people wanted to use my system,
it
would be nice to be able to have it built on top of OpenSCAD.
-Andy S.
Andrew Spielberg
PhD Student
MIT - Computer Science and Artificial Intelligence Laboratory
On Thu, Jul 23, 2015 at 2:30 PM, Torsten Paul Torsten.Paul@gmx.de
wrote:
On 07/23/2015 08:03 PM, aespielberg wrote:
I am currently working on a research project in fabrication. I am
hoping to
make my work more accessible by including it as a plug-in to one of
several
general CAD/design tools. I am currently considering OpenSCAD,
Sketchup,
Meshmixer, and Blender, but I use OpenSCAD already for a lot of my
research,
so I would like to use it if possible.
Any online pointers for the curious?
I am hoping in particular for a way I can develop a plug-in to
OpenSCAD,
rather than developing directly in the core API. I would like users
to
be
able to download my package, and then install it as an add-on. Is
there
infrastructure for doing this or something similar with OpenSCAD?
There is currently no plug-in API. What type of functionality is it
OpenSCAD may already have some of the capabilities you need:
* There is an include statement. You can define an external library of
functions, implemented as an OpenSCAD script, and include it into
another OpenSCAD program.
* The 'color' module can be used to apply an arbitrary color to a
geometric object; the color is only visible in preview mode, and
doesn't affect the exported model.
* The background modifier '%' allows you to include additional
geometry that is displayed in preview mode, but which is not part of
the final rendered model that is exported to STL. This additional
background geometry can be colored. This might be useful for
visualizing electronic components which are not part of the rendered
model.
You mention "adding to the export options". Currently, people do this
by abusing the "echo" command, which prints diagnostic messages to
either the console window, or to standard error if openscad is invoked
non-interactively from the command line. The trick used is to invoke
OpenSCAD non-interactively on an OpenSCAD script, collect the standard
error output, extract the 'echo' output and transform that into the
file that you wanted to export.
All of this is potentially useful if you are using OpenSCAD strictly
as a back end. As for adding an application specific front-end GUI to
OpenSCAD, I am not sure how that would work. What I can say is that
OpenSCAD is written in C++ and uses the Qt library to construct its
GUI. So you could write your GUI in Qt and hack that into OpenSCAD.
Hypothetically, if we supported a GUI automation API, then your GUI
could run as a separate program, and control the OpenSCAD GUI using
this automation API. There are existing tools for automating a QT GUI
without modifying the program (they are used for automated GUI
testing), and maybe that approach would be useful for your front end.
Lots of projects use OpenSCAD as a back end. It's not something I have
much experience with. It's possible you could use OpenSCAD as a back
end in its current state. It's also possible that we could add
features that would make this easier for you, and which would also be
of general interest to other people using OpenSCAD as a back end.
Doug Moen.
On 23/07/2015, Andrew Spielberg <aespielberg@gmail.com> wrote:
> Oops - I keep meaning to disable my signature for exactly that reason >_>
>
> Torsten: Nope, I don't frequent IRC much - that definitely wasn't me. But
> I'm not surprised there are a bunch of people wanting to do that sort of
> thing.
>
> We are still fleshing out exactly what we want to do - going to decide on
> our scope and platform we'll be developing on in the next week. But we
> should have an OpenSCAD model with a bunch of parts. And then we plan on
> placing an electronic device in a particular location. Ideally, we'd like
> to tag it with some metadata. Beyond that, I am not 100% positive what
> else we need to do yet.
>
> From an API perspective, for plug-in development, I don't typically think
> too much about that - usually I just have to deal with whatever the API
> developer came up with :-p. But I suppose mostly I'd want to be able to
> define a special display window (allowing me to override the default output
> with a personalized output), the ability to add more custom built-in
> functions to the language (maybe like an include statement), and the
> ability to add to the export options by overriding some default function.
> That's the high-level idea of what I'm thinking. And maybe have all the
> new things added color-coded so users knew that that was plug-in specific.
> That's sort of what I was thinking.
>
> So, reviewing Doug's list now that I've typed this out, it seems we're
> matched up pretty well on what I was thinking.
>
> I've used OpenSCAD as a backend before for my research and it works very
> well for that purpose - and I may go that route again, although that
> requires me to create a GUI from scratch, which will likely then be much
> more crude than I'd like. Or I may fork the project and embed my
> functionality directly (not ideal because then I won't be able to keep up
> with how OpenSCAD evolves), or I may go a different route altogether.
>
> Doug: We use OpenSCAD for robotics a bit, and it's been working quite well,
> but I think the specific electronics we have in mind for *this *particular
> project are probably outside the scope of something you'd permanently want
> in OpenSCAD.
>
> -Andy S.
>
>
> On Thu, Jul 23, 2015 at 5:11 PM, doug moen <doug@moens.org> wrote:
>
>> Hi Andy. I have questions, I'd like to understand how the OpenSCAD
>> integration is supposed to work.
>>
>> - Would you be adding new operations to the OpenSCAD language? New
>> data types?
>> - What kind of output do you need to generate? Is the result an STL
>> file, or something different from the current export formats?
>> - Do you need to extend the OpenSCAD GUI?
>>
>> Since you gave your affiliation, I thought it okay to google you. "These
>> days I am creating tools to enable users to quickly design, program, and
>> 3-D print their own personal robots using data-driven tools." OpenSCAD
>> certainly is used for designing 3D printed robots, and one of the
>> original
>> use cases was for modelling 3D printers, so your project might be of more
>> interest to the community than you suggested.
>>
>> On 23 July 2015 at 16:10, Andrew Spielberg <aespielberg@gmail.com> wrote:
>>
>>> Hi Torsten,
>>>
>>> No online stuff yet - some stuff is submitted but it's not published
>>> yet. A bunch of stuff in the works. But I have some infrastructure up
>>> for
>>> using OpenSCAD and would like to make the most of it for as long as
>>> possible.
>>>
>>> The functionality is something that is not related to geometric
>>> modeling. I'm looking for a way to, essentially, place specific
>>> electronics on objects being fabricated. It's not something that you'd
>>> want in the core functionality of OpenSCAD, because that's not something
>>> OpenSCAD is typically used for. But, if people wanted to use my system,
>>> it
>>> would be nice to be able to have it built on top of OpenSCAD.
>>>
>>> -Andy S.
>>>
>>> Andrew Spielberg
>>> PhD Student
>>> MIT - Computer Science and Artificial Intelligence Laboratory
>>>
>>> On Thu, Jul 23, 2015 at 2:30 PM, Torsten Paul <Torsten.Paul@gmx.de>
>>> wrote:
>>>
>>>> On 07/23/2015 08:03 PM, aespielberg wrote:
>>>>
>>>>> I am currently working on a research project in fabrication. I am
>>>>> hoping to
>>>>> make my work more accessible by including it as a plug-in to one of
>>>>> several
>>>>> general CAD/design tools. I am currently considering OpenSCAD,
>>>>> Sketchup,
>>>>> Meshmixer, and Blender, but I use OpenSCAD already for a lot of my
>>>>> research,
>>>>> so I would like to use it if possible.
>>>>>
>>>>> Any online pointers for the curious?
>>>>
>>>> I am hoping in particular for a way I can develop a plug-in to
>>>> OpenSCAD,
>>>>> rather than developing directly in the core API. I would like users
>>>>> to
>>>>> be
>>>>> able to download my package, and then install it as an add-on. Is
>>>>> there
>>>>> infrastructure for doing this or something similar with OpenSCAD?
>>>>>
>>>>> There is currently no plug-in API. What type of functionality is it
>>>> about?
>>>> Why would a plug-in be better than having the feature integrated?
>>>>
>>>> ciao,
>>>> Torsten.
>>>>
>>>>
>>>> _______________________________________________
>>>> 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
>>>
>>>
>>
>> _______________________________________________
>> OpenSCAD mailing list
>> Discuss@lists.openscad.org
>> http://lists.openscad.org/mailman/listinfo/discuss_lists.openscad.org
>>
>>
>
B
bobc
Fri, Jul 24, 2015 3:02 PM
A plugin for a GPL program should also be licensed as GPL, unless the plugin
is a separate program. The FSF are quite clear on that point -
http://www.gnu.org/licenses/gpl-faq.en.html#GPLAndPlugins.
Personally I don't think a plug-in via separate programs is a usable method,
but it is possible.
As OpenSCAD is GPL, I would expect an integrated OpenScad plugin to be GPL
as well, so a plug-in API of the most useful sort would not be a way around
GPL.
--
View this message in context: http://forum.openscad.org/Plugin-API-for-OpenSCAD-tp13273p13286.html
Sent from the OpenSCAD mailing list archive at Nabble.com.
A plugin for a GPL program should also be licensed as GPL, unless the plugin
is a separate program. The FSF are quite clear on that point -
http://www.gnu.org/licenses/gpl-faq.en.html#GPLAndPlugins.
Personally I don't think a plug-in via separate programs is a usable method,
but it is possible.
As OpenSCAD is GPL, I would expect an integrated OpenScad plugin to be GPL
as well, so a plug-in API of the most useful sort would not be a way around
GPL.
--
View this message in context: http://forum.openscad.org/Plugin-API-for-OpenSCAD-tp13273p13286.html
Sent from the OpenSCAD mailing list archive at Nabble.com.
AS
Andrew Spielberg
Fri, Jul 24, 2015 4:13 PM
Michael: Licenses change depending on the application and who is leading
the project. I am not yet sure if this code is going to be released - I am
hoping it will be but due to various constraints it may not be possible. I
prefer BSD if and when I release code, but licensing is not the main
constraint here.
doug: thank you for that extremely helpful post. Being able to do things
with color, export, and includes may be enough. I'll talk about this with
my collaborators and see if it would be sufficient. If the GUI is the only
thing holding us back, we might be able to come up with a clever workaround.
bobc: Thank you for the clarification on plug-ins and GPL licensing.
-Andy S.
On Fri, Jul 24, 2015 at 11:02 AM, bobc bobcousins42@googlemail.com wrote:
Michael: Licenses change depending on the application and who is leading
the project. I am not yet sure if this code is going to be released - I am
hoping it will be but due to various constraints it may not be possible. I
prefer BSD if and when I release code, but licensing is not the main
constraint here.
doug: thank you for that extremely helpful post. Being able to do things
with color, export, and includes may be enough. I'll talk about this with
my collaborators and see if it would be sufficient. If the GUI is the only
thing holding us back, we might be able to come up with a clever workaround.
bobc: Thank you for the clarification on plug-ins and GPL licensing.
-Andy S.
On Fri, Jul 24, 2015 at 11:02 AM, bobc <bobcousins42@googlemail.com> wrote:
> A plugin for a GPL program should also be licensed as GPL, unless the
> plugin
> is a separate program. The FSF are quite clear on that point -
> http://www.gnu.org/licenses/gpl-faq.en.html#GPLAndPlugins.
>
> Personally I don't think a plug-in via separate programs is a usable
> method,
> but it is possible.
>
> As OpenSCAD is GPL, I would expect an integrated OpenScad plugin to be GPL
> as well, so a plug-in API of the most useful sort would not be a way around
> GPL.
>
>
>
>
> --
> View this message in context:
> http://forum.openscad.org/Plugin-API-for-OpenSCAD-tp13273p13286.html
> Sent from the OpenSCAD mailing list archive at Nabble.com.
>
> _______________________________________________
> OpenSCAD mailing list
> Discuss@lists.openscad.org
> http://lists.openscad.org/mailman/listinfo/discuss_lists.openscad.org
>