dxf

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

dxf

mondo
Hi,

Thanks for all of your informative responses. I am sort of overwhelmed.
Hopefully I've attached a few files, if attachments work OK on the
mailing list. As I may have mentioned, I deleted the files that were not
usable, so I've recreated a couple of test files, and included one that
did work. All of the files were originally drawn using design cad (I'm
aware that it may not save in standard dxf format either, but R12 seems
to be most successful.)

So. for shape.dxf - openscad reports

> WARNING: Unsupported DXF Entity 'SEQEND' (1) in
> "c:/users/ray/desktop/shape.dxf".
> WARNING: Unsupported DXF Entity 'POLYLINE' (1) in
> "c:/users/ray/desktop/shape.dxf".
> WARNING: Unsupported DXF Entity 'VERTEX' (7) in
> "c:/users/ray/desktop/shape.dxf".

but the shape could not be much simpler. Within  designcad, I've no idea
how to not have polylines, vertexes, etc. , but I have not looked into
the dxf format in any detail.

can2.dxf, that loads fine into openscad. That was also drawn in
designcad (by manually tracing a background jpeg image),  but I loaded
it into, and resaved via my cnc software.

I've added a couple of stl files, too.

shape.stl was the same drawing file that was saved as shape.dxf, but
saved as stl. It will not reload into designcad, nor display in meshlab.

shape2.stl is the same drawing, but within design cad it is selected and
made into a plane. That loads into meshlab fine, but not into openscad.
But, If i manipulate it in designcad to make it a solid, instead of a
plane, then it can be used by openscad.

I have numerous more complex  dxf files, that I've not tried to import
into openscad - I've no requirement to do so. I'm pretty certain they
would not import, but if anyone wants them as test data, then let me know.

Best wishes.

Ray


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

shape.dxf (15K) Download Attachment
can2.DXF (4K) Download Attachment
shape.stl (114 bytes) Download Attachment
shape2.stl (390 bytes) Download Attachment
Reply | Threaded
Open this post in threaded view
|

Re: dxf

cacb
On 27.07.2020 13:27, Ray West wrote:

> So. for shape.dxf - openscad reports
>
>> WARNING: Unsupported DXF Entity 'SEQEND' (1) in
>> "c:/users/ray/desktop/shape.dxf".
>> WARNING: Unsupported DXF Entity 'POLYLINE' (1) in
>> "c:/users/ray/desktop/shape.dxf".
>> WARNING: Unsupported DXF Entity 'VERTEX' (7) in
>> "c:/users/ray/desktop/shape.dxf".
>
> but the shape could not be much simpler. Within  designcad, I've no idea
> how to not have polylines, vertexes, etc. , but I have not looked into
> the dxf format in any detail.
shape.dxf works 'straight out of the box' with dxfread

O:\STL\dxf>dxfread -scad -as shape.dxf
parser OK
reading dxf: O:\STL\dxf\shape.dxf
Layers:  0 1
  building xml
  building profile loops
  Starting from 1 curves
  Created loop from 1 curve(s). 0 curves remaining
  Profile completed with 1 loop
  wrote: O:\STL\dxf\shape.as (AngelCAD)
  wrote: O:\STL\dxf\shape.scad (OpenSCAD)
  Wrote 2 profile file(s)

I have attached the two generated files in shape.zip
As you will see in the .scad file an OpenSCAD module shape_dxf() is
generated and called + extruded. The same thing happens in the AngelCAD
.as file, with slightly different (type safe) syntax.

> can2.dxf, that loads fine into openscad. That was also drawn in
> designcad (by manually tracing a background jpeg image),  but I loaded
> it into, and resaved via my cnc software.

I think OpenSCAD silently 'repairs' that file, because the profile in
your DXF file is disconnected, it does not describe a closed loop.
Without modification, it fails ion dxfread:

O:\STL\dxf>dxfread -scad -as can2.DXF
parser OK
reading dxf: O:\STL\dxf\can2.DXF
Layers:  0
  building xml
  building profile loops
  Starting from 17 curves
  warning: non-manifold (1) point at [   4.70644,   16.5857] id=   2,
skipping curve 1
  warning: non-manifold (1) point at [    9.9333,   16.5857] id=   3,
skipping curve 2
  warning: non-manifold (1) point at [   13.3047,   17.9433] id=   4,
skipping curve 3
  warning: non-manifold (1) point at [   14.0288,   18.0112] id=   5,
skipping curve 4
  warning: non-manifold (1) point at [   14.3003,    17.898] id=   6,
skipping curve 5
  warning: non-manifold (1) point at [    14.323,   17.6491] id=   7,
skipping curve 6
  warning: non-manifold (1) point at [   14.2325,   1.96856] id=   8,
skipping curve 7
  warning: non-manifold (1) point at [   12.9201, -0.022624] id=   9,
skipping curve 8
  warning: non-manifold (1) point at [  0.520423,  0.045257] id=  10,
skipping curve 9
  warning: non-manifold (1) point at [   0.15839,  0.271528] id=  11,
skipping curve 10
  warning: non-manifold (1) point at [  0.045254,  0.565681] id=  12,
skipping curve 11
  warning: non-manifold (1) point at [ -0.067881,  0.950342] id=  13,
skipping curve 12
  warning: non-manifold (1) point at [ -0.067881,   13.6215] id=  14,
