Hi John,
You may want to consider creating a DXFLIB_PLOTTER object along with the
logic to use it rather than risking breaking the existing DXF_PLOTTER.
I don't know that anyone on the development team has any experience with
using dxflib to write to DXF. Once the DXFLIB_PLOTTER object is proven
to be the equivalent or better than the existing DXF_PLOTTER object, we
can replace it at that time.
Wayne
On 6/6/23 11:15 AM, John Timms wrote:
Hello Seth,
Thanks. I took a day before writing to look at what would need to be
done assuming no migration to dxflib. I will take a look now and make
sure I haven't underestimated the complexity of migrating.
John
On Mon, Jun 5, 2023, 12:33 Seth Hillbrand <s...@kipro-pcb.com> wrote:
Hi John,
The plotter code pre-dates the dxflib import code by some number
of years. That is the simple reason why the library isn't used
for plotting.
If you were to revise the dxf plotting code to use dxflib, I doubt
anyone would have any heartburn over this change as long as you
worked within the PLOTTER class.
As to advice on the approach, I'd start with mapping out the calls
you need and ensuring that the overloads in DXF_PLOTTER will work
with the calling structure expected by dxflib
Let us know if you'd like to be assigned the issue in GitLab.
Seth
KiCad Services Corporation Logo
Seth Hillbrand
*Lead Developer*
+1-530-302-5483
Long Beach, CA
www.kipro-pcb.com <https://www.kipro-pcb.com/> i...@kipro-pcb.com
On Sun, Jun 4, 2023 at 9:12 PM John Timms <johngti...@gmail.com>
wrote:
Hello,
I am new to the project and interested in contributing on
Issue #2446 DXF export should export dimension items as DXF
dimensions (lp:#1832717)
<https://gitlab.com/kicad/code/kicad/-/issues/2446>.
The 7.0.0 release does not plot KiCad dimension items at all
with the option "Plot graphic items using their contours"
selected. With the option de-selected, then KiCad dimension
items are plotted using LINE entities, as stated in the issue.
Looking at what would be required to implement the DXF
standard's DIMENSION entity, the minimum change would involve
changes to DXF_PLOTTER::StartPlot()
<https://gitlab.com/kicad/code/kicad/-/blob/7.0/common/plotters/DXF_plotter.cpp?ref_type=heads#L173>
(The
DIMENSION entities require a BLOCKS section to be defined.) in
addition to whatever changes will be needed to the rest of the
DXF plotting code.
Because KiCad allows a number of customizations to the
appearance of KiCad dimension items, the "minimal change"
would likely not result in efficiently reproducing the
dimension items exactly as they appear in KiCad in the DXF
plot output.
I see that QCAD's dxflib is already included in thirdparty, I
assume this is used for DXF import? Rather than reinventing
the wheel for plotting DIMENSION entities, what if dxflib was
used for DXF plotting also?
I assume there is a good reason for the DXF plotter being the
way it is now. Is there a specific design intent that prevents
using dxflib to plot? In general, could I get some advice on
what kind of approach to take, what kind of contribution would
be most helpful?
John
--
You received this message because you are subscribed to the
Google Groups "KiCad Developers" group.
To unsubscribe from this group and stop receiving emails from
it, send an email to devlist+unsubscr...@kicad.org.
To view this discussion on the web visit
https://groups.google.com/a/kicad.org/d/msgid/devlist/f84e169d-692f-48d6-981e-f37a3fdfb39cn%40kicad.org
<https://groups.google.com/a/kicad.org/d/msgid/devlist/f84e169d-692f-48d6-981e-f37a3fdfb39cn%40kicad.org?utm_medium=email&utm_source=footer>.
--
You received this message because you are subscribed to a topic in
the Google Groups "KiCad Developers" group.
To unsubscribe from this topic, visit
https://groups.google.com/a/kicad.org/d/topic/devlist/opU06Y4ktwk/unsubscribe.
To unsubscribe from this group and all its topics, send an email
to devlist+unsubscr...@kicad.org.
To view this discussion on the web visit
https://groups.google.com/a/kicad.org/d/msgid/devlist/CAFdeG-rjYcMsJ5hmt1qdAy%3Di_36yv_YQF6xotfBSJmrLYP2hBA%40mail.gmail.com
<https://groups.google.com/a/kicad.org/d/msgid/devlist/CAFdeG-rjYcMsJ5hmt1qdAy%3Di_36yv_YQF6xotfBSJmrLYP2hBA%40mail.gmail.com?utm_medium=email&utm_source=footer>.
--
You received this message because you are subscribed to the Google
Groups "KiCad Developers" group.
To unsubscribe from this group and stop receiving emails from it, send
an email to devlist+unsubscr...@kicad.org.
To view this discussion on the web visit
https://groups.google.com/a/kicad.org/d/msgid/devlist/CAJ4BsvtjsEa%2B2VxTvq2d5SOaC-QxoCGe6YWD1y8N0WTFPx3%3DKg%40mail.gmail.com
<https://groups.google.com/a/kicad.org/d/msgid/devlist/CAJ4BsvtjsEa%2B2VxTvq2d5SOaC-QxoCGe6YWD1y8N0WTFPx3%3DKg%40mail.gmail.com?utm_medium=email&utm_source=footer>.
--
You received this message because you are subscribed to the Google Groups "KiCad
Developers" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to devlist+unsubscr...@kicad.org.
To view this discussion on the web visit
https://groups.google.com/a/kicad.org/d/msgid/devlist/319ea996-b00e-3c21-ee4a-68b6d840b680%40gmail.com.