Cross-Platform Parametric Manipulation - post openscad file manipulation

classic Classic list List threaded Threaded
10 messages Options
Reply | Threaded
Open this post in threaded view
|

Cross-Platform Parametric Manipulation - post openscad file manipulation

_ac4200_
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/

_______________________________________________
OpenSCAD mailing list
[hidden email]
http://lists.openscad.org/mailman/listinfo/discuss_lists.openscad.org
Reply | Threaded
Open this post in threaded view
|

Re: Cross-Platform Parametric Manipulation - post openscad file manipulation

fred_dot_u
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/

_______________________________________________
OpenSCAD mailing list
[hidden email]
http://lists.openscad.org/mailman/listinfo/discuss_lists.openscad.org
Reply | Threaded
Open this post in threaded view
|

Re: Cross-Platform Parametric Manipulation - post openscad file manipulation

MichaelAtOz
Administrator
In reply to this post by _ac4200_
_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/

_______________________________________________
OpenSCAD mailing list
[hidden email]
http://lists.openscad.org/mailman/listinfo/discuss_lists.openscad.org
Admin - email* me if you need anything,
or if I've done something stupid...
* click on my MichaelAtOz label, there is a link to email me.

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!
Reply | Threaded
Open this post in threaded view
|

Re: Cross-Platform Parametric Manipulation - post openscad file manipulation

_ac4200_
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
[hidden email]
http://lists.openscad.org/mailman/listinfo/discuss_lists.openscad.org
Reply | Threaded
Open this post in threaded view
|

Re: Cross-Platform Parametric Manipulation - post openscad file manipulation

MichaelPFrey
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


_______________________________________________
OpenSCAD mailing list
[hidden email]
http://lists.openscad.org/mailman/listinfo/discuss_lists.openscad.org
Reply | Threaded
Open this post in threaded view
|

Re: Cross-Platform Parametric Manipulation - post openscad file manipulation

thehans
In reply to this post by _ac4200_
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_ <[hidden email]> 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
> [hidden email]
> http://lists.openscad.org/mailman/listinfo/discuss_lists.openscad.org

_______________________________________________
OpenSCAD mailing list
[hidden email]
http://lists.openscad.org/mailman/listinfo/discuss_lists.openscad.org
Reply | Threaded
Open this post in threaded view
|

Re: Cross-Platform Parametric Manipulation - post openscad file manipulation

_ac4200_
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
[hidden email]
http://lists.openscad.org/mailman/listinfo/discuss_lists.openscad.org
Reply | Threaded
Open this post in threaded view
|

Re: Cross-Platform Parametric Manipulation - post openscad file manipulation

doug.moen
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, by Matt Keeter, and the other is my project, called 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_ <[hidden email]> 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
[hidden email]
http://lists.openscad.org/mailman/listinfo/discuss_lists.openscad.org


_______________________________________________
OpenSCAD mailing list
[hidden email]
http://lists.openscad.org/mailman/listinfo/discuss_lists.openscad.org
Reply | Threaded
Open this post in threaded view
|

Re: Cross-Platform Parametric Manipulation - post openscad file manipulation

_ac4200_
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
[hidden email]
http://lists.openscad.org/mailman/listinfo/discuss_lists.openscad.org
Reply | Threaded
Open this post in threaded view
|

Re: Cross-Platform Parametric Manipulation - post openscad file manipulation

doug.moen
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_ <[hidden email]> 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
[hidden email]
http://lists.openscad.org/mailman/listinfo/discuss_lists.openscad.org


_______________________________________________
OpenSCAD mailing list
[hidden email]
http://lists.openscad.org/mailman/listinfo/discuss_lists.openscad.org