skipping curve 13
  warning: non-manifold (1) point at [  0.022627,   14.1646] id=  15,
skipping curve 14
  warning: non-manifold (1) point at [   0.15839,   14.5266] id=  16,
skipping curve 15
  warning: non-manifold (1) point at [  0.362034,   14.7755] id=  17,
skipping curve 16
  warning: non-manifold (1) point at [  0.678813,   14.9113] id=  18,
skipping curve 17
  Profile completed with 0 loops
  Wrote 0 profile file(s)
  Warning: Computed profile contains no loops, only XML can be exported.
Check layer name if specified.


Looking at the DXF file in LibreCAD, it s clear that the profile is not
closed. See attached can2_a.png and can2_b.png

In can2_c.png, you can see the line I added using LibreCAD to close the
profile. If you want a reliable transfer of such model data you must
make sure the profiles are topologically connected, the problems you are
seing with DXF is not always due to the file format itself, but rather
the data in the file.

I saved the result after eding in LibreCAD to can2_fixed.dxf and tried
again, this time it worked:

O:\STL\dxf>dxfread -scad -as can2_fixed.DXF
parser OK
reading dxf: O:\STL\dxf\can2_fixed.DXF
Layers:  0
  building xml
  building profile loops
  Starting from 18 curves
  Created loop from 18 curve(s). 0 curves remaining
  Profile completed with 1 loop
  wrote: O:\STL\dxf\can2_fixed.as (AngelCAD)
  wrote: O:\STL\dxf\can2_fixed.scad (OpenSCAD)
  Wrote 2 profile file(s)

I have attached the modified can2_fixed.DXF and the 2 generated files in
can2_fixed.zip

As you can see, the .scad file now runs ok. You can modify the extrusion
heights to obtain another thickness, what you get is the default.

> I have numerous more complex  dxf files, that I've not tried to import
> into openscad - I've no requirement to do so. I'm pretty certain they
> would not import, but if anyone wants them as test data, then let me know.

Your examples were tiny and trivial, although the can2.dxf file revealed
a typical tolerance problem that must not be taken lightly. In the
general case, you as modeller must provide unambiguous data, and
can2.dxf failed that test. In some cases it is possible to fix such
issues automatically, but this can lead to other problems, and in the
general more complex case, it may not be possible to guess what you as
modeller intended.

I think it would be very interesting to see some of your more complex
dxf files and see how they behave in OpenSCAD and dxfread. If they are
too big to attach to the list, feel free to mail them directly to me or
use some file sharing service.

Best regards
Carsten Arnholm

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

shape.zip (1K) Download Attachment
can2_c.png (14K) Download Attachment
can2_b.png (8K) Download Attachment
can2_a.png (9K) Download Attachment
can2_fixed.zip (6K) Download Attachment
Reply | Threaded
Open this post in threaded view
|

Re: dxf

mondo
Hi Carsten,

Thanks for discussing. The can2.dxf file, that in reality I would not
expect openscad to import successfully, does import OK. The shape files,
which I would expect to import, do not. They do import if cleaned up by
another program. I was not aware of dxfread. I'll dig out some other dxf
files, and send them to you.. Wrt the can2.dxf, I tried various
versions, including 'hatch filling' and saving the boundary, etc. I am
aware of the necessity of 'water tight' shapes, more so than scad by the
looks of it.

Thanks again,

Best wishes,

Ray


On 27/07/2020 13:52, Carsten Arnholm wrote:

> On 27.07.2020 13:27, Ray West wrote:
>> So. for shape.dxf - openscad reports
>>
>>> WARNING: Unsupported DXF Entity 'SEQEND' (1) in
>>> "c:/users/ray/desktop/shape.dxf".
>>> WARNING: Unsupported DXF Entity 'POLYLINE' (1) in
>>> "c:/users/ray/desktop/shape.dxf".
>>> WARNING: Unsupported DXF Entity 'VERTEX' (7) in
>>> "c:/users/ray/desktop/shape.dxf".
>>
>> but the shape could not be much simpler. Within  designcad, I've no
>> idea how to not have polylines, vertexes, etc. , but I have not
>> looked into the
etc...

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

Re: dxf

cacb
On 2020-07-27 15:55, Ray West wrote:
> Thanks for discussing. The can2.dxf file, that in reality I would not
> expect openscad to import successfully, does import OK.

This must be because OpenSCAD silently applies an automatic closure of
your profile containing LINE entities. It is not clear to me what the
rules are for such automatic closure.

> The shape
> files, which I would expect to import, do not.

This is because (unlike cand2.dxf) it contains the POLYLINE datatype
which is not supported in OpenSCAD.

> They do import if
> cleaned up by another program.

Which probably transforms it into a collection of LINE entities. So it
is not really a 'cleanup' in this case, just re-representing it in the
subset of DXF commands that OpenSCAD understands.

> I was not aware of dxfread.

I would not expect it, it has not been officially released yet, but it
is on the agenda to happen soon.

> I'll dig
> out some other dxf files, and send them to you..

Thanks, much appreciated.

> Wrt the can2.dxf, I
> tried various versions, including 'hatch filling' and saving the
> boundary, etc. I am aware of the necessity of 'water tight' shapes,
> more so than scad by the looks of it.

