Add HPGL job support

- kicad-cli pcb export hpgl
- "Export HPGL" job
This commit is contained in:
Salvador E. Tropea
2025-04-28 23:05:45 +00:00
committed by Mark Roszko
parent d384790d47
commit c528f3c605
11 changed files with 444 additions and 0 deletions
+12
View File
@@ -47,6 +47,7 @@
#include <math/util.h> // for KiROUND
#include <macros.h>
#include <jobs/job_export_pcb_gerbers.h>
#include <jobs/job_export_pcb_hpgl.h>
#include <jobs/job_export_pcb_dxf.h>
#include <jobs/job_export_pcb_pdf.h>
#include <jobs/job_export_pcb_ps.h>
@@ -454,6 +455,15 @@ void DIALOG_PLOT::transferPlotParamsToJob()
gJob->m_useBoardPlotParams = false;
}
if( m_job->m_plotFormat == JOB_EXPORT_PCB_PLOT::PLOT_FORMAT::HPGL )
{
JOB_EXPORT_PCB_HPGL* hpglJob = static_cast<JOB_EXPORT_PCB_HPGL*>( m_job );
hpglJob->m_genMode = JOB_EXPORT_PCB_HPGL::GEN_MODE::MULTI;
hpglJob->m_defaultPenSize = m_plotOpts.GetHPGLPenDiameter() / 1000.0 * 25.4; // mils to mm
hpglJob->m_penNumber = m_plotOpts.GetHPGLPenNum();
hpglJob->m_penSpeed = m_plotOpts.GetHPGLPenSpeed();
}
if( m_job->m_plotFormat == JOB_EXPORT_PCB_PLOT::PLOT_FORMAT::SVG )
{
JOB_EXPORT_PCB_SVG* svgJob = static_cast<JOB_EXPORT_PCB_SVG*>( m_job );
@@ -1120,6 +1130,8 @@ void DIALOG_PLOT::applyPlotSettings()
{
tempOptions.SetHPGLPenDiameter( m_plotOpts.GetHPGLPenDiameter() );
}
tempOptions.SetHPGLPenSpeed( m_plotOpts.GetHPGLPenSpeed() );
tempOptions.SetHPGLPenNum( m_plotOpts.GetHPGLPenNum() );
// X scale
double tmpDouble;