Copper Pour shape import as DXF

Making PCB Layouts, Manual routing, Auto-routing, Copper pouring, Updating from Schematic, Manufacturing Output
Posts: 15
Joined: 05 Dec 2011, 10:51

Re: Copper Pour shape import as DXF

#11 Post by KonektedLab » 21 Apr 2019, 16:42

As a workaround:

1. Create a simple copper pour and export the PCB file as Diptrace ASCII.
2. Import the copper pour from the "Import DXF" command to a Diptrace layer that not support filled polygons with arcs, as Diptrace approximate them forming a polyline with only line edges (Ex. Top Mask) and rename the shape to a unique name easy to search for.
3. Export PCB in Diptrace ASCII and move the geometry.
4. With an text editor, as Visual Stuidio Code or a simpler one as Notepad, copy the shape geometry and to the copper pour geometry replacing it. Look for the lines starting with (pt x, x, "N").
5. Delete the shape from the ASCII file or then from the PCB Editor.
6. Import the ASCII file.

Note: if the copper pour has rounded corners, first convert the arcs to lines, but before split the arc in many segments to not loose precision. A simple but competent CAD app is QCad Pro (the pro version has this utilities), the not Pro or the Open Source version (Libre CAD), I don't know.

Posts: 1
Joined: 27 Feb 2020, 09:42

Re: Copper Pour shape import as DXF

#12 Post by dspro » 27 Feb 2020, 10:14

DipTrace has terrible shape import support, which is sad since I love almost everything else about it.

However, DipTrace ASCII files are typically the way to go for advanced maneuvers not inherently supported.

I've had to resort to write a DipTrace ASCII parser and writer in C, so that I can do some of these things programatically.

For instance, I've constructed programs to:
* Converting board outlines to shapes or pours - because importing DXF as board outline actually works
* Copy a single component to multiple locations defined in a CSV file - useful for LED signage
* Global shape scaling - useful when that multi-part/-layer logo you've tediously imported is the wrong size for your next design

(No, these are not friendly enough to publish - but if you are comfortable working with C code you can have it)

Working with the ASCII files is annoying, but will speed things up a lot compared to manually punching in hundreds of coordinates.

Here is an example:

There are two things imported here - traces and pours.

The pours were created by importing DXF shapes as "Board Outline" into a new empty document.
I then created a dummy copper pour (with desired parameters) and exported everything as ASCII.
In the ASCII file it was easy enough to make multiple copies of the pour, move points (pt ...) from the shapes to the pours, and then delete the shapes.
The file was then imported and contents copied into my actual design document.

The traces were created by importing DXF polylines as "Top" - lines only (no arcs) but make sure you have points in your DXF that will define the arc (extra point, anywhere on each arc).
I then created several dummy traces and exported everything as ASCII.
Traces are defined with much more data than the point of a shape, so it is a bit more work to transfer points - but essentially you just need to copy all extra data after the point location to every new point you create.
Two numbers in that extra data will be different for every line, but these can all be set to zero and import will still work.
The file is then imported and all points on arcs right-clicked and marked as arcs prior to copying the contents into my actual design document.

I know, this is frustrating and absurd - but until we get proper import tools, getting comfortable working with DipTrace ASCII files will save you heaps of time.
For reference, the design above took roughly 15 minutes to transfer from my a 3D CAD program to my DipTrace PCB.
While it should have taken 2 minutes, it's a helluva lot better than the hours it would've taken me to punch in all of those coordinates manually.


Posts: 3
Joined: 29 Jan 2020, 08:37

Re: Copper Pour shape import as DXF

#13 Post by c1rcu1tbender » 01 Apr 2021, 04:29

So I keep on running into old, outstanding problems/feature requests for things that people have wanted for years, that seems to be ignored by the developers ... why is this not a feature? its just allowing an already existing feature to be combined with another already existing feature and we have replies here saying you will add it and here we are in 2021 and its still not added?

Post Reply