Hatch filling would not help I think. You either need to use a datatype
with implicit profile closure (POLYLINE,LWPOLYLINE), or close it
explicitly with LINE. Of course the software on the receiving end must
support the datatype you choose to use.

Best regards
Carsten Arnholm

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

Re: dxf

Peter Ragosch
In reply to this post by mondo
I opened the dxf files in QCAD and found the following:

1. can2.DXF contains a non closed shape made with LINEs. There exist an
offset of 0.1 between two points.

2. shape.dxf contains a closed shape made with one POLYLINE in a
VIEWPORT.

openSCADs dxf importer imports the shape (1.) without any error message.

For (2.) both, the POLYLINES, as well as the VIEWPORT, are unsupported
by openSCADs dxf importer.

If the POLYLINE is converted to simple LINEs it's imported with only
a warning about unsupported VIEWPORT.

Conclusion: The openSCAD dxf importer works as expected - although a
permissible offset between two points is not specified explicitly.

Am Mon, 27 Jul 2020 12:27:28 +0100
schrieb Ray West <[hidden email]>:

> Hi,
>
> Thanks for all of your informative responses. I am sort of
> overwhelmed. Hopefully I've attached a few files, if attachments work
> OK on the mailing list. As I may have mentioned, I deleted the files
> that were not usable, so I've recreated a couple of test files, and
> included one that did work. All of the files were originally drawn
> using design cad (I'm aware that it may not save in standard dxf
> format either, but R12 seems to be most successful.)
>
> So. for shape.dxf - openscad reports
>
> > WARNING: Unsupported DXF Entity 'SEQEND' (1) in >
> > "c:/users/ray/desktop/shape.dxf". WARNING: Unsupported DXF Entity
> > 'POLYLINE' (1) in > "c:/users/ray/desktop/shape.dxf". WARNING:
> > Unsupported DXF Entity 'VERTEX' (7) in >
> > "c:/users/ray/desktop/shape.dxf".
>
> but the shape could not be much simpler. Within  designcad, I've no
> idea how to not have polylines, vertexes, etc. , but I have not
> looked into the dxf format in any detail.
>
> can2.dxf, that loads fine into openscad. That was also drawn in
> designcad (by manually tracing a background jpeg image),  but I load
> ed it into, and resaved via my cnc software.
>
> I've added a couple of stl files, too.
>
> shape.stl was the same drawing file that was saved as shape.dxf, but
> saved as stl. It will not reload into designcad, nor display in
> meshlab.
>
> shape2.stl is the same drawing, but within design cad it is selected
> and made into a plane. That loads into meshlab fine, but not into
> openscad. But, If i manipulate it in designcad to make it a solid,
> instead of a plane, then it can be used by openscad.
>
> I have numerous more complex  dxf files, that I've not tried to impo
> rt into openscad - I've no requirement to do so. I'm pretty certain
> they would not import, but if anyone wants them as test data, then
> let me know .
>
> Best wishes.
>
> Ray
>



--
Mit freundlichen Grüßen
Best Regards

Peter Ragosch


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

Re: dxf

