KiCad PCB EDA Suite
PCB_PLOT_PARAMS Class Reference

Parameters and options when plotting/printing a board. More...

#include <pcb_plot_params.h>

Inheritance diagram for PCB_PLOT_PARAMS:
BRDITEMS_PLOTTER

Public Member Functions

 PCB_PLOT_PARAMS ()
 
void SetSkipPlotNPTH_Pads (bool aSkip)
 
bool GetSkipPlotNPTH_Pads () const
 
void Format (OUTPUTFORMATTER *aFormatter, int aNestLevel, int aControl=0) const
 
void Parse (PCB_PLOT_PARAMS_PARSER *aParser)
 
bool IsSameAs (const PCB_PLOT_PARAMS &aPcbPlotParams) const
 Compare current settings to aPcbPlotParams, including not saved parameters in brd file. More...
 
void SetColorSettings (COLOR_SETTINGS *aSettings)
 
COLOR_SETTINGSColorSettings () const
 
void SetTextMode (PLOT_TEXT_MODE aVal)
 
PLOT_TEXT_MODE GetTextMode () const
 
void SetPlotMode (OUTLINE_MODE aPlotMode)
 
OUTLINE_MODE GetPlotMode () const
 
void SetDXFPlotPolygonMode (bool aFlag)
 
bool GetDXFPlotPolygonMode () const
 
void SetDXFPlotUnits (DXF_UNITS aUnit)
 
DXF_UNITS GetDXFPlotUnits () const
 
void SetDrillMarksType (DRILL_MARKS aVal)
 
DRILL_MARKS GetDrillMarksType () const
 
void SetScale (double aVal)
 
double GetScale () const
 
void SetFineScaleAdjustX (double aVal)
 
double GetFineScaleAdjustX () const
 
void SetFineScaleAdjustY (double aVal)
 
double GetFineScaleAdjustY () const
 
void SetWidthAdjust (int aVal)
 
int GetWidthAdjust () const
 
void SetAutoScale (bool aFlag)
 
bool GetAutoScale () const
 
void SetMirror (bool aFlag)
 
bool GetMirror () const
 
void SetSketchPadsOnFabLayers (bool aFlag)
 
bool GetSketchPadsOnFabLayers () const
 
void SetSketchPadLineWidth (int aWidth)
 
int GetSketchPadLineWidth () const
 
void SetPlotInvisibleText (bool aFlag)
 
bool GetPlotInvisibleText () const
 
void SetPlotValue (bool aFlag)
 
bool GetPlotValue () const
 
void SetPlotReference (bool aFlag)
 
bool GetPlotReference () const
 
void SetNegative (bool aFlag)
 
bool GetNegative () const
 
void SetPlotViaOnMaskLayer (bool aFlag)
 
bool GetPlotViaOnMaskLayer () const
 
void SetPlotFrameRef (bool aFlag)
 
bool GetPlotFrameRef () const
 
void SetFormat (PLOT_FORMAT aFormat)
 
PLOT_FORMAT GetFormat () const
 
void SetOutputDirectory (const wxString &aDir)
 
wxString GetOutputDirectory () const
 
void SetDisableGerberMacros (bool aDisable)
 
bool GetDisableGerberMacros () const
 
void SetUseGerberX2format (bool aUse)
 
bool GetUseGerberX2format () const
 
void SetIncludeGerberNetlistInfo (bool aUse)
 
bool GetIncludeGerberNetlistInfo () const
 
void SetCreateGerberJobFile (bool aCreate)
 
bool GetCreateGerberJobFile () const
 
void SetUseGerberProtelExtensions (bool aUse)
 
bool GetUseGerberProtelExtensions () const
 
void SetGerberPrecision (int aPrecision)
 
int GetGerberPrecision () const
 
void SetSvgPrecision (unsigned aPrecision)
 
unsigned GetSvgPrecision () const
 
void SetBlackAndWhite (bool blackAndWhite)
 
unsigned GetBlackAndWhite () const
 
void SetSubtractMaskFromSilk (bool aSubtract)
 
bool GetSubtractMaskFromSilk () const
 
void SetLayerSelection (LSET aSelection)
 
LSET GetLayerSelection () const
 
void SetPlotOnAllLayersSelection (LSET aSelection)
 
LSET GetPlotOnAllLayersSelection () const
 
void SetUseAuxOrigin (bool aAux)
 
bool GetUseAuxOrigin () const
 
void SetScaleSelection (int aSelection)
 
int GetScaleSelection () const
 
void SetA4Output (int aForce)
 
bool GetA4Output () const
 
double GetHPGLPenDiameter () const
 
bool SetHPGLPenDiameter (double aValue)
 
int GetHPGLPenSpeed () const
 
bool SetHPGLPenSpeed (int aValue)
 
void SetHPGLPenNum (int aVal)
 
int GetHPGLPenNum () const
 
void SetDashedLineDashRatio (double aVal)
 
double GetDashedLineDashRatio () const
 
void SetDashedLineGapRatio (double aVal)
 
double GetDashedLineGapRatio () const
 

Static Public Member Functions

static int GetGerberDefaultPrecision ()
 Default precision of coordinates in Gerber files. More...
 

Private Attributes

bool m_skipNPTH_Pads
 
OUTLINE_MODE m_plotMode
 FILLED or SKETCH selects how to plot filled objects. More...
 
bool m_DXFplotPolygonMode
 DXF format: Plot items in outline (polygon) mode. More...
 
DXF_UNITS m_DXFplotUnits
 DXF format: Units to use when plotting the DXF. More...
 
PLOT_FORMAT m_format
 Plot format type (chooses the driver to be used) More...
 
DRILL_MARKS m_drillMarks
 Holes can be not plotted, have a small mark or plotted in actual size. More...
 
PLOT_TEXT_MODE m_textMode
 Choose how represent text with PS, PDF and DXF drivers. More...
 
bool m_autoScale
 When true set the scale to fit the board in the page. More...
 
double m_scale
 Global scale factor, 1.0 plots a board with its actual size. More...
 
bool m_mirror
 Mirror the plot around the X axis. More...
 
bool m_negative
 Plot in negative color (supported only by some drivers) More...
 
bool m_plotViaOnMaskLayer
 True if vias are drawn on Mask layer (ie untented, exposed by mask) More...
 
bool m_plotFrameRef
 True to plot/print frame references. More...
 
LSET m_layerSelection
 Set of layers to plot. More...
 
LSET m_plotOnAllLayersSelection
 Set of layers that get plotted on each of the layers to plot. More...
 
bool m_useGerberProtelExtensions
 When plotting gerber files, use a conventional set of Protel extensions instead of .gbr, that is now the official gerber file extension this is a deprecated feature. More...
 
bool m_useGerberX2format
 Include attributes from the Gerber X2 format (chapter 5 in revision J2) More...
 
bool m_gerberDisableApertMacros
 Disable aperture macros in Gerber format (only for broken Gerber readers) Ideally, should be never selected. More...
 
bool m_includeGerberNetlistInfo
 Include netlist info (only in Gerber X2 format) (chapter ? in revision ?) More...
 
bool m_createGerberJobFile
 generate the auxiliary "job file" in gerber format More...
 
int m_gerberPrecision
 precision of coordinates in Gerber files: accepted 5 or 6 when units are in mm (6 or 7 in inches, but Pcbnew uses mm). More...
 
unsigned m_svgPrecision
 precision of coordinates in SVG files: accepted 3 - 6 6 is the internal resolution of Pcbnew More...
 
bool m_blackAndWhite
 Plot in black and white only. More...
 
bool m_useAuxOrigin
 Plot gerbers using auxiliary (drill) origin instead of absolute coordinates. More...
 
bool m_subtractMaskFromSilk
 On gerbers 'scrape' away the solder mask from silkscreen (trim silks) More...
 
bool m_A4Output
 Autoscale the plot to fit an A4 (landscape?) sheet. More...
 
int m_scaleSelection
 Scale ratio index (UI only) More...
 
wxString m_outputDirectory
 Output directory for plot files (usually relative to the board file) More...
 
bool m_plotReference
 Enable plotting of part references. More...
 
bool m_plotValue
 Enable plotting of part values. More...
 
bool m_plotInvisibleText
 Force plotting of fields marked invisible. More...
 
bool m_sketchPadsOnFabLayers
 Plots pads outlines on fab layers. More...
 
int m_sketchPadLineWidth
 
double m_fineScaleAdjustX
 fine scale adjust X axis More...
 
double m_fineScaleAdjustY
 fine scale adjust Y axis More...
 
int m_widthAdjust
 This width factor is intended to compensate PS printers/ plotters that do not strictly obey line width settings. More...
 
int m_HPGLPenNum
 HPGL only: pen number selection(1 to 9) More...
 
int m_HPGLPenSpeed
 HPGL only: pen speed, always in cm/s (1 to 99 cm/s) More...
 
