_
_ac4200_
Thu, Jun 28, 2018 6:18 PM
Hello All,
I have a question regarding importing files out of openscad, and into other
'parametric' based modelling programs.
I plan on creating the attached image (only the "1" part, the blue piece of
material with the gradient pattern) in openscad. It is a mesh plate with a
circular gradient pattern, governed by several parametric inputs (density,
distribution, ... etc.)
My question is: If I send this file to a 3rd party, and they open it in a
common Cad program (solidworks, grasshopper, ... etc,) How easy is it to
manipulate?
- Is the pattern "baked" in?
- Can they manipulate the pattern by directly editing the code through their
respected CAD platform?
- How easy is this to do?
Thanks!
Alex
(reference Image 1)
http://forum.openscad.org/file/t2277/mesh-example.jpg
--
Sent from: http://forum.openscad.org/
Hello All,
I have a question regarding importing files out of openscad, and into other
'parametric' based modelling programs.
I plan on creating the attached image (only the "1" part, the blue piece of
material with the gradient pattern) in openscad. It is a mesh plate with a
circular gradient pattern, governed by several parametric inputs (density,
distribution, ... etc.)
My question is: If I send this file to a 3rd party, and they open it in a
common Cad program (solidworks, grasshopper, ... etc,) How easy is it to
manipulate?
- Is the pattern "baked" in?
- Can they manipulate the pattern by directly editing the code through their
respected CAD platform?
- How easy is this to do?
Thanks!
Alex
(reference Image 1)
<http://forum.openscad.org/file/t2277/mesh-example.jpg>
--
Sent from: http://forum.openscad.org/
F
fred_dot_u
Thu, Jun 28, 2018 7:13 PM
Easy is such a subjective term.
From my very limited experience and even more limited ability, I can tell
you that someone with halfway decent skills in Fusion 360 can import an STL
file and modify it an any way desired. At the point of import, there are no
parametric aspects to the model, but the Fusion 360 operator can assign such
attributes, again, if he is suitably skilled.
I had to extend a Thingiverse STL file, and used Fusion 360 because it
allowed me to slice the part in two and connect the then-separated parts
after converting the STL to a Fusion 360-friendly component.
Blender wizards will also be able to modify any STL, but it's far more
difficult to do so from a parametric standpoint.
I am not qualified to address other packages.
--
Sent from: http://forum.openscad.org/
Easy is such a subjective term.
>From my very limited experience and even more limited ability, I can tell
you that someone with halfway decent skills in Fusion 360 can import an STL
file and modify it an any way desired. At the point of import, there are no
parametric aspects to the model, but the Fusion 360 operator can assign such
attributes, again, if he is suitably skilled.
I had to extend a Thingiverse STL file, and used Fusion 360 because it
allowed me to slice the part in two and connect the then-separated parts
after converting the STL to a Fusion 360-friendly component.
Blender wizards will also be able to modify any STL, but it's far more
difficult to do so from a parametric standpoint.
I am not qualified to address other packages.
--
Sent from: http://forum.openscad.org/
M
MichaelAtOz
Thu, Jun 28, 2018 10:19 PM
- Is the pattern "baked" in?
- Can they manipulate the pattern by directly editing the code through
their
respected CAD platform?
- How easy is this to do?
Baring the non-parametric editing Fred mentioned.
YES.
NO, unless they use OpenSCAD (or derivatives).
Not.
Many other 'standard' CAD platforms can export/import,
if you plan to do this often or iteratively you would be better
off finding a traditional CAD package.
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!
Sent from: http://forum.openscad.org/
_ac4200_ wrote
> - Is the pattern "baked" in?
> - Can they manipulate the pattern by directly editing the code through
> their
> respected CAD platform?
> - How easy is this to do?
Baring the non-parametric editing Fred mentioned.
YES.
NO, unless they use OpenSCAD (or derivatives).
Not.
Many other 'standard' CAD platforms can export/import,
if you plan to do this often or iteratively you would be better
off finding a traditional CAD package.
-----
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!
--
Sent from: http://forum.openscad.org/
_
_ac4200_
Fri, Jun 29, 2018 2:21 PM
Hey all,
Thanks... pretty much I figured as much, cross platform anything is always a
problem. That being said - what comes to mind is the STEP (.stp) file
format.
STEP files encode parametric information, and allow cross platform
manipulation (although its a propriety format.) So I assume that a STEP file
format. So I assume that because its proprietary I can't make use of it in
openscad?
Is this because it's proprietary? Or is it just the case of someone needs to
figure out how to do it?
--
Sent from: http://forum.openscad.org/
Hey all,
Thanks... pretty much I figured as much, cross platform anything is always a
problem. That being said - what comes to mind is the STEP (.stp) file
format.
STEP files encode parametric information, and allow cross platform
manipulation (although its a propriety format.) So I assume that a STEP file
format. So I assume that because its proprietary I can't make use of it in
openscad?
Is this because it's proprietary? Or is it just the case of someone needs to
figure out how to do it?
--
Sent from: http://forum.openscad.org/
MF
Michael Frey
Fri, Jun 29, 2018 4:15 PM
On 29.06.2018 16:21, ac4200 wrote:
Hey all,
Thanks... pretty much I figured as much, cross platform anything is always a
problem. That being said - what comes to mind is the STEP (.stp) file
format.
STEP files encode parametric information, and allow cross platform
manipulation (although its a propriety format.) So I assume that a STEP file
format. So I assume that because its proprietary I can't make use of it in
openscad?
Is this because it's proprietary? Or is it just the case of someone needs to
figure out how to do it?
Step requires a different approach to 3D Modeling. That is the problem.
OpenSCAD works Mesh based.
To some extend, OpenSCAD is just a layer on top of OpenCSG - if OpenCSG
does not support a format, we have a hard time emulating it.
An alternative to OpenCSG that supports Step would be OpenCASCADE.
https://github.com/openscad/openscad/issues/1998
but again: OpenSCAD is build on OpenCSG - a lot of OpenSCADs features
are directly based on OpenCSG functionality.
Some of the Operations OpenSCAD is using are heavily based on mesh
manipulation and are a pain to transfer to any other CAD approach - most
famous is the minkowski sum, but even simple things like hull can be an
issue.
To some extend, it would be really cool if even just a sub-set of
OpenSCAD commands could be used to for both Step and STL - but using
Freecad exactly that is already possible:
https://freecadweb.org/wiki/Import_OpenSCAD_code
With Kind regards,
Michael Frey
On 29.06.2018 16:21, _ac4200_ wrote:
> Hey all,
> Thanks... pretty much I figured as much, cross platform anything is always a
> problem. That being said - what comes to mind is the STEP (.stp) file
> format.
>
> STEP files encode parametric information, and allow cross platform
> manipulation (although its a propriety format.) So I assume that a STEP file
> format. So I assume that because its proprietary I can't make use of it in
> openscad?
>
> Is this because it's proprietary? Or is it just the case of someone needs to
> figure out how to do it?
Step requires a different approach to 3D Modeling. That is the problem.
OpenSCAD works Mesh based.
To some extend, OpenSCAD is just a layer on top of OpenCSG - if OpenCSG
does not support a format, we have a hard time emulating it.
An alternative to OpenCSG that supports Step would be OpenCASCADE.
https://github.com/openscad/openscad/issues/1998
but again: OpenSCAD is build on OpenCSG - a lot of OpenSCADs features
are directly based on OpenCSG functionality.
Some of the Operations OpenSCAD is using are heavily based on mesh
manipulation and are a pain to transfer to any other CAD approach - most
famous is the minkowski sum, but even simple things like hull can be an
issue.
To some extend, it would be really cool if even just a sub-set of
OpenSCAD commands could be used to for both Step and STL - but using
Freecad exactly that is already possible:
https://freecadweb.org/wiki/Import_OpenSCAD_code
With Kind regards,
Michael Frey
HL
Hans L
Fri, Jun 29, 2018 4:19 PM
STEP is defined by ISO standard 10303. https://en.wikipedia.org/wiki/ISO_10303
The standard is split across many "parts", with each part sold
individually as its own document.
https://en.wikipedia.org/wiki/List_of_STEP_(ISO_10303)_parts
I have no idea how many / which of these parts would be relevant for
OpenSCAD or similar application, but I'm guessing a ballpark of at
least 1000 USD.
I wouldn't say the issue is specifically that its "Proprietary", as to
me that would imply that there are patent conflicts or trade secrets
etc involved. They specifications are open in the sense that anyone
is permitted to implement it as far as I understand.
Its just that the information required to implement it is behing a
paywall which makes it quite unappealing for unpaid volunteers.
One question in my mind is, say that some day OpenSCAD project decides
it was worth implementing STEP and legitimately acquires the
specifications for it; legally would that require purchasing a copy
of each part for every developer that wanted to look at it?
Also, even assuming you have access to the specification for STEP,
there's the issue of all the developer-hours required to actual create
an implementation library and interfacing it with the rest of OpenSCAD
(or creating a whole new application altogether).
Hans
On Fri, Jun 29, 2018 at 9:21 AM ac4200 alexandercollier12@gmail.com wrote:
Hey all,
Thanks... pretty much I figured as much, cross platform anything is always a
problem. That being said - what comes to mind is the STEP (.stp) file
format.
STEP files encode parametric information, and allow cross platform
manipulation (although its a propriety format.) So I assume that a STEP file
format. So I assume that because its proprietary I can't make use of it in
openscad?
Is this because it's proprietary? Or is it just the case of someone needs to
figure out how to do it?
--
Sent from: http://forum.openscad.org/
OpenSCAD mailing list
Discuss@lists.openscad.org
http://lists.openscad.org/mailman/listinfo/discuss_lists.openscad.org
STEP is defined by ISO standard 10303. https://en.wikipedia.org/wiki/ISO_10303
The standard is split across many "parts", with each part sold
individually as its own document.
https://en.wikipedia.org/wiki/List_of_STEP_(ISO_10303)_parts
I have no idea how many / which of these parts would be relevant for
OpenSCAD or similar application, but I'm guessing a ballpark of at
least 1000 USD.
I wouldn't say the issue is specifically that its "Proprietary", as to
me that would imply that there are patent conflicts or trade secrets
etc involved. They specifications are open in the sense that anyone
is permitted to implement it as far as I understand.
Its just that the information required to implement it is behing a
paywall which makes it quite unappealing for unpaid volunteers.
One question in my mind is, say that some day OpenSCAD project decides
it was worth implementing STEP and legitimately acquires the
specifications for it; legally would that require purchasing a copy
of each part for every developer that wanted to look at it?
Also, even assuming you have access to the specification for STEP,
there's the issue of all the developer-hours required to actual create
an implementation library and interfacing it with the rest of OpenSCAD
(or creating a whole new application altogether).
Hans
On Fri, Jun 29, 2018 at 9:21 AM _ac4200_ <alexandercollier12@gmail.com> wrote:
>
> Hey all,
> Thanks... pretty much I figured as much, cross platform anything is always a
> problem. That being said - what comes to mind is the STEP (.stp) file
> format.
>
> STEP files encode parametric information, and allow cross platform
> manipulation (although its a propriety format.) So I assume that a STEP file
> format. So I assume that because its proprietary I can't make use of it in
> openscad?
>
> Is this because it's proprietary? Or is it just the case of someone needs to
> figure out how to do it?
>
>
>
>
>
> --
> Sent from: http://forum.openscad.org/
>
> _______________________________________________
> OpenSCAD mailing list
> Discuss@lists.openscad.org
> http://lists.openscad.org/mailman/listinfo/discuss_lists.openscad.org
_
_ac4200_
Fri, Jun 29, 2018 6:56 PM
This is getting super interesting. So basic question (probably?,) but as far
as I am understanding there appears to be 2 approaches to solid modelling
programs:
- mesh based
- parametric based
is that it (or at least most common?) Is there a good piece of literature to
describe this? Advantages.. Disadvantages..? A lot of questions on this one,
but I would prefer not to clog up the forum if there is something good to
read.
--
Sent from: http://forum.openscad.org/
This is getting super interesting. So basic question (probably?,) but as far
as I am understanding there appears to be 2 approaches to solid modelling
programs:
- mesh based
- parametric based
is that it (or at least most common?) Is there a good piece of literature to
describe this? Advantages.. Disadvantages..? A lot of questions on this one,
but I would prefer not to clog up the forum if there is something good to
read.
--
Sent from: http://forum.openscad.org/
DM
doug moen
Fri, Jun 29, 2018 7:49 PM
Mesh based and parametric spline based solid modelling systems are both
examples of "boundary representation". You aren't representing a solid
directly, you are representing the solid's boundary using meshes or
splines. This is the main stream, old school, standard way to do CAD.
The alternative is the family of volumetric representations, which directly
represent solid objects as volumes. Volumetric solid modelling tools are
not as common or popular, especially in CAD, for historical reasons. The
GPU tech that makes volumetric so fast and powerful hasn't been around very
long. One approach is to represent a solid as a voxel grid. Think of
Minecraft. Or, medical imaging like MRI scans are represented this way.
There have been some artistic/sculptural tools based on this technology,
where the user interface is like modelling with clay. Or, if you want an
OpenSCAD-like language, there is the ShapeJS language, built on the AbFab3D
library. You get a somewhat different set of operations than OpenSCAD,
based on what operations and algorithms work well on voxel grids. One
interesting subclass of volumetric representation is the signed distance
field, or SDF. This can be thought of as a function that maps every point
(x,y,z) in 3D space onto a signed distance value, which is the distance
from that point to the boundary. There is a voxel version of the SDF, and
there is a function version, where shapes are represented by mathematical
functions (aka F-Rep). A number of people on this list have already
discovered two OpenSCAD-like solid modelling languages based on SDFs and
F-Rep. One is Libfive https://github.com/libfive/libfive, by Matt Keeter,
and the other is my project, called Curv https://github.com/doug-moen/curv,
which implements SDF F-Rep on the GPU using sphere tracing to render full
colour animated models in real time.
Here's something I wrote a year ago concerning signed distance fields and
F-Rep: https://github.com/doug-moen/curv/blob/master/docs/Theory.rst
On 29 June 2018 at 14:56, ac4200 alexandercollier12@gmail.com wrote:
Mesh based and parametric spline based solid modelling systems are both
examples of "boundary representation". You aren't representing a solid
directly, you are representing the solid's boundary using meshes or
splines. This is the main stream, old school, standard way to do CAD.
The alternative is the family of volumetric representations, which directly
represent solid objects as volumes. Volumetric solid modelling tools are
not as common or popular, especially in CAD, for historical reasons. The
GPU tech that makes volumetric so fast and powerful hasn't been around very
long. One approach is to represent a solid as a voxel grid. Think of
Minecraft. Or, medical imaging like MRI scans are represented this way.
There have been some artistic/sculptural tools based on this technology,
where the user interface is like modelling with clay. Or, if you want an
OpenSCAD-like language, there is the ShapeJS language, built on the AbFab3D
library. You get a somewhat different set of operations than OpenSCAD,
based on what operations and algorithms work well on voxel grids. One
interesting subclass of volumetric representation is the signed distance
field, or SDF. This can be thought of as a function that maps every point
(x,y,z) in 3D space onto a signed distance value, which is the distance
from that point to the boundary. There is a voxel version of the SDF, and
there is a function version, where shapes are represented by mathematical
functions (aka F-Rep). A number of people on this list have already
discovered two OpenSCAD-like solid modelling languages based on SDFs and
F-Rep. One is Libfive <https://github.com/libfive/libfive>, by Matt Keeter,
and the other is my project, called Curv <https://github.com/doug-moen/curv>,
which implements SDF F-Rep on the GPU using sphere tracing to render full
colour animated models in real time.
Here's something I wrote a year ago concerning signed distance fields and
F-Rep: https://github.com/doug-moen/curv/blob/master/docs/Theory.rst
On 29 June 2018 at 14:56, _ac4200_ <alexandercollier12@gmail.com> wrote:
> This is getting super interesting. So basic question (probably?,) but as
> far
> as I am understanding there appears to be 2 approaches to solid modelling
> programs:
>
> - mesh based
> - parametric based
>
> is that it (or at least most common?) Is there a good piece of literature
> to
> describe this? Advantages.. Disadvantages..? A lot of questions on this
> one,
> but I would prefer not to clog up the forum if there is something good to
> read.
>
>
>
>
>
>
>
>
>
> --
> Sent from: http://forum.openscad.org/
>
> _______________________________________________
> OpenSCAD mailing list
> Discuss@lists.openscad.org
> http://lists.openscad.org/mailman/listinfo/discuss_lists.openscad.org
>
_
_ac4200_
Fri, Jun 29, 2018 8:02 PM
Very cool, definitely going to read up on that! I guess my question, moving
forward is:
- eliminating the technological component (processing power is equal across
the board)
How do you choose which 'methodology'/langauge to employ?
- is it a question of what you are modelling (geometry and whatnot) ?
- Is it a question of application (manufacturing and designing constraints)
post design?
- Is it vague and really just depends? As it's best to pick and choose per
project? Combine different languages to solve different design problems?
Engineering Vs. Design?
--
Sent from: http://forum.openscad.org/
Very cool, definitely going to read up on that! I guess my question, moving
forward is:
- eliminating the technological component (processing power is equal across
the board)
How do you choose which 'methodology'/langauge to employ?
- is it a question of what you are modelling (geometry and whatnot) ?
- Is it a question of application (manufacturing and designing constraints)
post design?
- Is it vague and really just depends? As it's best to pick and choose per
project? Combine different languages to solve different design problems?
Engineering Vs. Design?
--
Sent from: http://forum.openscad.org/
DM
doug moen
Fri, Jun 29, 2018 9:31 PM
Pragmatically, if you want a mature, well supported CAD tool chain, then go
with a B-rep system. If you are doing conventional engineering work and are
trained in SolidWorks, then just use it. There's not much that's better for
that particular domain. It's not just about the underlying shape
representation, it's the ecosystem.
I think V-rep and signed distance fields are inherently more expressive and
powerful. I built Curv as a reaction to the limitations of OpenSCAD and
mesh-based representation. Curv uses functions to represent shapes. I can
represent curved, organic looking shapes and complex 3D fractals using a
compact, mathematically exact and continuous representation. I can design
full colour 3D printable objects that have colour gradients and
procedurally generated textures like wood grain and marble. (But I have to
use a service provider like Shapeways to print them.) There are lots of
useful operations available for V-rep, including arbitrary non-affine
transformations like bend and twist. The blending operators are
indispensable for creating smooth, organic shapes, but they can also create
fillets. Rendering and STL export are pretty fast. Volumetric
representations are a good match to the capabilities of 3D printers. There
are certain kinds of 3D models, like high resolution lattices used in
engineering applications, that can't be practically represented by triangle
meshes, but volumetric representations handle them with no problem. So for
3D printing certain kinds of models, you can't use STL or mesh files, you
need a different representation, and Curv fits in nicely. If you are using
an advanced 3D printer like a Stratasys J750, which can individually
control the flexibility, colour and transparency of the material at each
voxel in the interior of the model, then B-rep is useless, but volumetric
representations handle these kinds of models with no problem. Some people
in the video game and GPU industries are touting ray-tracing as the next
big thing. This is another technology where V-rep is a natural fit. To
ray-trace a triangle mesh, you have to create a V-rep representation of the
mesh, called an acceleration structure. Or you can just ray-trace V-rep
directly.
On 29 June 2018 at 16:02, ac4200 alexandercollier12@gmail.com wrote:
Very cool, definitely going to read up on that! I guess my question, moving
forward is:
- eliminating the technological component (processing power is equal across
the board)
How do you choose which 'methodology'/langauge to employ?
- is it a question of what you are modelling (geometry and whatnot) ?
- Is it a question of application (manufacturing and designing constraints)
post design?
- Is it vague and really just depends? As it's best to pick and choose per
project? Combine different languages to solve different design problems?
Engineering Vs. Design?
--
Sent from: http://forum.openscad.org/
OpenSCAD mailing list
Discuss@lists.openscad.org
http://lists.openscad.org/mailman/listinfo/discuss_lists.openscad.org
Pragmatically, if you want a mature, well supported CAD tool chain, then go
with a B-rep system. If you are doing conventional engineering work and are
trained in SolidWorks, then just use it. There's not much that's better for
that particular domain. It's not just about the underlying shape
representation, it's the ecosystem.
I think V-rep and signed distance fields are inherently more expressive and
powerful. I built Curv as a reaction to the limitations of OpenSCAD and
mesh-based representation. Curv uses functions to represent shapes. I can
represent curved, organic looking shapes and complex 3D fractals using a
compact, mathematically exact and continuous representation. I can design
full colour 3D printable objects that have colour gradients and
procedurally generated textures like wood grain and marble. (But I have to
use a service provider like Shapeways to print them.) There are lots of
useful operations available for V-rep, including arbitrary non-affine
transformations like bend and twist. The blending operators are
indispensable for creating smooth, organic shapes, but they can also create
fillets. Rendering and STL export are pretty fast. Volumetric
representations are a good match to the capabilities of 3D printers. There
are certain kinds of 3D models, like high resolution lattices used in
engineering applications, that can't be practically represented by triangle
meshes, but volumetric representations handle them with no problem. So for
3D printing certain kinds of models, you can't use STL or mesh files, you
need a different representation, and Curv fits in nicely. If you are using
an advanced 3D printer like a Stratasys J750, which can individually
control the flexibility, colour and transparency of the material at each
voxel in the interior of the model, then B-rep is useless, but volumetric
representations handle these kinds of models with no problem. Some people
in the video game and GPU industries are touting ray-tracing as the next
big thing. This is another technology where V-rep is a natural fit. To
ray-trace a triangle mesh, you have to create a V-rep representation of the
mesh, called an acceleration structure. Or you can just ray-trace V-rep
directly.
On 29 June 2018 at 16:02, _ac4200_ <alexandercollier12@gmail.com> wrote:
> Very cool, definitely going to read up on that! I guess my question, moving
> forward is:
>
> - eliminating the technological component (processing power is equal across
> the board)
>
> How do you choose which 'methodology'/langauge to employ?
>
> - is it a question of what you are modelling (geometry and whatnot) ?
> - Is it a question of application (manufacturing and designing constraints)
> post design?
> - Is it vague and really just depends? As it's best to pick and choose per
> project? Combine different languages to solve different design problems?
> Engineering Vs. Design?
>
>
>
>
>
>
> --
> Sent from: http://forum.openscad.org/
>
> _______________________________________________
> OpenSCAD mailing list
> Discuss@lists.openscad.org
> http://lists.openscad.org/mailman/listinfo/discuss_lists.openscad.org
>