tp3
Looks like the POLYLINE import does work with the new import
code (https://github.com/openscad/openscad/pull/3006).

ciao,
  Torsten.


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

shape.png (229K) Download Attachment
-- Torsten
Reply | Threaded
Open this post in threaded view
|

Re: dxf

mondo
In reply to this post by cacb
Hi Carsten,

On 27/07/2020 15:17, [hidden email] wrote:
> Hatch filling would not help I think.

I can hatch fill a shape. If it is not complete, the hatch leaks out. By
judicious resizing, and placing sections of the shape on the screen, it
can hatch to boundary and to screen edge, so can narrow down the region
of the gap/s. It can be quicker than zooming in and micro stepping
around the boundary. Also, it can hatch fill as a boundary is drawn, and
then remove the hatching, leaving a watertight boundary. All a bit
clunky, but it gets the job done.

A number of my dxf files are not shapes, just lines, tool paths and the
like. I guess they won't load either.


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

Re: dxf

OpenSCAD mailing list-2
It sounds like a rethinking of the design process to take advantage of parametric CAD might be a time-saving exercise.

Using functions and loops to create complex shapes and fill patterns might be easier compared to fixing disjointed polygons.
Would it make any sense to generate a large fill pattern and import only the outline and then use a boolean function to trim the fill to only be retained inside the polygon.

https://openhome.cc/eGossip/OpenSCAD/BooleanOperationsHull.html
https://www.openscad.org/cheatsheet/snapshot.html
https://en.wikibooks.org/wiki/OpenSCAD_User_Manual/CSG_Modelling#intersection

Never tested this and others might point out flaws in my logic.

I hope that this helps.



On 2020-07-27 11:04 a.m., Ray West wrote:
Hi Carsten,

On 27/07/2020 15:17, [hidden email] wrote:
Hatch filling would not help I think.

I can hatch fill a shape. If it is not complete, the hatch leaks out. By judicious resizing, and placing sections of the shape on the screen, it can hatch to boundary and to screen edge, so can narrow down the region of the gap/s. It can be quicker than zooming in and micro stepping around the boundary. Also, it can hatch fill as a boundary is drawn, and then remove the hatching, leaving a watertight boundary. All a bit clunky, but it gets the job done.

A number of my dxf files are not shapes, just lines, tool paths and the like. I guess they won't load either.


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

-- 
Ron Wheeler
Artifact Software
438-345-3369
[hidden email]

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

Re: dxf

cacb
In reply to this post by mondo
On 27.07.2020 17:04, Ray West wrote:
> A number of my dxf files are not shapes, just lines, tool paths and the
> like. I guess they won't load either.

Yes, that will cause problems. I would strongly suggest keeping gemetry
isolated in one or more DXF layers and such things like graphic lines,
text or tool paths in other layers. dxfread can read selected layers so
that would solve many issues.

Still, the geometry must be 'water tight'.

Regards
Carsten Arnholm

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

Re: dxf

cbernhardt
In reply to this post by mondo
Interesting that your shape.dxf will read into AutoCAD and your can2.dxf will
not.
The can2 produces the error "Omitted group 12 line 84"



--
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: dxf

mondo
In reply to this post by OpenSCAD mailing list-2

Hi Ron,

That is what I've been doing. For certain more or less standard items, like pocketing holes on a grid, flanges, etc., I've created programs to create the gcode directly. The user  (me) sets the diameters, tool sizes, speeds, whatever, and ends up with the gcode text file, which is fed directly into the milling machine. This was written in c#, but I got fed up with the complexity introduced by microsoft, poor help, and annual updates of  visual studio.

I recently came across openscad, seeing a model on thingiverse, pulled it apart, and wrote a little program that solved a problem that I had been puzzling over for years (just a mental exercise, nothing more). Once I know the limits of scad, I may try and interface it to a gui, so that I do not have to poke around in the scad file if i just want to change a few values. I've not got as far as thinking much about that, and I expect that has already been done. I'm not sure if an openscad program can be packaged up/compiled/whatever, so that a user can't modify it.

Thanks,

Best wishes,

Ray

On 27/07/2020 16:56, Ron Wheeler via Discuss wrote:

It sounds like a rethinking of the design process to take advantage of parametric CAD might be a time-saving exercise.

Using functions and loops to create complex shapes and fill patterns might be easier compared to fixing disjointed polygons.
Would it make any sense to generate a large fill pattern and import only the outline and then use a boolean function to trim the fill to only be retained inside the polygon.

https://openhome.cc/eGossip/OpenSCAD/BooleanOperationsHull.html
https://www.openscad.org/cheatsheet/snapshot.html
https://en.wikibooks.org/wiki/OpenSCAD_User_Manual/CSG_Modelling#intersection

Never tested this and others might point out flaws in my logic.

I hope that this helps.



On 2020-07-27 11:04 a.m., Ray West wrote:
Hi Carsten,

On 27/07/2020 15:17, [hidden email] wrote:
Hatch filling would not help I think.

I can hatch fill a shape. If it is not complete, the hatch leaks out. By judicious resizing, and placing sections of the shape on the screen, it can hatch to boundary and to screen edge, so can narrow down the region of the gap/s. It can be quicker than zooming in and micro stepping around the boundary. Also, it can hatch fill as a boundary is drawn, and then remove the hatching, leaving a watertight boundary. All a bit clunky, but it gets the job done.

A number of my dxf files are not shapes, just lines, tool paths and the like. I guess they won't load either.


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

-- 
Ron Wheeler
Artifact Software
438-345-3369
[hidden email]

_______________________________________________
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: dxf

OpenSCAD mailing list-2
I am not sure why you would want to send an OpenSCAD model to a customer unless you want them to modify it.
I would think that you would just send the output not the model.

I have only done 3D printing and for that I output the stl file which is read in by another software (Cura) that figures out the actual paths of the extruder which are fed to the 3D printer.


http://forum.openscad.org/Is-OpenSCAD-to-CNC-possible-td22175.html might get you started.

A bit of Google searching might get you a viable tool chain to go from model to metal.

As you can see, you can get a lot of help here as well.

Ron

On 2020-07-27 12:58 p.m., Ray West wrote:

Hi Ron,

That is what I've been doing. For certain more or less standard items, like pocketing holes on a grid, flanges, etc., I've created programs to create the gcode directly. The user  (me) sets the diameters, tool sizes, speeds, whatever, and ends up with the gcode text file, which is fed directly into the milling machine. This was written in c#, but I got fed up with the complexity introduced by microsoft, poor help, and annual updates of  visual studio.

I recently came across openscad, seeing a model on thingiverse, pulled it apart, and wrote a little program that solved a problem that I had been puzzling over for years (just a mental exercise, nothing more). Once I know the limits of scad, I may try and interface it to a gui, so that I do not have to poke around in the scad file if i just want to change a few values. I've not got as far as thinking much about that, and I expect that has already been done. I'm not sure if an openscad program can be packaged up/compiled/whatever, so that a user can't modify it.

Thanks,

Best wishes,

Ray

On 27/07/2020 16:56, Ron Wheeler via Discuss wrote:

It sounds like a rethinking of the design process to take advantage of parametric CAD might be a time-saving exercise.

Using functions and loops to create complex shapes and fill patterns might be easier compared to fixing disjointed polygons.
Would it make any sense to generate a large fill pattern and import only the outline and then use a boolean function to trim the fill to only be retained inside the polygon.

https://openhome.cc/eGossip/OpenSCAD/BooleanOperationsHull.html
https://www.openscad.org/cheatsheet/snapshot.html
https://en.wikibooks.org/wiki/OpenSCAD_User_Manual/CSG_Modelling#intersection

Never tested this and others might point out flaws in my logic.

I hope that this helps.



On 2020-07-27 11:04 a.m., Ray West wrote:
Hi Carsten,

On 27/07/2020 15:17, [hidden email] wrote:
Hatch filling would not help I think.

I can hatch fill a shape. If it is not complete, the hatch leaks out. By judicious resizing, and placing sections of the shape on the screen, it can hatch to boundary and to screen edge, so can narrow down the region of the gap/s. It can be quicker than zooming in and micro stepping around the boundary. Also, it can hatch fill as a boundary is drawn, and then remove the hatching, leaving a watertight boundary. All a bit clunky, but it gets the job done.

A number of my dxf files are not shapes, just lines, tool paths and the like. I guess they won't load either.


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

-- 
Ron Wheeler
Artifact Software
438-345-3369
[hidden email]

_______________________________________________
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

-- 
Ron Wheeler
Artifact Software
438-345-3369
[hidden email]

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

Re: dxf

mondo

Hi Ron,

I do not want to send an open scad to a customer, unless I know they can safely modify it. I am hoping to use open scad as a part of a solution. Since the cnc software can read in stl files, and produce Gcode from them (similar to, but not the same as Cura) then openscad can be used to produce them. With a gui front end to scad, then it can replace my existing method of programmatically generating Gcode. Fwiw, 6 years ago I was programmatically generating gcode for 3d printing, using a purpose built hotend in a bridgeport type mill as the printer. It was very slow, but the resolution was excellent! I've recently looked again at filament 3d printing - the progress in the last 6 years has been quite impressive, but it is still a slow process for larger items. There are limitations in machining from an stl file, generally little control in path direction, etc., but quite doable for some items where utmost precision is not required.

Best wishes,


Ray


On 27/07/2020 18:23, Ron Wheeler via Discuss wrote:
I am not sure why you would want to send an OpenSCAD model to a customer unless you want them to modify it.
I would think that you would just send the output not the model.

I have only done 3D printing and for that I output the stl file which is read in by another software (Cura) that figures out the actual paths of the extruder which are fed to the 3D printer.


http://forum.openscad.org/Is-OpenSCAD-to-CNC-possible-td22175.html might get you started.

A bit of Google searching might get you a viable tool chain to go from model to metal.

As you can see, you can get a lot of help here as well.

Ron

On 2020-07-27 12:58 p.m., Ray West wrote:

Hi Ron,

That is what I've been doing. For certain more or less standard items, like pocketing holes on a grid, flanges, etc., I've created programs to create the gcode directly. The user  (me) sets the diameters, tool sizes, speeds, whatever, and ends up with the gcode text file, which is fed directly into the milling machine. This was written in c#, but I got fed up with the complexity introduced by microsoft, poor help, and annual updates of  visual studio.

I recently came across openscad, seeing a model on thingiverse, pulled it apart, and wrote a little program that solved a problem that I had been puzzling over for years (just a mental exercise, nothing more). Once I know the limits of scad, I may try and interface it to a gui, so that I do not have to poke around in the scad file if i just want to change a few values. I've not got as far as thinking much about that, and I expect that has already been done. I'm not sure if an openscad program can be packaged up/compiled/whatever, so that a user can't modify it.

Thanks,

Best wishes,

Ray

On 27/07/2020 16:56, Ron Wheeler via Discuss wrote:

It sounds like a rethinking of the design process to take advantage of parametric CAD might be a time-saving exercise.

Using functions and loops to create complex shapes and fill patterns might be easier compared to fixing disjointed polygons.
Would it make any sense to generate a large fill pattern and import only the outline and then use a boolean function to trim the fill to only be retained inside the polygon.

https://openhome.cc/eGossip/OpenSCAD/BooleanOperationsHull.html
https://www.openscad.org/cheatsheet/snapshot.html
https://en.wikibooks.org/wiki/OpenSCAD_User_Manual/CSG_Modelling#intersection

Never tested this and others might point out flaws in my logic.

I hope that this helps.



On 2020-07-27 11:04 a.m., Ray West wrote:
Hi Carsten,

On 27/07/2020 15:17, [hidden email] wrote:
Hatch filling would not help I think.

I can hatch fill a shape. If it is not complete, the hatch leaks out. By judicious resizing, and placing sections of the shape on the screen, it can hatch to boundary and to screen edge, so can narrow down the region of the gap/s. It can be quicker than zooming in and micro stepping around the boundary. Also, it can hatch fill as a boundary is drawn, and then remove the hatching, leaving a watertight boundary. All a bit clunky, but it gets the job done.

A number of my dxf files are not shapes, just lines, tool paths and the like. I guess they won't load either.


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

-- 
Ron Wheeler
Artifact Software
438-345-3369
[hidden email]

_______________________________________________
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

-- 
Ron Wheeler
Artifact Software
438-345-3369
[hidden email]

_______________________________________________
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: dxf

acwest
I first started doing openscad because of the Thingiverse customiser.
The ability to give the customer to adjust some parameters is rather
awesome, really

On Mon, Jul 27, 2020 at 3:06 PM Ray West <[hidden email]> wrote:

>
> Hi Ron,
>
> I do not want to send an open scad to a customer, unless I know they can safely modify it. I am hoping to use open scad as a part of a solution. Since the cnc software can read in stl files, and produce Gcode from them (similar to, but not the same as Cura) then openscad can be used to produce them. With a gui front end to scad, then it can replace my existing method of programmatically generating Gcode. Fwiw, 6 years ago I was programmatically generating gcode for 3d printing, using a purpose built hotend in a bridgeport type mill as the printer. It was very slow, but the resolution was excellent! I've recently looked again at filament 3d printing - the progress in the last 6 years has been quite impressive, but it is still a slow process for larger items. There are limitations in machining from an stl file, generally little control in path direction, etc., but quite doable for some items where utmost precision is not required.
>
> Best wishes,
>
>
> Ray
>
>
> On 27/07/2020 18:23, Ron Wheeler via Discuss wrote:
>
> I am not sure why you would want to send an OpenSCAD model to a customer unless you want them to modify it.
> I would think that you would just send the output not the model.
>
> I have only done 3D printing and for that I output the stl file which is read in by another software (Cura) that figures out the actual paths of the extruder which are fed to the 3D printer.
>
>
> http://forum.openscad.org/Is-OpenSCAD-to-CNC-possible-td22175.html might get you started.
>
> A bit of Google searching might get you a viable tool chain to go from model to metal.
>
> As you can see, you can get a lot of help here as well.
>
> Ron
>
> On 2020-07-27 12:58 p.m., Ray West wrote:
>
> Hi Ron,
>
> That is what I've been doing. For certain more or less standard items, like pocketing holes on a grid, flanges, etc., I've created programs to create the gcode directly. The user  (me) sets the diameters, tool sizes, speeds, whatever, and ends up with the gcode text file, which is fed directly into the milling machine. This was written in c#, but I got fed up with the complexity introduced by microsoft, poor help, and annual updates of  visual studio.
>
> I recently came across openscad, seeing a model on thingiverse, pulled it apart, and wrote a little program that solved a problem that I had been puzzling over for years (just a mental exercise, nothing more). Once I know the limits of scad, I may try and interface it to a gui, so that I do not have to poke around in the scad file if i just want to change a few values. I've not got as far as thinking much about that, and I expect that has already been done. I'm not sure if an openscad program can be packaged up/compiled/whatever, so that a user can't modify it.
>
> Thanks,
>
> Best wishes,
>
> Ray
>
> On 27/07/2020 16:56, Ron Wheeler via Discuss wrote:
>
> It sounds like a rethinking of the design process to take advantage of parametric CAD might be a time-saving exercise.
>
> Using functions and loops to create complex shapes and fill patterns might be easier compared to fixing disjointed polygons.
> Would it make any sense to generate a large fill pattern and import only the outline and then use a boolean function to trim the fill to only be retained inside the polygon.
>
> https://openhome.cc/eGossip/OpenSCAD/BooleanOperationsHull.html
> https://www.openscad.org/cheatsheet/snapshot.html
> https://en.wikibooks.org/wiki/OpenSCAD_User_Manual/CSG_Modelling#intersection
>
> Never tested this and others might point out flaws in my logic.
>
> I hope that this helps.
>
>
>
> On 2020-07-27 11:04 a.m., Ray West wrote:
>
> Hi Carsten,
>
> On 27/07/2020 15:17, [hidden email] wrote:
>
> Hatch filling would not help I think.
>
>
> I can hatch fill a shape. If it is not complete, the hatch leaks out. By judicious resizing, and placing sections of the shape on the screen, it can hatch to boundary and to screen edge, so can narrow down the region of the gap/s. It can be quicker than zooming in and micro stepping around the boundary. Also, it can hatch fill as a boundary is drawn, and then remove the hatching, leaving a watertight boundary. All a bit clunky, but it gets the job done.
>
> A number of my dxf files are not shapes, just lines, tool paths and the like. I guess they won't load either.
>
>
> _______________________________________________
> OpenSCAD mailing list
> [hidden email]
> http://lists.openscad.org/mailman/listinfo/discuss_lists.openscad.org
>
>
> --
> Ron Wheeler
> Artifact Software
> 438-345-3369
> [hidden email]
>
>
> _______________________________________________
> 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
>
>
> --
> Ron Wheeler
> Artifact Software
> 438-345-3369
> [hidden email]
>
>
> _______________________________________________
> 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

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

Re: dxf

OpenSCAD mailing list-2
In reply to this post by mondo
Without knowing the type of models that you are generating, it is hard to be sure that my suggestions are worthwhile.

Given that caveat and my willingness to be embarrassed by people who actually know what they are doing, I will make the following comments.

It would seem that in some cases, it may be possible to produce OpenSCAD scripts that would allow customers to enter some parameters and have the scripts generate the ultimate object.
In some cases, the customer would not have to touch the lower level scripts and in the best cases, the customer would only have to set some number of parameters and invoke your scripts to produce the object that they desire. OpenSCAD would allow them to visualize the object and take any relevant measurements to verify that their parameters are generating the correct model.

I think that some of the responses to this thread give ideas that are worth pursuing about the process to take an OpenSCAD model and run it through other programs that create the correct tool paths and CNC instructions to produce the desired output.

This seems to the ignorant (me), that worrying about tool paths and other CNC concerns can be left to the end of the process.
My opinion is that CNC is a more complex problem than 3D printing but paths, directions and tool choices are all decisions that people have been able to make for many years and it is not impossible for software to make the same choices.

The first step may be to produce a sufficiently accurate model about what you want to make and later on worry about how to make it.
If this can be done, customers are going to be much more productive by focusing on what they know and leaving the technical details to the tool chain.

My ignorance gives a certain amount of confidence regarding possible solutions, but regardless, I hope that this helps.

Ron

On 2020-07-27 3:06 p.m., Ray West wrote:

Hi Ron,

I do not want to send an open scad to a customer, unless I know they can safely modify it. I am hoping to use open scad as a part of a solution. Since the cnc software can read in stl files, and produce Gcode from them (similar to, but not the same as Cura) then openscad can be used to produce them. With a gui front end to scad, then it can replace my existing method of programmatically generating Gcode. Fwiw, 6 years ago I was programmatically generating gcode for 3d printing, using a purpose built hotend in a bridgeport type mill as the printer. It was very slow, but the resolution was excellent! I've recently looked again at filament 3d printing - the progress in the last 6 years has been quite impressive, but it is still a slow process for larger items. There are limitations in machining from an stl file, generally little control in path direction, etc., but quite doable for some items where utmost precision is not required.

Best wishes,


Ray


On 27/07/2020 18:23, Ron Wheeler via Discuss wrote:
I am not sure why you would want to send an OpenSCAD model to a customer unless you want them to modify it.
I would think that you would just send the output not the model.

I have only done 3D printing and for that I output the stl file which is read in by another software (Cura) that figures out the actual paths of the extruder which are fed to the 3D printer.


http://forum.openscad.org/Is-OpenSCAD-to-CNC-possible-td22175.html might get you started.

A bit of Google searching might get you a viable tool chain to go from model to metal.

As you can see, you can get a lot of help here as well.

Ron

On 2020-07-27 12:58 p.m., Ray West wrote:

Hi Ron,

That is what I've been doing. For certain more or less standard items, like pocketing holes on a grid, flanges, etc., I've created programs to create the gcode directly. The user  (me) sets the diameters, tool sizes, speeds, whatever, and ends up with the gcode text file, which is fed directly into the milling machine. This was written in c#, but I got fed up with the complexity introduced by microsoft, poor help, and annual updates of  visual studio.

I recently came across openscad, seeing a model on thingiverse, pulled it apart, and wrote a little program that solved a problem that I had been puzzling over for years (just a mental exercise, nothing more). Once I know the limits of scad, I may try and interface it to a gui, so that I do not have to poke around in the scad file if i just want to change a few values. I've not got as far as thinking much about that, and I expect that has already been done. I'm not sure if an openscad program can be packaged up/compiled/whatever, so that a user can't modify it.

Thanks,

Best wishes,

Ray

On 27/07/2020 16:56, Ron Wheeler via Discuss wrote:

It sounds like a rethinking of the design process to take advantage of parametric CAD might be a time-saving exercise.

Using functions and loops to create complex shapes and fill patterns might be easier compared to fixing disjointed polygons.
Would it make any sense to generate a large fill pattern and import only the outline and then use a boolean function to trim the fill to only be retained inside the polygon.

https://openhome.cc/eGossip/OpenSCAD/BooleanOperationsHull.html
https://www.openscad.org/cheatsheet/snapshot.html
https://en.wikibooks.org/wiki/OpenSCAD_User_Manual/CSG_Modelling#intersection

Never tested this and others might point out flaws in my logic.

I hope that this helps.



On 2020-07-27 11:04 a.m., Ray West wrote:
Hi Carsten,

On 27/07/2020 15:17, [hidden email] wrote:
Hatch filling would not help I think.

I can hatch fill a shape. If it is not complete, the hatch leaks out. By judicious resizing, and placing sections of the shape on the screen, it can hatch to boundary and to screen edge, so can narrow down the region of the gap/s. It can be quicker than zooming in and micro stepping around the boundary. Also, it can hatch fill as a boundary is drawn, and then remove the hatching, leaving a watertight boundary. All a bit clunky, but it gets the job done.

A number of my dxf files are not shapes, just lines, tool paths and the like. I guess they won't load either.


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

-- 
Ron Wheeler
Artifact Software
438-345-3369
[hidden email]

_______________________________________________
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

-- 
Ron Wheeler
Artifact Software
438-345-3369
[hidden email]

_______________________________________________
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

-- 
Ron Wheeler
Artifact Software
438-345-3369
[hidden email]

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

Re: dxf

mondo

Hi Ron,

Any suggestion is worthwhile. If it doesn't help me, it may well help someone else. Not much point in lurking on fora. If everyone did that, it would be very dull. High end cnc machining (which I am in no way involved in) is far, far more involved than 3dprinting, although high end 3d printing (Renishaw for turbine blades, etc) has some complexity.

I do not have paying business customers, having given up my day job some years ago. I have customers, in the sense they use what I supply them, and they come and dig my garden in return, say. A far better method.

Best wishes,

Ray

On 28/07/2020 03:24, Ron Wheeler via Discuss wrote:
Without knowing the type of models that you are generating, it is hard to be sure that my suggestions are worthwhile.

Given that caveat and my willingness to be embarrassed by people who actually know what they are doing, I will make the following comments.

It would seem that in some cases, it may be possible to produce OpenSCAD scripts that would allow customers to enter some parameters and have the scripts generate the ultimate object.
In some cases, the customer would not have to touch the lower level scripts and in the best cases, the customer would only have to set some number of parameters and invoke your scripts to produce the object that they desire. OpenSCAD would allow them to visualize the object and take any relevant measurements to verify that their parameters are generating the correct model.

I think that some of the responses to this thread give ideas that are worth pursuing about the process to take an OpenSCAD model and run it through other programs that create the correct tool paths and CNC instructions to produce the desired output.

This seems to the ignorant (me), that worrying about tool paths and other CNC concerns can be left to the end of the process.
My opinion is that CNC is a more complex problem than 3D printing but paths, directions and tool choices are all decisions that people have been able to make for many years and it is not impossible for software to make the same choices.

The first step may be to produce a sufficiently accurate model about what you want to make and later on worry about how to make it.
If this can be done, customers are going to be much more productive by focusing on what they know and leaving the technical details to the tool chain.

My ignorance gives a certain amount of confidence regarding possible solutions, but regardless, I hope that this helps.

Ron

On 2020-07-27 3:06 p.m., Ray West wrote:

Hi Ron,

I do not want to send an open scad to a customer, unless I know they can safely modify it. I am hoping to use open scad as a part of a solution. Since the cnc software can read in stl files, and produce Gcode from them (similar to, but not the same as Cura) then openscad can be used to produce them. With a gui front end to scad, then it can replace my existing method of programmatically generating Gcode. Fwiw, 6 years ago I was programmatically generating gcode for 3d printing, using a purpose built hotend in a bridgeport type mill as the printer. It was very slow, but the resolution was excellent! I've recently looked again at filament 3d printing - the progress in the last 6 years has been quite impressive, but it is still a slow process for larger items. There are limitations in machining from an stl file, generally little control in path direction, etc., but quite doable for some items where utmost precision is not required.

Best wishes,


Ray


On 27/07/2020 18:23, Ron Wheeler via Discuss wrote:
I am not sure why you would want to send an OpenSCAD model to a customer unless you want them to modify it.
I would think that you would just send the output not the model.

I have only done 3D printing and for that I output the stl file which is read in by another software (Cura) that figures out the actual paths of the extruder which are fed to the 3D printer.


http://forum.openscad.org/Is-OpenSCAD-to-CNC-possible-td22175.html might get you started.

A bit of Google searching might get you a viable tool chain to go from model to metal.

As you can see, you can get a lot of help here as well.

Ron

On 2020-07-27 12:58 p.m., Ray West wrote:

Hi Ron,

That is what I've been doing. For certain more or less standard items, like pocketing holes on a grid, flanges, etc., I've created programs to create the gcode directly. The user  (me) sets the diameters, tool sizes, speeds, whatever, and ends up with the gcode text file, which is fed directly into the milling machine. This was written in c#, but I got fed up with the complexity introduced by microsoft, poor help, and annual updates of  visual studio.

I recently came across openscad, seeing a model on thingiverse, pulled it apart, and wrote a little program that solved a problem that I had been puzzling over for years (just a mental exercise, nothing more). Once I know the limits of scad, I may try and interface it to a gui, so that I do not have to poke around in the scad file if i just want to change a few values. I've not got as far as thinking much about that, and I expect that has already been done. I'm not sure if an openscad program can be packaged up/compiled/whatever, so that a user can't modify it.

Thanks,

Best wishes,

Ray

On 27/07/2020 16:56, Ron Wheeler via Discuss wrote:

It sounds like a rethinking of the design process to take advantage of parametric CAD might be a time-saving exercise.

Using functions and loops to create complex shapes and fill patterns might be easier compared to fixing disjointed polygons.
Would it make any sense to generate a large fill pattern and import only the outline and then use a boolean function to trim the fill to only be retained inside the polygon.

https://openhome.cc/eGossip/OpenSCAD/BooleanOperationsHull.html
https://www.openscad.org/cheatsheet/snapshot.html
https://en.wikibooks.org/wiki/OpenSCAD_User_Manual/CSG_Modelling#intersection

Never tested this and others might point out flaws in my logic.

I hope that this helps.



On 2020-07-27 11:04 a.m., Ray West wrote:
Hi Carsten,

On 27/07/2020 15:17, [hidden email] wrote:
Hatch filling would not help I think.

I can hatch fill a shape. If it is not complete, the hatch leaks out. By judicious resizing, and placing sections of the shape on the screen, it can hatch to boundary and to screen edge, so can narrow down the region of the gap/s. It can be quicker than zooming in and micro stepping around the boundary. Also, it can hatch fill as a boundary is drawn, and then remove the hatching, leaving a watertight boundary. All a bit clunky, but it gets the job done.

A number of my dxf files are not shapes, just lines, tool paths and the like. I guess they won't load either.


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

-- 
Ron Wheeler
Artifact Software
438-345-3369
[hidden email]

_______________________________________________
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

-- 
Ron Wheeler
Artifact Software
438-345-3369
[hidden email]

_______________________________________________
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

-- 
Ron Wheeler
Artifact Software
438-345-3369
[hidden email]

_______________________________________________
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