double m_HPGLPenDiam
 HPGL only: pen diameter in MILS, useful to fill areas However, it is in mm in hpgl files. More...
 
double m_dashedLineDashRatio
 
double m_dashedLineGapRatio
 
COLOR_SETTINGSm_colors
 Pointer to active color settings to be used for plotting. More...
 
std::shared_ptr< COLOR_SETTINGSm_default_colors
 Dummy colors object that can be created if there is no Pgm context. More...
 

Friends

class PCB_PLOT_PARAMS_PARSER
 

Detailed Description

Parameters and options when plotting/printing a board.

Definition at line 36 of file pcb_plot_params.h.

Constructor & Destructor Documentation

◆ PCB_PLOT_PARAMS()

PCB_PLOT_PARAMS::PCB_PLOT_PARAMS ( )

Definition at line 91 of file pcb_plot_params.cpp.

92{
99 m_dashedLineDashRatio = 12.0; // From ISO 128-2
100 m_dashedLineGapRatio = 3.0; // From ISO 128-2
101
102 // we used 0.1mils for SVG step before, but nm precision is more accurate, so we use nm
104 m_plotFrameRef = false;
105 m_plotViaOnMaskLayer = false;
109 m_useAuxOrigin = false;
110 m_HPGLPenNum = 1;
111 m_HPGLPenSpeed = 20; // this param is always in cm/s
112 m_HPGLPenDiam = 15; // in mils
113 m_negative = false;
114 m_A4Output = false;
115 m_plotReference = true;
116 m_plotValue = true;
117 m_plotInvisibleText = false;
121 m_mirror = false;
123 m_autoScale = false;
124 m_scale = 1.0;
126 m_fineScaleAdjustX = 1.0;
127 m_fineScaleAdjustY = 1.0;
128 m_widthAdjust = 0.;
130 m_outputDirectory.clear();
133 | LSET::AllCuMask();
134
135 // This parameter controls if the NPTH pads will be plotted or not
136 // it is a "local" parameter
137 m_skipNPTH_Pads = false;
138
139 // line width to plot items in outline mode.
141
142 m_default_colors = std::make_shared<COLOR_SETTINGS>();
144
145 m_blackAndWhite = true;
146}
constexpr EDA_IU_SCALE pcbIUScale
Definition: base_units.h:109
LSET is a set of PCB_LAYER_IDs.
Definition: layer_ids.h:530
static LSET AllCuMask(int aCuLayerCount=MAX_CU_LAYERS)
Return a mask holding the requested number of Cu PCB_LAYER_IDs.
Definition: lset.cpp:773
bool m_sketchPadsOnFabLayers
Plots pads outlines on fab layers.
int m_HPGLPenNum
HPGL only: pen number selection(1 to 9)
DXF_UNITS m_DXFplotUnits
DXF format: Units to use when plotting the DXF.
double m_dashedLineGapRatio
int m_gerberPrecision
precision of coordinates in Gerber files: accepted 5 or 6 when units are in mm (6 or 7 in inches,...
std::shared_ptr< COLOR_SETTINGS > m_default_colors
Dummy colors object that can be created if there is no Pgm context.
OUTLINE_MODE m_plotMode
FILLED or SKETCH selects how to plot filled objects.
bool m_A4Output
Autoscale the plot to fit an A4 (landscape?) sheet.
int m_scaleSelection
Scale ratio index (UI only)
PLOT_TEXT_MODE m_textMode
Choose how represent text with PS, PDF and DXF drivers.
bool m_plotValue
Enable plotting of part values.
wxString m_outputDirectory
Output directory for plot files (usually relative to the board file)
bool m_autoScale
When true set the scale to fit the board in the page.
bool m_useGerberProtelExtensions
When plotting gerber files, use a conventional set of Protel extensions instead of ....
int m_HPGLPenSpeed
HPGL only: pen speed, always in cm/s (1 to 99 cm/s)
bool m_useAuxOrigin
Plot gerbers using auxiliary (drill) origin instead of absolute coordinates.
double m_scale
Global scale factor, 1.0 plots a board with its actual size.
int m_widthAdjust
This width factor is intended to compensate PS printers/ plotters that do not strictly obey line widt...
double m_fineScaleAdjustX
fine scale adjust X axis
double m_dashedLineDashRatio
bool m_plotFrameRef
True to plot/print frame references.
bool m_blackAndWhite
Plot in black and white only.
bool m_plotInvisibleText
Force plotting of fields marked invisible.
PLOT_FORMAT m_format
Plot format type (chooses the driver to be used)
bool m_createGerberJobFile
generate the auxiliary "job file" in gerber format
bool m_plotReference
Enable plotting of part references.
double m_fineScaleAdjustY
fine scale adjust Y axis
double m_HPGLPenDiam
HPGL only: pen diameter in MILS, useful to fill areas However, it is in mm in hpgl files.
bool m_DXFplotPolygonMode
DXF format: Plot items in outline (polygon) mode.
bool m_gerberDisableApertMacros
Disable aperture macros in Gerber format (only for broken Gerber readers) Ideally,...
bool m_subtractMaskFromSilk
On gerbers 'scrape' away the solder mask from silkscreen (trim silks)
COLOR_SETTINGS * m_colors
Pointer to active color settings to be used for plotting.
bool m_mirror
Mirror the plot around the X axis.
bool m_includeGerberNetlistInfo
Include netlist info (only in Gerber X2 format) (chapter ? in revision ?)
unsigned m_svgPrecision
precision of coordinates in SVG files: accepted 3 - 6 6 is the internal resolution of Pcbnew
DRILL_MARKS m_drillMarks
Holes can be not plotted, have a small mark or plotted in actual size.
bool m_useGerberX2format
Include attributes from the Gerber X2 format (chapter 5 in revision J2)
bool m_negative
Plot in negative color (supported only by some drivers)
bool m_plotViaOnMaskLayer
True if vias are drawn on Mask layer (ie untented, exposed by mask)
LSET m_layerSelection
Set of layers to plot.
@ Edge_Cuts
Definition: layer_ids.h:113
@ F_Paste
Definition: layer_ids.h:101
@ B_Mask
Definition: layer_ids.h:106
@ F_Mask
Definition: layer_ids.h:107
@ B_Paste
Definition: layer_ids.h:100
@ F_SilkS
Definition: layer_ids.h:104
@ B_SilkS
Definition: layer_ids.h:103
@ FILLED
Definition: outline_mode.h:27
static const int gbrDefaultPrecision
#define SVG_PRECISION_DEFAULT
constexpr int mmToIU(double mm) const
Definition: base_units.h:89

References LSET::AllCuMask(), B_Mask, B_Paste, B_SilkS, DEFAULT, Edge_Cuts, F_Mask, F_Paste, F_SilkS, FILLED, gbrDefaultPrecision, GERBER, INCHES, m_A4Output, m_autoScale, m_blackAndWhite, m_colors, m_createGerberJobFile, m_dashedLineDashRatio, m_dashedLineGapRatio, m_default_colors, m_drillMarks, m_DXFplotPolygonMode, m_DXFplotUnits, m_fineScaleAdjustX, m_fineScaleAdjustY, m_format, m_gerberDisableApertMacros, m_gerberPrecision, m_HPGLPenDiam, m_HPGLPenNum, m_HPGLPenSpeed, m_includeGerberNetlistInfo, m_layerSelection, m_mirror, m_negative, m_outputDirectory, m_plotFrameRef, m_plotInvisibleText, m_plotMode, m_plotReference, m_plotValue, m_plotViaOnMaskLayer, m_scale, m_scaleSelection, m_sketchPadLineWidth, m_sketchPadsOnFabLayers, m_skipNPTH_Pads, m_subtractMaskFromSilk, m_svgPrecision, m_textMode, m_useAuxOrigin, m_useGerberProtelExtensions, m_useGerberX2format, m_widthAdjust, EDA_IU_SCALE::mmToIU(), pcbIUScale, SMALL_DRILL_SHAPE, and SVG_PRECISION_DEFAULT.

Member Function Documentation

◆ ColorSettings()

COLOR_SETTINGS * PCB_PLOT_PARAMS::ColorSettings ( ) const
inline

◆ Format()

void PCB_PLOT_PARAMS::Format ( OUTPUTFORMATTER aFormatter,
int  aNestLevel,
int  aControl = 0 
) const

Definition at line 167 of file pcb_plot_params.cpp.

169{
170 auto printBool =
171 []( bool aBool ) -> const char*
172 {
173 return aBool ? "true" : "false";
174 };
175
176 aFormatter->Print( aNestLevel, "(pcbplotparams\n" );
177
178 aFormatter->Print( aNestLevel+1, "(layerselection 0x%s)\n",
179 m_layerSelection.FmtHex().c_str() );
180
181 aFormatter->Print( aNestLevel+1, "(plot_on_all_layers_selection 0x%s)\n",
183
184 aFormatter->Print( aNestLevel+1, "(disableapertmacros %s)\n",
185 printBool( m_gerberDisableApertMacros ) );
186
187 aFormatter->Print( aNestLevel+1, "(usegerberextensions %s)\n",
188 printBool( m_useGerberProtelExtensions) );
189
190 aFormatter->Print( aNestLevel+1, "(usegerberattributes %s)\n",
191 printBool( GetUseGerberX2format()) );
192
193 aFormatter->Print( aNestLevel+1, "(usegerberadvancedattributes %s)\n",
194 printBool( GetIncludeGerberNetlistInfo()) );
195
196 aFormatter->Print( aNestLevel+1, "(creategerberjobfile %s)\n",
197 printBool( GetCreateGerberJobFile()) );
198
199 // save this option only if it is not the default value,
200 // to avoid incompatibility with older Pcbnew version
202 aFormatter->Print( aNestLevel+1, "(gerberprecision %d)\n", m_gerberPrecision );
203
204 aFormatter->Print( aNestLevel+1, "(dashed_line_dash_ratio %f)\n", GetDashedLineDashRatio() );
205 aFormatter->Print( aNestLevel+1, "(dashed_line_gap_ratio %f)\n", GetDashedLineGapRatio() );
206
207 // SVG options
208 aFormatter->Print( aNestLevel+1, "(svgprecision %d)\n", m_svgPrecision );
209
210 aFormatter->Print( aNestLevel+1, "(plotframeref %s)\n", printBool( m_plotFrameRef ) );
211 aFormatter->Print( aNestLevel+1, "(viasonmask %s)\n", printBool( m_plotViaOnMaskLayer ) );
212 aFormatter->Print( aNestLevel+1, "(mode %d)\n", GetPlotMode() == SKETCH ? 2 : 1 );
213 aFormatter->Print( aNestLevel+1, "(useauxorigin %s)\n", printBool( m_useAuxOrigin ) );
214
215 // HPGL options
216 aFormatter->Print( aNestLevel+1, "(hpglpennumber %d)\n", m_HPGLPenNum );
217 aFormatter->Print( aNestLevel+1, "(hpglpenspeed %d)\n", m_HPGLPenSpeed );
218 aFormatter->Print( aNestLevel+1, "(hpglpendiameter %f)\n", m_HPGLPenDiam );
219
220 // DXF options
221 aFormatter->Print( aNestLevel+1, "(%s %s)\n", getTokenName( T_dxfpolygonmode ),
222 printBool( m_DXFplotPolygonMode ) );
223 aFormatter->Print( aNestLevel+1, "(%s %s)\n", getTokenName( T_dxfimperialunits ),
224 printBool( m_DXFplotUnits == DXF_UNITS::INCHES ) );
225 aFormatter->Print( aNestLevel+1, "(%s %s)\n", getTokenName( T_dxfusepcbnewfont ),
226 printBool( m_textMode != PLOT_TEXT_MODE::NATIVE ) );
227
228 aFormatter->Print( aNestLevel+1, "(%s %s)\n", getTokenName( T_psnegative ),
229 printBool( m_negative ) );
230 aFormatter->Print( aNestLevel+1, "(%s %s)\n", getTokenName( T_psa4output ),
231 printBool( m_A4Output ) );
232 aFormatter->Print( aNestLevel+1, "(plotreference %s)\n", printBool( m_plotReference ) );
233 aFormatter->Print( aNestLevel+1, "(plotvalue %s)\n", printBool( m_plotValue ) );
234 aFormatter->Print( aNestLevel+1, "(plotinvisibletext %s)\n", printBool( m_plotInvisibleText ) );
235 aFormatter->Print( aNestLevel+1, "(sketchpadsonfab %s)\n",
236 printBool( m_sketchPadsOnFabLayers ) );
237 aFormatter->Print( aNestLevel+1, "(subtractmaskfromsilk %s)\n",
238 printBool( m_subtractMaskFromSilk ) );
239 aFormatter->Print( aNestLevel+1, "(outputformat %d)\n", static_cast<int>( m_format ) );
240 aFormatter->Print( aNestLevel+1, "(mirror %s)\n", printBool( m_mirror ) );
241 aFormatter->Print( aNestLevel+1, "(drillshape %d)\n", (int)m_drillMarks );
242 aFormatter->Print( aNestLevel+1, "(scaleselection %d)\n", m_scaleSelection );
243 aFormatter->Print( aNestLevel+1, "(outputdirectory \"%s\")",
244 (const char*) m_outputDirectory.utf8_str() );
245 aFormatter->Print( 0, "\n" );
246 aFormatter->Print( aNestLevel, ")\n" );
247}
std::string FmtHex() const
Return a hex string showing contents of this LSEQ.
Definition: lset.cpp:321
int PRINTF_FUNC Print(int nestLevel, const char *fmt,...)
Format and write text to the output stream.
Definition: richio.cpp:433
bool GetCreateGerberJobFile() const
LSET m_plotOnAllLayersSelection
Set of layers that get plotted on each of the layers to plot.
bool GetUseGerberX2format() const
bool GetIncludeGerberNetlistInfo() const
double GetDashedLineGapRatio() const
double GetDashedLineDashRatio() const
OUTLINE_MODE GetPlotMode() const
@ SKETCH
Definition: outline_mode.h:26
static const char * getTokenName(T aTok)

References LSET::FmtHex(), gbrDefaultPrecision, GetCreateGerberJobFile(), GetDashedLineDashRatio(), GetDashedLineGapRatio(), GetIncludeGerberNetlistInfo(), GetPlotMode(), getTokenName(), GetUseGerberX2format(), INCHES, m_A4Output, m_drillMarks, m_DXFplotPolygonMode, m_DXFplotUnits, m_format, m_gerberDisableApertMacros, m_gerberPrecision, m_HPGLPenDiam, m_HPGLPenNum, m_HPGLPenSpeed, m_layerSelection, m_mirror, m_negative, m_outputDirectory, m_plotFrameRef, m_plotInvisibleText, m_plotOnAllLayersSelection, m_plotReference, m_plotValue, m_plotViaOnMaskLayer, m_scaleSelection, m_sketchPadsOnFabLayers, m_subtractMaskFromSilk, m_svgPrecision, m_textMode, m_useAuxOrigin, m_useGerberProtelExtensions, NATIVE, OUTPUTFORMATTER::Print(), and SKETCH.

Referenced by PCB_PLUGIN::formatSetup().

◆ GetA4Output()

bool PCB_PLOT_PARAMS::GetA4Output ( ) const
inline

Definition at line 178 of file pcb_plot_params.h.

178{ return m_A4Output; }

References m_A4Output.

Referenced by DIALOG_PLOT::init_Dialog(), and initializePlotter().

◆ GetAutoScale()

bool PCB_PLOT_PARAMS::GetAutoScale ( ) const
inline

Definition at line 94 of file pcb_plot_params.h.

94{ return m_autoScale; }

References m_autoScale.

Referenced by initializePlotter().

◆ GetBlackAndWhite()

unsigned PCB_PLOT_PARAMS::GetBlackAndWhite ( ) const
inline

Definition at line 148 of file pcb_plot_params.h.

148{ return m_blackAndWhite; }

References m_blackAndWhite.

Referenced by DIALOG_PLOT::init_Dialog(), and initializePlotter().

◆ GetCreateGerberJobFile()

bool PCB_PLOT_PARAMS::GetCreateGerberJobFile ( ) const
inline

Definition at line 136 of file pcb_plot_params.h.

136{ return m_createGerberJobFile; }

References m_createGerberJobFile.

Referenced by Format(), DIALOG_PLOT::init_Dialog(), and DIALOG_PLOT::Plot().

◆ GetDashedLineDashRatio()

double PCB_PLOT_PARAMS::GetDashedLineDashRatio ( ) const
inline

◆ GetDashedLineGapRatio()

double PCB_PLOT_PARAMS::GetDashedLineGapRatio ( ) const
inline

◆ GetDisableGerberMacros()

bool PCB_PLOT_PARAMS::GetDisableGerberMacros ( ) const
inline

Definition at line 127 of file pcb_plot_params.h.

References m_gerberDisableApertMacros.

Referenced by DIALOG_PLOT::init_Dialog(), and StartPlotBoard().

◆ GetDrillMarksType()

DRILL_MARKS PCB_PLOT_PARAMS::GetDrillMarksType ( ) const
inline

◆ GetDXFPlotPolygonMode()

bool PCB_PLOT_PARAMS::GetDXFPlotPolygonMode ( ) const
inline

Definition at line 75 of file pcb_plot_params.h.

75{ return m_DXFplotPolygonMode; }

References m_DXFplotPolygonMode.

Referenced by DIALOG_PLOT::init_Dialog(), and PlotOneBoardLayer().

◆ GetDXFPlotUnits()

DXF_UNITS PCB_PLOT_PARAMS::GetDXFPlotUnits ( ) const
inline

Definition at line 78 of file pcb_plot_params.h.

78{ return m_DXFplotUnits; }

References m_DXFplotUnits.

Referenced by DIALOG_PLOT::init_Dialog(), and StartPlotBoard().

◆ GetFineScaleAdjustX()

double PCB_PLOT_PARAMS::GetFineScaleAdjustX ( ) const
inline

Definition at line 87 of file pcb_plot_params.h.

87{ return m_fineScaleAdjustX; }

References m_fineScaleAdjustX.

Referenced by StartPlotBoard().

◆ GetFineScaleAdjustY()

double PCB_PLOT_PARAMS::GetFineScaleAdjustY ( ) const
inline

Definition at line 89 of file pcb_plot_params.h.

89{ return m_fineScaleAdjustY; }

References m_fineScaleAdjustY.

Referenced by StartPlotBoard().

◆ GetFormat()

PLOT_FORMAT PCB_PLOT_PARAMS::GetFormat ( ) const
inline

◆ GetGerberDefaultPrecision()

static int PCB_PLOT_PARAMS::GetGerberDefaultPrecision ( )
inlinestatic

Default precision of coordinates in Gerber files.

When units are in mm (7 in inches, but Pcbnew uses mm). 6 is the internal resolution of Pcbnew, so the default is 6.

Definition at line 156 of file pcb_plot_params.h.

156{ return 6; }

◆ GetGerberPrecision()

int PCB_PLOT_PARAMS::GetGerberPrecision ( ) const
inline

◆ GetHPGLPenDiameter()

double PCB_PLOT_PARAMS::GetHPGLPenDiameter ( ) const
inline

◆ GetHPGLPenNum()

int PCB_PLOT_PARAMS::GetHPGLPenNum ( ) const
inline

Definition at line 190 of file pcb_plot_params.h.

190{ return m_HPGLPenNum; }

References m_HPGLPenNum.

Referenced by ConfigureHPGLPenSizes().

◆ GetHPGLPenSpeed()

int PCB_PLOT_PARAMS::GetHPGLPenSpeed ( ) const
inline

Definition at line 186 of file pcb_plot_params.h.

186{ return m_HPGLPenSpeed; }

References m_HPGLPenSpeed.

Referenced by ConfigureHPGLPenSizes().

◆ GetIncludeGerberNetlistInfo()

bool PCB_PLOT_PARAMS::GetIncludeGerberNetlistInfo ( ) const
inline

Definition at line 133 of file pcb_plot_params.h.

References m_includeGerberNetlistInfo.

Referenced by Format(), DIALOG_PLOT::init_Dialog(), and StartPlotBoard().

◆ GetLayerSelection()

LSET PCB_PLOT_PARAMS::GetLayerSelection ( ) const
inline

◆ GetMirror()

bool PCB_PLOT_PARAMS::GetMirror ( ) const
inline

Definition at line 97 of file pcb_plot_params.h.

97{ return m_mirror; }

References m_mirror.

Referenced by DIALOG_PLOT::init_Dialog(), initializePlotter(), and StartPlotBoard().

◆ GetNegative()

bool PCB_PLOT_PARAMS::GetNegative ( ) const
inline

Definition at line 112 of file pcb_plot_params.h.

112{ return m_negative; }

References m_negative.

Referenced by DIALOG_PLOT::init_Dialog(), and StartPlotBoard().

◆ GetOutputDirectory()

◆ GetPlotFrameRef()

bool PCB_PLOT_PARAMS::GetPlotFrameRef ( ) const
inline

Definition at line 118 of file pcb_plot_params.h.

118{ return m_plotFrameRef; }

References m_plotFrameRef.

Referenced by DIALOG_PLOT::init_Dialog(), and StartPlotBoard().

◆ GetPlotInvisibleText()

bool PCB_PLOT_PARAMS::GetPlotInvisibleText ( ) const
inline

◆ GetPlotMode()

◆ GetPlotOnAllLayersSelection()

LSET PCB_PLOT_PARAMS::GetPlotOnAllLayersSelection ( ) const
inline

◆ GetPlotReference()

bool PCB_PLOT_PARAMS::GetPlotReference ( ) const
inline

Definition at line 109 of file pcb_plot_params.h.

109{ return m_plotReference; }

References m_plotReference.

Referenced by DIALOG_PLOT::init_Dialog(), and BRDITEMS_PLOTTER::PlotFootprintTextItems().

◆ GetPlotValue()

bool PCB_PLOT_PARAMS::GetPlotValue ( ) const
inline

Definition at line 107 of file pcb_plot_params.h.

107{ return m_plotValue; }

References m_plotValue.

Referenced by DIALOG_PLOT::init_Dialog(), and BRDITEMS_PLOTTER::PlotFootprintTextItems().

◆ GetPlotViaOnMaskLayer()

bool PCB_PLOT_PARAMS::GetPlotViaOnMaskLayer ( ) const
inline

Definition at line 115 of file pcb_plot_params.h.

115{ return m_plotViaOnMaskLayer; }

References m_plotViaOnMaskLayer.

Referenced by BOARD::GetTentVias(), DIALOG_PLOT::init_Dialog(), and PlotStandardLayer().

◆ GetScale()

double PCB_PLOT_PARAMS::GetScale ( ) const
inline

Definition at line 84 of file pcb_plot_params.h.

84{ return m_scale; }

References m_scale.

Referenced by ConfigureHPGLPenSizes(), initializePlotter(), and DIALOG_PLOT::Plot().

◆ GetScaleSelection()

int PCB_PLOT_PARAMS::GetScaleSelection ( ) const
inline

Definition at line 175 of file pcb_plot_params.h.

175{ return m_scaleSelection; }

References m_scaleSelection.

Referenced by DIALOG_PLOT::init_Dialog(), and DIALOG_PLOT::Plot().

◆ GetSketchPadLineWidth()

int PCB_PLOT_PARAMS::GetSketchPadLineWidth ( ) const
inline

Definition at line 102 of file pcb_plot_params.h.

102{ return m_sketchPadLineWidth; }

References m_sketchPadLineWidth.

Referenced by BRDITEMS_PLOTTER::PlotPad().

◆ GetSketchPadsOnFabLayers()

bool PCB_PLOT_PARAMS::GetSketchPadsOnFabLayers ( ) const
inline

Definition at line 100 of file pcb_plot_params.h.

100{ return m_sketchPadsOnFabLayers; }

References m_sketchPadsOnFabLayers.

Referenced by DIALOG_PLOT::init_Dialog(), and PlotStandardLayer().

◆ GetSkipPlotNPTH_Pads()

bool PCB_PLOT_PARAMS::GetSkipPlotNPTH_Pads ( ) const
inline

Definition at line 42 of file pcb_plot_params.h.

42{ return m_skipNPTH_Pads; }

References m_skipNPTH_Pads.

Referenced by PlotStandardLayer().

◆ GetSubtractMaskFromSilk()

bool PCB_PLOT_PARAMS::GetSubtractMaskFromSilk ( ) const
inline

Definition at line 159 of file pcb_plot_params.h.

159{ return m_subtractMaskFromSilk; }

References m_subtractMaskFromSilk.

Referenced by DIALOG_PLOT::init_Dialog(), and PlotOneBoardLayer().

◆ GetSvgPrecision()

unsigned PCB_PLOT_PARAMS::GetSvgPrecision ( ) const
inline

Definition at line 145 of file pcb_plot_params.h.

145{ return m_svgPrecision; }

References m_svgPrecision.

Referenced by DIALOG_PLOT::init_Dialog(), and initializePlotter().

◆ GetTextMode()

PLOT_TEXT_MODE PCB_PLOT_PARAMS::GetTextMode ( ) const
inline

Definition at line 66 of file pcb_plot_params.h.

67 {
68 return m_textMode;
69 }

References m_textMode.

Referenced by DIALOG_PLOT::init_Dialog(), initializePlotter(), and PlotOneBoardLayer().

◆ GetUseAuxOrigin()

bool PCB_PLOT_PARAMS::GetUseAuxOrigin ( ) const
inline

◆ GetUseGerberProtelExtensions()

bool PCB_PLOT_PARAMS::GetUseGerberProtelExtensions ( ) const
inline

Definition at line 139 of file pcb_plot_params.h.

References m_useGerberProtelExtensions.

Referenced by DIALOG_PLOT::init_Dialog().

◆ GetUseGerberX2format()

bool PCB_PLOT_PARAMS::GetUseGerberX2format ( ) const
inline

Definition at line 130 of file pcb_plot_params.h.

130{ return m_useGerberX2format; }

References m_useGerberX2format.

Referenced by Format(), DIALOG_PLOT::init_Dialog(), and StartPlotBoard().

◆ GetWidthAdjust()

int PCB_PLOT_PARAMS::GetWidthAdjust ( ) const
inline

Definition at line 91 of file pcb_plot_params.h.

91{ return m_widthAdjust; }

References m_widthAdjust.

Referenced by BRDITEMS_PLOTTER::getFineWidthAdj().

◆ IsSameAs()

bool PCB_PLOT_PARAMS::IsSameAs ( const PCB_PLOT_PARAMS aPcbPlotParams) const

Compare current settings to aPcbPlotParams, including not saved parameters in brd file.

Parameters
aPcbPlotParamsis the PCB_PLOT_PARAMS to compare/
aCompareOnlySavedPrmsset to true to compare only saved in file parameters, or false to compare the full set of parameters.
Returns
true is parameters are same, false if one (or more) parameter does not match.

Definition at line 256 of file pcb_plot_params.cpp.

257{
258 if( m_layerSelection != aPcbPlotParams.m_layerSelection )
259 return false;
260
262 return false;
263
265 return false;
266
268 return false;
269
270 if( m_useGerberX2format != aPcbPlotParams.m_useGerberX2format )
271 return false;
272
274 return false;
275
276 if( m_createGerberJobFile != aPcbPlotParams.m_createGerberJobFile )
277 return false;
278
279 if( m_gerberPrecision != aPcbPlotParams.m_gerberPrecision )
280 return false;
281
282 if( m_dashedLineDashRatio != aPcbPlotParams.m_dashedLineDashRatio )
283 return false;
284
285 if( m_dashedLineGapRatio != aPcbPlotParams.m_dashedLineGapRatio )
286 return false;
287
288 if( m_plotFrameRef != aPcbPlotParams.m_plotFrameRef )
289 return false;
290
291 if( m_plotViaOnMaskLayer != aPcbPlotParams.m_plotViaOnMaskLayer )
292 return false;
293
294 if( m_plotMode != aPcbPlotParams.m_plotMode )
295 return false;
296
297 if( m_DXFplotPolygonMode != aPcbPlotParams.m_DXFplotPolygonMode )
298 return false;
299
300 if( m_DXFplotUnits != aPcbPlotParams.m_DXFplotUnits )
301 return false;
302
303 if( m_svgPrecision != aPcbPlotParams.m_svgPrecision )
304 return false;
305
306 if( m_useAuxOrigin != aPcbPlotParams.m_useAuxOrigin )
307 return false;
308
309 if( m_HPGLPenNum != aPcbPlotParams.m_HPGLPenNum )
310 return false;
311
312 if( m_HPGLPenSpeed != aPcbPlotParams.m_HPGLPenSpeed )
313 return false;
314
315 if( m_HPGLPenDiam != aPcbPlotParams.m_HPGLPenDiam )
316 return false;
317
318 if( m_negative != aPcbPlotParams.m_negative )
319 return false;
320
321 if( m_A4Output != aPcbPlotParams.m_A4Output )
322 return false;
323
324 if( m_plotReference != aPcbPlotParams.m_plotReference )
325 return false;
326
327 if( m_plotValue != aPcbPlotParams.m_plotValue )
328 return false;
329
330 if( m_plotInvisibleText != aPcbPlotParams.m_plotInvisibleText )
331 return false;
332
334 return false;
335
336 if( m_subtractMaskFromSilk != aPcbPlotParams.m_subtractMaskFromSilk )
337 return false;
338
339 if( m_format != aPcbPlotParams.m_format )
340 return false;
341
342 if( m_mirror != aPcbPlotParams.m_mirror )
343 return false;
344
345 if( m_drillMarks != aPcbPlotParams.m_drillMarks )
346 return false;
347
348 if( m_scaleSelection != aPcbPlotParams.m_scaleSelection )
349 return false;
350
351 if( m_autoScale != aPcbPlotParams.m_autoScale )
352 return false;
353
354 if( m_scale != aPcbPlotParams.m_scale )
355 return false;
356
357 if( m_fineScaleAdjustX != aPcbPlotParams.m_fineScaleAdjustX )
358 return false;
359
360 if( m_fineScaleAdjustY != aPcbPlotParams.m_fineScaleAdjustY )
361 return false;
362
363 if( m_widthAdjust != aPcbPlotParams.m_widthAdjust )
364 return false;
365
366 if( m_textMode != aPcbPlotParams.m_textMode )
367 return false;
368
369 if( m_blackAndWhite != aPcbPlotParams.m_blackAndWhite )
370 return false;
371
372 if( !m_outputDirectory.IsSameAs( aPcbPlotParams.m_outputDirectory ) )
373 return false;
374
375 return true;
376}

References m_A4Output, m_autoScale, m_blackAndWhite, m_createGerberJobFile, m_dashedLineDashRatio, m_dashedLineGapRatio, m_drillMarks, m_DXFplotPolygonMode, m_DXFplotUnits, m_fineScaleAdjustX, m_fineScaleAdjustY, m_format, m_gerberDisableApertMacros, m_gerberPrecision, m_HPGLPenDiam, m_HPGLPenNum, m_HPGLPenSpeed, m_includeGerberNetlistInfo, m_layerSelection, m_mirror, m_negative, m_outputDirectory, m_plotFrameRef, m_plotInvisibleText, m_plotMode, m_plotOnAllLayersSelection, m_plotReference, m_plotValue, m_plotViaOnMaskLayer, m_scale, m_scaleSelection, m_sketchPadsOnFabLayers, m_subtractMaskFromSilk, m_svgPrecision, m_textMode, m_useAuxOrigin, m_useGerberProtelExtensions, m_useGerberX2format, and m_widthAdjust.

Referenced by DIALOG_PLOT::applyPlotSettings(), and DIALOG_GENDRILL::UpdateDrillParams().

◆ Parse()

void PCB_PLOT_PARAMS::Parse ( PCB_PLOT_PARAMS_PARSER aParser)

Definition at line 250 of file pcb_plot_params.cpp.

251{
252 aParser->Parse( this );
253}
void Parse(PCB_PLOT_PARAMS *aPcbPlotParams)

References PCB_PLOT_PARAMS_PARSER::Parse().

Referenced by LEGACY_PLUGIN::loadSETUP(), and PCB_PARSER::parseSetup().

◆ SetA4Output()

void PCB_PLOT_PARAMS::SetA4Output ( int  aForce)
inline

Definition at line 177 of file pcb_plot_params.h.

177{ m_A4Output = aForce; }

References m_A4Output.

Referenced by DIALOG_PLOT::applyPlotSettings().

◆ SetAutoScale()

void PCB_PLOT_PARAMS::SetAutoScale ( bool  aFlag)
inline

Definition at line 93 of file pcb_plot_params.h.

93{ m_autoScale = aFlag; }

References m_autoScale.

Referenced by DIALOG_PLOT::Plot().

◆ SetBlackAndWhite()

void PCB_PLOT_PARAMS::SetBlackAndWhite ( bool  blackAndWhite)
inline

Definition at line 147 of file pcb_plot_params.h.

147{ m_blackAndWhite = blackAndWhite; }

References m_blackAndWhite.

Referenced by DIALOG_PLOT::applyPlotSettings().

◆ SetColorSettings()

void PCB_PLOT_PARAMS::SetColorSettings ( COLOR_SETTINGS aSettings)
inline

Definition at line 57 of file pcb_plot_params.h.

57{ m_colors = aSettings; }

References m_colors.

Referenced by PCB_PLOT_SVG::Plot(), and DIALOG_PLOT::Plot().

◆ SetCreateGerberJobFile()

void PCB_PLOT_PARAMS::SetCreateGerberJobFile ( bool  aCreate)
inline

Definition at line 135 of file pcb_plot_params.h.

135{ m_createGerberJobFile = aCreate; }

References m_createGerberJobFile.

Referenced by DIALOG_PLOT::applyPlotSettings().

◆ SetDashedLineDashRatio()

void PCB_PLOT_PARAMS::SetDashedLineDashRatio ( double  aVal)
inline

Definition at line 192 of file pcb_plot_params.h.

192{ m_dashedLineDashRatio = aVal; }

References m_dashedLineDashRatio.

◆ SetDashedLineGapRatio()

void PCB_PLOT_PARAMS::SetDashedLineGapRatio ( double  aVal)
inline

Definition at line 195 of file pcb_plot_params.h.

195{ m_dashedLineGapRatio = aVal; }

References m_dashedLineGapRatio.

◆ SetDisableGerberMacros()

void PCB_PLOT_PARAMS::SetDisableGerberMacros ( bool  aDisable)
inline

◆ SetDrillMarksType()

void PCB_PLOT_PARAMS::SetDrillMarksType ( DRILL_MARKS  aVal)
inline

◆ SetDXFPlotPolygonMode()

void PCB_PLOT_PARAMS::SetDXFPlotPolygonMode ( bool  aFlag)
inline

◆ SetDXFPlotUnits()

void PCB_PLOT_PARAMS::SetDXFPlotUnits ( DXF_UNITS  aUnit)
inline

Definition at line 77 of file pcb_plot_params.h.

77{ m_DXFplotUnits = aUnit; }

References m_DXFplotUnits.

Referenced by DIALOG_PLOT::applyPlotSettings(), and PCBNEW_JOBS_HANDLER::JobExportDxf().

◆ SetFineScaleAdjustX()

void PCB_PLOT_PARAMS::SetFineScaleAdjustX ( double  aVal)
inline

Definition at line 86 of file pcb_plot_params.h.

86{ m_fineScaleAdjustX = aVal; }

References m_fineScaleAdjustX.

Referenced by DIALOG_PLOT::Plot().

◆ SetFineScaleAdjustY()

void PCB_PLOT_PARAMS::SetFineScaleAdjustY ( double  aVal)
inline

Definition at line 88 of file pcb_plot_params.h.

88{ m_fineScaleAdjustY = aVal; }

References m_fineScaleAdjustY.

Referenced by DIALOG_PLOT::Plot().

◆ SetFormat()

◆ SetGerberPrecision()

void PCB_PLOT_PARAMS::SetGerberPrecision ( int  aPrecision)

Definition at line 149 of file pcb_plot_params.cpp.

150{
151 // Currently Gerber files use mm.
152 // accepted precision is only 6 (max value, this is the resolution of Pcbnew)
153 // or 5, min value for professional boards, when 6 creates problems
154 // to board makers.
155
158}

References gbrDefaultPrecision, and m_gerberPrecision.

Referenced by DIALOG_PLOT::applyPlotSettings(), and PCBNEW_JOBS_HANDLER::populateGerberPlotOptionsFromJob().

◆ SetHPGLPenDiameter()

bool PCB_PLOT_PARAMS::SetHPGLPenDiameter ( double  aValue)

Definition at line 379 of file pcb_plot_params.cpp.

380{
382}
static bool setDouble(double *aTarget, double aValue, double aMin, double aMax)
#define HPGL_PEN_DIAMETER_MIN
#define HPGL_PEN_DIAMETER_MAX

References HPGL_PEN_DIAMETER_MAX, HPGL_PEN_DIAMETER_MIN, m_HPGLPenDiam, and setDouble().

Referenced by DIALOG_PLOT::applyPlotSettings().

◆ SetHPGLPenNum()

void PCB_PLOT_PARAMS::SetHPGLPenNum ( int  aVal)
inline

Definition at line 189 of file pcb_plot_params.h.

189{ m_HPGLPenNum = aVal; }

References m_HPGLPenNum.

◆ SetHPGLPenSpeed()

bool PCB_PLOT_PARAMS::SetHPGLPenSpeed ( int  aValue)

Definition at line 385 of file pcb_plot_params.cpp.

386{
388}
#define HPGL_PEN_SPEED_MAX
static bool setInt(int *aTarget, int aValue, int aMin, int aMax)
#define HPGL_PEN_SPEED_MIN

References HPGL_PEN_SPEED_MAX, HPGL_PEN_SPEED_MIN, m_HPGLPenSpeed, and setInt().

◆ SetIncludeGerberNetlistInfo()

void PCB_PLOT_PARAMS::SetIncludeGerberNetlistInfo ( bool  aUse)
inline

◆ SetLayerSelection()

void PCB_PLOT_PARAMS::SetLayerSelection ( LSET  aSelection)
inline

◆ SetMirror()

void PCB_PLOT_PARAMS::SetMirror ( bool  aFlag)
inline

Definition at line 96 of file pcb_plot_params.h.

96{ m_mirror = aFlag; }

References m_mirror.

Referenced by DIALOG_PLOT::applyPlotSettings(), PCB_PLOT_SVG::Plot(), and StartPlotBoard().

◆ SetNegative()

void PCB_PLOT_PARAMS::SetNegative ( bool  aFlag)
inline

Definition at line 111 of file pcb_plot_params.h.

111{ m_negative = aFlag; }

References m_negative.

Referenced by DIALOG_PLOT::applyPlotSettings().

◆ SetOutputDirectory()

void PCB_PLOT_PARAMS::SetOutputDirectory ( const wxString &  aDir)
inline

Definition at line 123 of file pcb_plot_params.h.

123{ m_outputDirectory = aDir; }

References m_outputDirectory.

Referenced by DIALOG_PLOT::applyPlotSettings(), and DIALOG_GENDRILL::UpdateDrillParams().

◆ SetPlotFrameRef()

void PCB_PLOT_PARAMS::SetPlotFrameRef ( bool  aFlag)
inline

◆ SetPlotInvisibleText()

void PCB_PLOT_PARAMS::SetPlotInvisibleText ( bool  aFlag)
inline

Definition at line 104 of file pcb_plot_params.h.

104{ m_plotInvisibleText = aFlag; }

References m_plotInvisibleText.

Referenced by DIALOG_PLOT::applyPlotSettings().

◆ SetPlotMode()

void PCB_PLOT_PARAMS::SetPlotMode ( OUTLINE_MODE  aPlotMode)
inline

Definition at line 71 of file pcb_plot_params.h.

71{ m_plotMode = aPlotMode; }

References m_plotMode.

Referenced by DIALOG_PLOT::applyPlotSettings(), and PCB_PLOT_PARAMS_PARSER::Parse().

◆ SetPlotOnAllLayersSelection()

void PCB_PLOT_PARAMS::SetPlotOnAllLayersSelection ( LSET  aSelection)
inline

Definition at line 164 of file pcb_plot_params.h.

165 {
166 m_plotOnAllLayersSelection = aSelection;
167 }

References m_plotOnAllLayersSelection.

Referenced by DIALOG_PLOT::applyPlotSettings().

◆ SetPlotReference()

void PCB_PLOT_PARAMS::SetPlotReference ( bool  aFlag)
inline

◆ SetPlotValue()

void PCB_PLOT_PARAMS::SetPlotValue ( bool  aFlag)
inline

◆ SetPlotViaOnMaskLayer()

void PCB_PLOT_PARAMS::SetPlotViaOnMaskLayer ( bool  aFlag)
inline

Definition at line 114 of file pcb_plot_params.h.

114{ m_plotViaOnMaskLayer = aFlag; }

References m_plotViaOnMaskLayer.

Referenced by DIALOG_PLOT::applyPlotSettings(), and BOARD::SetTentVias().

◆ SetScale()

void PCB_PLOT_PARAMS::SetScale ( double  aVal)
inline

Definition at line 83 of file pcb_plot_params.h.

83{ m_scale = aVal; }

References m_scale.

Referenced by DIALOG_PLOT::Plot().

◆ SetScaleSelection()

void PCB_PLOT_PARAMS::SetScaleSelection ( int  aSelection)
inline

Definition at line 174 of file pcb_plot_params.h.

174{ m_scaleSelection = aSelection; }

References m_scaleSelection.

Referenced by DIALOG_PLOT::applyPlotSettings().

◆ SetSketchPadLineWidth()

void PCB_PLOT_PARAMS::SetSketchPadLineWidth ( int  aWidth)
inline

Definition at line 101 of file pcb_plot_params.h.

101{ m_sketchPadLineWidth = aWidth; }

References m_sketchPadLineWidth.

Referenced by DIALOG_PLOT::Plot().

◆ SetSketchPadsOnFabLayers()

void PCB_PLOT_PARAMS::SetSketchPadsOnFabLayers ( bool  aFlag)
inline

Definition at line 99 of file pcb_plot_params.h.

99{ m_sketchPadsOnFabLayers = aFlag; }

References m_sketchPadsOnFabLayers.

Referenced by DIALOG_PLOT::applyPlotSettings().

◆ SetSkipPlotNPTH_Pads()

void PCB_PLOT_PARAMS::SetSkipPlotNPTH_Pads ( bool  aSkip)
inline

Definition at line 41 of file pcb_plot_params.h.

41{ m_skipNPTH_Pads = aSkip; }

References m_skipNPTH_Pads.

Referenced by PCB_PLOT_SVG::Plot(), and PlotOneBoardLayer().

◆ SetSubtractMaskFromSilk()

void PCB_PLOT_PARAMS::SetSubtractMaskFromSilk ( bool  aSubtract)
inline

◆ SetSvgPrecision()

void PCB_PLOT_PARAMS::SetSvgPrecision ( unsigned  aPrecision)

Definition at line 161 of file pcb_plot_params.cpp.

162{
164}
#define SVG_PRECISION_MIN
#define SVG_PRECISION_MAX
constexpr T Clamp(const T &lower, const T &value, const T &upper)
Limit value within the range lower <= value <= upper.
Definition: util.h:64

References Clamp(), m_svgPrecision, SVG_PRECISION_MAX, and SVG_PRECISION_MIN.

Referenced by DIALOG_PLOT::applyPlotSettings(), and PCB_PLOT_SVG::Plot().

◆ SetTextMode()

void PCB_PLOT_PARAMS::SetTextMode ( PLOT_TEXT_MODE  aVal)
inline

Definition at line 61 of file pcb_plot_params.h.

62 {
63 m_textMode = aVal;
64 }

References m_textMode.

Referenced by DIALOG_PLOT::applyPlotSettings().

◆ SetUseAuxOrigin()

void PCB_PLOT_PARAMS::SetUseAuxOrigin ( bool  aAux)
inline

◆ SetUseGerberProtelExtensions()

void PCB_PLOT_PARAMS::SetUseGerberProtelExtensions ( bool  aUse)
inline

Definition at line 138 of file pcb_plot_params.h.

References m_useGerberProtelExtensions.

Referenced by DIALOG_PLOT::applyPlotSettings().

◆ SetUseGerberX2format()

void PCB_PLOT_PARAMS::SetUseGerberX2format ( bool  aUse)
inline

◆ SetWidthAdjust()

void PCB_PLOT_PARAMS::SetWidthAdjust ( int  aVal)
inline

Definition at line 90 of file pcb_plot_params.h.

90{ m_widthAdjust = aVal; }

References m_widthAdjust.

Referenced by DIALOG_PLOT::Plot().

Friends And Related Function Documentation

◆ PCB_PLOT_PARAMS_PARSER

friend class PCB_PLOT_PARAMS_PARSER
friend

Definition at line 199 of file pcb_plot_params.h.

Member Data Documentation

◆ m_A4Output

bool PCB_PLOT_PARAMS::m_A4Output
private

Autoscale the plot to fit an A4 (landscape?) sheet.

Definition at line 296 of file pcb_plot_params.h.

Referenced by Format(), GetA4Output(), IsSameAs(), PCB_PLOT_PARAMS_PARSER::Parse(), PCB_PLOT_PARAMS(), and SetA4Output().

◆ m_autoScale

bool PCB_PLOT_PARAMS::m_autoScale
private

When true set the scale to fit the board in the page.

Definition at line 234 of file pcb_plot_params.h.

Referenced by GetAutoScale(), IsSameAs(), PCB_PLOT_PARAMS(), and SetAutoScale().

◆ m_blackAndWhite

bool PCB_PLOT_PARAMS::m_blackAndWhite
private

Plot in black and white only.

Definition at line 287 of file pcb_plot_params.h.

Referenced by GetBlackAndWhite(), IsSameAs(), PCB_PLOT_PARAMS(), and SetBlackAndWhite().

◆ m_colors

COLOR_SETTINGS* PCB_PLOT_PARAMS::m_colors
private

Pointer to active color settings to be used for plotting.

Definition at line 343 of file pcb_plot_params.h.

Referenced by ColorSettings(), PCB_PLOT_PARAMS(), and SetColorSettings().

◆ m_createGerberJobFile

bool PCB_PLOT_PARAMS::m_createGerberJobFile
private

generate the auxiliary "job file" in gerber format

Definition at line 274 of file pcb_plot_params.h.

Referenced by GetCreateGerberJobFile(), IsSameAs(), PCB_PLOT_PARAMS_PARSER::Parse(), PCB_PLOT_PARAMS(), and SetCreateGerberJobFile().

◆ m_dashedLineDashRatio

double PCB_PLOT_PARAMS::m_dashedLineDashRatio
private

◆ m_dashedLineGapRatio

double PCB_PLOT_PARAMS::m_dashedLineGapRatio
private

◆ m_default_colors

std::shared_ptr<COLOR_SETTINGS> PCB_PLOT_PARAMS::m_default_colors
private

Dummy colors object that can be created if there is no Pgm context.

Definition at line 346 of file pcb_plot_params.h.

Referenced by PCB_PLOT_PARAMS().

◆ m_drillMarks

DRILL_MARKS PCB_PLOT_PARAMS::m_drillMarks
private

Holes can be not plotted, have a small mark or plotted in actual size.

Definition at line 228 of file pcb_plot_params.h.

Referenced by Format(), GetDrillMarksType(), IsSameAs(), PCB_PLOT_PARAMS_PARSER::Parse(), PCB_PLOT_PARAMS(), and SetDrillMarksType().

◆ m_DXFplotPolygonMode

bool PCB_PLOT_PARAMS::m_DXFplotPolygonMode
private

DXF format: Plot items in outline (polygon) mode.

In polygon mode, each item to plot is converted to a polygon and all polygons are merged.

Definition at line 217 of file pcb_plot_params.h.

Referenced by Format(), GetDXFPlotPolygonMode(), IsSameAs(), PCB_PLOT_PARAMS_PARSER::Parse(), PCB_PLOT_PARAMS(), and SetDXFPlotPolygonMode().

◆ m_DXFplotUnits

DXF_UNITS PCB_PLOT_PARAMS::m_DXFplotUnits
private

DXF format: Units to use when plotting the DXF.

Definition at line 222 of file pcb_plot_params.h.

Referenced by Format(), GetDXFPlotUnits(), IsSameAs(), PCB_PLOT_PARAMS_PARSER::Parse(), PCB_PLOT_PARAMS(), and SetDXFPlotUnits().

◆ m_fineScaleAdjustX

double PCB_PLOT_PARAMS::m_fineScaleAdjustX
private

fine scale adjust X axis

Definition at line 325 of file pcb_plot_params.h.

Referenced by GetFineScaleAdjustX(), IsSameAs(), PCB_PLOT_PARAMS(), and SetFineScaleAdjustX().

◆ m_fineScaleAdjustY

double PCB_PLOT_PARAMS::m_fineScaleAdjustY
private

fine scale adjust Y axis

Definition at line 326 of file pcb_plot_params.h.

Referenced by GetFineScaleAdjustY(), IsSameAs(), PCB_PLOT_PARAMS(), and SetFineScaleAdjustY().

◆ m_format

PLOT_FORMAT PCB_PLOT_PARAMS::m_format
private

Plot format type (chooses the driver to be used)

Definition at line 225 of file pcb_plot_params.h.

Referenced by Format(), GetFormat(), IsSameAs(), PCB_PLOT_PARAMS_PARSER::Parse(), PCB_PLOT_PARAMS(), and SetFormat().

◆ m_gerberDisableApertMacros

bool PCB_PLOT_PARAMS::m_gerberDisableApertMacros
private

Disable aperture macros in Gerber format (only for broken Gerber readers) Ideally, should be never selected.

Definition at line 268 of file pcb_plot_params.h.

Referenced by Format(), GetDisableGerberMacros(), IsSameAs(), PCB_PLOT_PARAMS_PARSER::Parse(), PCB_PLOT_PARAMS(), and SetDisableGerberMacros().

◆ m_gerberPrecision

int PCB_PLOT_PARAMS::m_gerberPrecision
private

precision of coordinates in Gerber files: accepted 5 or 6 when units are in mm (6 or 7 in inches, but Pcbnew uses mm).

6 is the internal resolution of Pcbnew, but not always accepted by board maker 5 is the minimal value for professional boards.

Definition at line 280 of file pcb_plot_params.h.

Referenced by Format(), GetGerberPrecision(), IsSameAs(), PCB_PLOT_PARAMS_PARSER::Parse(), PCB_PLOT_PARAMS(), and SetGerberPrecision().

◆ m_HPGLPenDiam

double PCB_PLOT_PARAMS::m_HPGLPenDiam
private

HPGL only: pen diameter in MILS, useful to fill areas However, it is in mm in hpgl files.

Definition at line 336 of file pcb_plot_params.h.

Referenced by Format(), GetHPGLPenDiameter(), IsSameAs(), PCB_PLOT_PARAMS_PARSER::Parse(), PCB_PLOT_PARAMS(), and SetHPGLPenDiameter().

◆ m_HPGLPenNum

int PCB_PLOT_PARAMS::m_HPGLPenNum
private

HPGL only: pen number selection(1 to 9)

Definition at line 334 of file pcb_plot_params.h.

Referenced by Format(), GetHPGLPenNum(), IsSameAs(), PCB_PLOT_PARAMS_PARSER::Parse(), PCB_PLOT_PARAMS(), and SetHPGLPenNum().

◆ m_HPGLPenSpeed

int PCB_PLOT_PARAMS::m_HPGLPenSpeed
private

HPGL only: pen speed, always in cm/s (1 to 99 cm/s)

Definition at line 335 of file pcb_plot_params.h.

Referenced by Format(), GetHPGLPenSpeed(), IsSameAs(), PCB_PLOT_PARAMS_PARSER::Parse(), PCB_PLOT_PARAMS(), and SetHPGLPenSpeed().

◆ m_includeGerberNetlistInfo

bool PCB_PLOT_PARAMS::m_includeGerberNetlistInfo
private

Include netlist info (only in Gerber X2 format) (chapter ? in revision ?)

Definition at line 271 of file pcb_plot_params.h.

Referenced by GetIncludeGerberNetlistInfo(), IsSameAs(), PCB_PLOT_PARAMS_PARSER::Parse(), PCB_PLOT_PARAMS(), and SetIncludeGerberNetlistInfo().

◆ m_layerSelection

LSET PCB_PLOT_PARAMS::m_layerSelection
private

Set of layers to plot.

Definition at line 252 of file pcb_plot_params.h.

Referenced by Format(), GetLayerSelection(), IsSameAs(), PCB_PLOT_PARAMS_PARSER::Parse(), PCB_PLOT_PARAMS(), and SetLayerSelection().

◆ m_mirror

bool PCB_PLOT_PARAMS::m_mirror
private

Mirror the plot around the X axis.

Definition at line 240 of file pcb_plot_params.h.

Referenced by Format(), GetMirror(), IsSameAs(), PCB_PLOT_PARAMS_PARSER::Parse(), PCB_PLOT_PARAMS(), and SetMirror().

◆ m_negative

bool PCB_PLOT_PARAMS::m_negative
private

Plot in negative color (supported only by some drivers)

Definition at line 243 of file pcb_plot_params.h.

Referenced by Format(), GetNegative(), IsSameAs(), PCB_PLOT_PARAMS_PARSER::Parse(), PCB_PLOT_PARAMS(), and SetNegative().

◆ m_outputDirectory

wxString PCB_PLOT_PARAMS::m_outputDirectory
private

Output directory for plot files (usually relative to the board file)

Definition at line 302 of file pcb_plot_params.h.

Referenced by Format(), GetOutputDirectory(), IsSameAs(), PCB_PLOT_PARAMS_PARSER::Parse(), PCB_PLOT_PARAMS(), and SetOutputDirectory().

◆ m_plotFrameRef

bool PCB_PLOT_PARAMS::m_plotFrameRef
private

True to plot/print frame references.

Definition at line 249 of file pcb_plot_params.h.

Referenced by Format(), GetPlotFrameRef(), IsSameAs(), PCB_PLOT_PARAMS_PARSER::Parse(), PCB_PLOT_PARAMS(), and SetPlotFrameRef().

◆ m_plotInvisibleText

bool PCB_PLOT_PARAMS::m_plotInvisibleText
private

Force plotting of fields marked invisible.

Definition at line 311 of file pcb_plot_params.h.

Referenced by Format(), GetPlotInvisibleText(), IsSameAs(), PCB_PLOT_PARAMS_PARSER::Parse(), PCB_PLOT_PARAMS(), and SetPlotInvisibleText().

◆ m_plotMode

OUTLINE_MODE PCB_PLOT_PARAMS::m_plotMode
private

FILLED or SKETCH selects how to plot filled objects.

FILLED or SKETCH not available with all drivers: some have fixed mode

Definition at line 210 of file pcb_plot_params.h.

Referenced by GetPlotMode(), IsSameAs(), PCB_PLOT_PARAMS(), and SetPlotMode().

◆ m_plotOnAllLayersSelection

LSET PCB_PLOT_PARAMS::m_plotOnAllLayersSelection
private

Set of layers that get plotted on each of the layers to plot.

Definition at line 255 of file pcb_plot_params.h.

Referenced by Format(), GetPlotOnAllLayersSelection(), IsSameAs(), PCB_PLOT_PARAMS_PARSER::Parse(), and SetPlotOnAllLayersSelection().

◆ m_plotReference

bool PCB_PLOT_PARAMS::m_plotReference
private

Enable plotting of part references.

Definition at line 305 of file pcb_plot_params.h.

Referenced by Format(), GetPlotReference(), IsSameAs(), PCB_PLOT_PARAMS_PARSER::Parse(), PCB_PLOT_PARAMS(), and SetPlotReference().

◆ m_plotValue

bool PCB_PLOT_PARAMS::m_plotValue
private

Enable plotting of part values.

Definition at line 308 of file pcb_plot_params.h.

Referenced by Format(), GetPlotValue(), IsSameAs(), PCB_PLOT_PARAMS_PARSER::Parse(), PCB_PLOT_PARAMS(), and SetPlotValue().

◆ m_plotViaOnMaskLayer

bool PCB_PLOT_PARAMS::m_plotViaOnMaskLayer
private

True if vias are drawn on Mask layer (ie untented, exposed by mask)

Definition at line 246 of file pcb_plot_params.h.

Referenced by Format(), GetPlotViaOnMaskLayer(), IsSameAs(), PCB_PLOT_PARAMS_PARSER::Parse(), PCB_PLOT_PARAMS(), and SetPlotViaOnMaskLayer().

◆ m_scale

double PCB_PLOT_PARAMS::m_scale
private

Global scale factor, 1.0 plots a board with its actual size.

Definition at line 237 of file pcb_plot_params.h.

Referenced by GetScale(), IsSameAs(), PCB_PLOT_PARAMS(), and SetScale().

◆ m_scaleSelection

int PCB_PLOT_PARAMS::m_scaleSelection
private

Scale ratio index (UI only)

Definition at line 299 of file pcb_plot_params.h.

Referenced by Format(), GetScaleSelection(), IsSameAs(), PCB_PLOT_PARAMS_PARSER::Parse(), PCB_PLOT_PARAMS(), and SetScaleSelection().

◆ m_sketchPadLineWidth

int PCB_PLOT_PARAMS::m_sketchPadLineWidth
private

◆ m_sketchPadsOnFabLayers

bool PCB_PLOT_PARAMS::m_sketchPadsOnFabLayers
private

Plots pads outlines on fab layers.

Definition at line 314 of file pcb_plot_params.h.

Referenced by Format(), GetSketchPadsOnFabLayers(), IsSameAs(), PCB_PLOT_PARAMS_PARSER::Parse(), PCB_PLOT_PARAMS(), and SetSketchPadsOnFabLayers().

◆ m_skipNPTH_Pads

bool PCB_PLOT_PARAMS::m_skipNPTH_Pads
private

Definition at line 203 of file pcb_plot_params.h.

Referenced by GetSkipPlotNPTH_Pads(), PCB_PLOT_PARAMS(), and SetSkipPlotNPTH_Pads().

◆ m_subtractMaskFromSilk

bool PCB_PLOT_PARAMS::m_subtractMaskFromSilk
private

On gerbers 'scrape' away the solder mask from silkscreen (trim silks)

Definition at line 293 of file pcb_plot_params.h.

Referenced by Format(), GetSubtractMaskFromSilk(), IsSameAs(), PCB_PLOT_PARAMS_PARSER::Parse(), PCB_PLOT_PARAMS(), and SetSubtractMaskFromSilk().

◆ m_svgPrecision

unsigned PCB_PLOT_PARAMS::m_svgPrecision
private

precision of coordinates in SVG files: accepted 3 - 6 6 is the internal resolution of Pcbnew

Definition at line 284 of file pcb_plot_params.h.

Referenced by Format(), GetSvgPrecision(), IsSameAs(), PCB_PLOT_PARAMS_PARSER::Parse(), PCB_PLOT_PARAMS(), and SetSvgPrecision().

◆ m_textMode

PLOT_TEXT_MODE PCB_PLOT_PARAMS::m_textMode
private

Choose how represent text with PS, PDF and DXF drivers.

Definition at line 231 of file pcb_plot_params.h.

Referenced by Format(), GetTextMode(), IsSameAs(), PCB_PLOT_PARAMS_PARSER::Parse(), PCB_PLOT_PARAMS(), and SetTextMode().

◆ m_useAuxOrigin

bool PCB_PLOT_PARAMS::m_useAuxOrigin
private

Plot gerbers using auxiliary (drill) origin instead of absolute coordinates.

Definition at line 290 of file pcb_plot_params.h.

Referenced by Format(), GetUseAuxOrigin(), IsSameAs(), PCB_PLOT_PARAMS_PARSER::Parse(), PCB_PLOT_PARAMS(), and SetUseAuxOrigin().

◆ m_useGerberProtelExtensions

bool PCB_PLOT_PARAMS::m_useGerberProtelExtensions
private

When plotting gerber files, use a conventional set of Protel extensions instead of .gbr, that is now the official gerber file extension this is a deprecated feature.

Definition at line 261 of file pcb_plot_params.h.

Referenced by Format(), GetUseGerberProtelExtensions(), IsSameAs(), PCB_PLOT_PARAMS_PARSER::Parse(), PCB_PLOT_PARAMS(), and SetUseGerberProtelExtensions().

◆ m_useGerberX2format

bool PCB_PLOT_PARAMS::m_useGerberX2format
private

Include attributes from the Gerber X2 format (chapter 5 in revision J2)

Definition at line 264 of file pcb_plot_params.h.

Referenced by GetUseGerberX2format(), IsSameAs(), PCB_PLOT_PARAMS_PARSER::Parse(), PCB_PLOT_PARAMS(), and SetUseGerberX2format().

◆ m_widthAdjust

int PCB_PLOT_PARAMS::m_widthAdjust
private

This width factor is intended to compensate PS printers/ plotters that do not strictly obey line width settings.

Only used to plot pads and tracks.

Definition at line 332 of file pcb_plot_params.h.

Referenced by GetWidthAdjust(), IsSameAs(), PCB_PLOT_PARAMS(), and SetWidthAdjust().


The documentation for this class was generated from the following files: