KiCad PCB EDA Suite
Loading...
Searching...
No Matches
ADVANCED_CFG Class Reference

#include <advanced_config.h>

Static Public Member Functions

static const ADVANCED_CFGGetCfg ()
 Get the singleton instance's config, which is shared by all consumers.
 

Public Attributes

double m_DrawArcAccuracy
 Distance from an arc end point and the estimated end point, when rotating from the start point to the end point.
 
double m_DrawArcCenterMaxAngle
 When drawing an arc, the angle ( center - start ) - ( start - end ) can be limited to avoid extremely high radii.
 
double m_MaxTangentAngleDeviation
 Maximum angle between the tangent line of an arc track and a connected straight track in order to commence arc dragging.
 
double m_MaxTrackLengthToKeep
 Maximum track length to keep after doing an arc track resizing operation.
 
double m_ExtraClearance
 When filling zones, we add an extra amount of clearance to each zone to ensure that rounding errors do not overrun minimum clearance distances.
 
bool m_EnableCreepageSlot
 Enable the minimum slot width check for creepage.
 
double m_DRCEpsilon
 Epsilon for DRC tests.
 
double m_SliverWidthTolerance
 Sliver width tolerance for DRC.
 
double m_SliverMinimumLength
 Sliver length tolerance for DRC.
 
double m_SliverAngleTolerance
 Sliver angle to tolerance for DRC.
 
double m_HoleWallThickness
 Dimension used to calculate the actual hole size from the finish hole size.
 
int m_CoroutineStackSize
 Configure the coroutine stack size in bytes.
 
int m_UpdateUIEventInterval
 The update interval the wxWidgets sends wxUpdateUIEvents to windows.
 
bool m_ShowRouterDebugGraphics
 Show PNS router debug graphics while routing.
 
bool m_EnableRouterDump
 Enable PNS router to dump state information for debug purpose (press 0 while routing)
 
bool m_HyperZoom
 Slide the zoom steps over for debugging things "up close".
 
bool m_CompactSave
 Save files in compact display mode.
 
bool m_DrawTriangulationOutlines
 Enable drawing the triangulation outlines with a visible color.
 
bool m_ExtraZoneDisplayModes
 When true, adds zone-display-modes for stroking the zone fracture boundaries and the zone triangulation.
 
double m_MinPlotPenWidth
 Absolute minimum pen width for plotting.
 
bool m_DebugZoneFiller
 A mode that dumps the various stages of a F_Cu fill into In1_Cu through In9_Cu.
 
bool m_DebugPDFWriter
 A mode that writes PDFs without compression.
 
double m_SmallDrillMarkSize
 The diameter of the drill marks on print and plot outputs (in mm) when the "Drill marks" option is set to "Small mark".
 
bool m_HotkeysDumper
 Enable the hotkeys dumper feature for generating documentation.
 
bool m_DrawBoundingBoxes
 Draw GAL bounding boxes in painters.
 
bool m_ShowPcbnewExportNetlist
 Enable exporting board editor netlist to a file for troubleshooting purposes.
 
bool m_Skip3DModelFileCache
 Skip reading/writing 3D model file caches.
 
bool m_Skip3DModelMemoryCache
 Skip reading/writing 3D model memory caches.
 
bool m_HideVersionFromTitle
 Hide the build version from the KiCad manager frame title.
 
bool m_ShowRepairSchematic
 Enable showing schematic repair output.
 
bool m_ShowEventCounters
 Shows debugging event counters in various places.
 
bool m_AllowManualCanvasScale
 Allow manual scaling of canvas.
 
int m_3DRT_BevelHeight_um
 Set the bevel height of layer items in 3D viewer when ray tracing.
 
double m_3DRT_BevelExtentFactor
 3D-Viewer raytracing factor applied to Extent.z of the item layer.
 
bool m_UseClipper2
 Use Clipper2 instead of Clipper1.
 
bool m_Use3DConnexionDriver
 Use the 3DConnexion Driver.
 
bool m_IncrementalConnectivity
 Use the new incremental netlister for realtime jobs.
 
int m_DisambiguationMenuDelay
 The number of milliseconds to wait in a click before showing a disambiguation menu.
 
bool m_EnableDesignBlocks
 Enable the new Design Blocks feature.
 
bool m_EnableGenerators
 Enable support for generators.
 
bool m_EnableGit
 Enable git integration.
 
bool m_EnableJobset
 Enable jobsets.
 
bool m_EnableLibWithText
 Enable option to load lib files with text editor.
 
bool m_EnableLibDir
 Enable option to open lib file directory.
 
bool m_EnableEeschemaPrintCairo
 Enable Eeschema printing using Cairo.
 
double m_PcbSelectionVisibilityRatio
 Board object selection visibility limit.
 
double m_FontErrorSize
 Deviation between font's bezier curve ideal and the poligonized curve.
 
double m_OcePluginLinearDeflection
 OCE (STEP/IGES) 3D Plugin Tesselation Linear Deflection.
 
double m_OcePluginAngularDeflection
 OCE (STEP/IGES) 3D Plugin Tesselation Angular Deflection.
 
int m_TriangulateSimplificationLevel
 The number of internal units that will be allowed to deflect from the base segment when creating a new segment.
 
int m_TriangulateMinimumArea
 The minimum area of a polygon that can be left over after triangulation and still consider the triangulation successful.
 
bool m_EnableCacheFriendlyFracture
 Enable the use of a cache-friendlier and therefore faster version of the polygon fracture algorithm.
 
bool m_EnableAPILogging
 Log IPC API requests and responses.
 
int m_MaxFilesystemWatchers
 Maximum number of filesystem watchers to use.
 
int m_MinorSchematicGraphSize
 Set the number of items in a schematic graph for it to be considered "minor".
 
int m_ResolveTextRecursionDepth
 The number of recursions to resolve text variables.
 
bool m_EnableExtensionSnaps
 Enable snap anchors based on item line extensions.
 
int m_ExtensionSnapTimeoutMs
 If extension snaps are enabled, this is the timeout in milliseconds before a hovered item gets extensions shown.
 
bool m_ExtensionSnapActivateOnHover
 If extension snaps are enabled, 'activate' items on hover, even if not near a snap point.
 
bool m_EnableSnapAnchorsDebug
 Enable snap anchors debug visualization.
 
double m_MinParallelAngle
 Minimum overlapping angle for which an arc is considered to be parallel to its paired arc.
 

Private Member Functions

 ADVANCED_CFG ()
 
void loadFromConfigFile ()
 Load the config from the normal config file.
 
void loadSettings (wxConfigBase &aCfg)
 

Detailed Description

Definition at line 62 of file advanced_config.h.

Constructor & Destructor Documentation

◆ ADVANCED_CFG()

ADVANCED_CFG::ADVANCED_CFG ( )
private

Definition at line 207 of file advanced_config.cpp.

References AdvancedConfigMask, AC_STACK::default_stack, loadFromConfigFile(), m_3DRT_BevelExtentFactor, m_3DRT_BevelHeight_um, m_AllowManualCanvasScale, m_CompactSave, m_CoroutineStackSize, m_DebugPDFWriter, m_DebugZoneFiller, m_DisambiguationMenuDelay, m_DrawArcAccuracy, m_DrawArcCenterMaxAngle, m_DrawBoundingBoxes, m_DrawTriangulationOutlines, m_DRCEpsilon, m_EnableAPILogging, m_EnableCacheFriendlyFracture, m_EnableCreepageSlot, m_EnableDesignBlocks, m_EnableEeschemaPrintCairo, m_EnableExtensionSnaps, m_EnableGenerators, m_EnableGit, m_EnableJobset, m_EnableLibDir, m_EnableLibWithText, m_EnableRouterDump, m_EnableSnapAnchorsDebug, m_ExtensionSnapActivateOnHover, m_ExtensionSnapTimeoutMs, m_ExtraClearance, m_ExtraZoneDisplayModes, m_FontErrorSize, m_HideVersionFromTitle, m_HoleWallThickness, m_HotkeysDumper, m_HyperZoom, m_IncrementalConnectivity, m_MaxFilesystemWatchers, m_MaxTangentAngleDeviation, m_MaxTrackLengthToKeep, m_MinorSchematicGraphSize, m_MinParallelAngle, m_MinPlotPenWidth, m_OcePluginAngularDeflection, m_OcePluginLinearDeflection, m_PcbSelectionVisibilityRatio, m_ResolveTextRecursionDepth, m_ShowEventCounters, m_ShowPcbnewExportNetlist, m_ShowRepairSchematic, m_ShowRouterDebugGraphics, m_Skip3DModelFileCache, m_Skip3DModelMemoryCache, m_SliverAngleTolerance, m_SliverMinimumLength, m_SliverWidthTolerance, m_SmallDrillMarkSize, m_TriangulateMinimumArea, m_TriangulateSimplificationLevel, m_UpdateUIEventInterval, m_Use3DConnexionDriver, and m_UseClipper2.

Member Function Documentation

◆ GetCfg()

const ADVANCED_CFG & ADVANCED_CFG::GetCfg ( )
static

Get the singleton instance's config, which is shared by all consumers.

This configuration is read-only - to set options, users should add the parameters to their config files at ~/.config/kicad/advanced, or the platform equivalent.

Definition at line 302 of file advanced_config.cpp.

Referenced by PCB_GRID_HELPER::AddConstructionItems(), PCB_GRID_HELPER::BestSnapAnchor(), SHAPE_POLY_SET::BooleanAdd(), SHAPE_POLY_SET::BooleanIntersection(), SHAPE_POLY_SET::BooleanSubtract(), SHAPE_POLY_SET::BooleanXor(), ZONE_FILLER::buildCopperItemClearances(), EXPORTER_STEP::buildZones3DShape(), SHAPE_POLY_SET::cacheTriangulation(), S3D_CACHE::checkCache(), PDF_PLOTTER::closePdfStream(), commonParallelProjection(), CONSTRUCTION_MANAGER::CONSTRUCTION_MANAGER(), COROUTINE< ReturnType, ArgType >::COROUTINE(), KIFONT::OUTLINE_DECOMPOSER::cubicTo(), DIALOG_PRINT_USING_PRINTER::DIALOG_PRINT_USING_PRINTER(), SCH_EDIT_FRAME::doReCreateMenuBar(), KICAD_MANAGER_FRAME::doReCreateMenuBar(), PCB_EDIT_FRAME::doReCreateMenuBar(), EDIT_TOOL::DragArcTrack(), KIGFX::OPENGL_GAL::drawTriangulatedPolyset(), POLYGON_TRIANGULATION::earcutList(), ARC_POINT_EDIT_BEHAVIOR::editArcEndpointKeepTangent(), GRID_HELPER::enableAndGetAnchorDebug(), EVT_UPDATE_UI_RANGE(), PCB_IO_KICAD_SEXPR::format(), formatPoly(), SHAPE_POLY_SET::fractureSingle(), BOARD_DESIGN_SETTINGS::GetDRCEpsilon(), BOARD_DESIGN_SETTINGS::GetHolePlatingThickness(), PCB_TEXT::GetShownText(), PCB_TEXTBOX::GetShownText(), SCH_FIELD::GetShownText(), SCH_TEXT::GetShownText(), SCH_TEXTBOX::GetShownText(), SCH_LABEL_BASE::GetShownText(), PCB_SELECTION_TOOL::GuessSelectionCandidates(), KICAD_API_SERVER::handleApiEvent(), ROUTER_TOOL::handleCommonEvents(), SHAPE_POLY_SET::Inflate(), SYMBOL_EDITOR_CONTROL::Init(), FOOTPRINT_EDITOR_CONTROL::Init(), HOTKEY_STORE::Init(), PGM_BASE::InitPgm(), BOARD_ADAPTER::InitSettings(), PANEL_HOTKEYS_EDITOR::installButtons(), LAYER_ITEM::Intersect(), CONNECTION_GRAPH::IsMinor(), POLYGON_TRIANGULATION::isTooSmall(), KICAD_MANAGER_FRAME::KICAD_MANAGER_FRAME(), SCH_EDIT_FRAME::KiwayMailIn(), S3D_CACHE::load(), PCB_BASE_FRAME::LoadSettings(), SIMULATOR_FRAME::LoadSimulator(), EE_SELECTION_TOOL::Main(), PL_SELECTION_TOOL::Main(), PCB_SELECTION_TOOL::Main(), FOOTPRINT_PREVIEW_PANEL::New(), NL_3D_VIEWER_PLUGIN::NL_3D_VIEWER_PLUGIN(), NL_FOOTPRINT_PROPERTIES_PLUGIN::NL_FOOTPRINT_PROPERTIES_PLUGIN(), NL_GERBVIEW_PLUGIN::NL_GERBVIEW_PLUGIN(), NL_PCBNEW_PLUGIN::NL_PCBNEW_PLUGIN(), NL_PL_EDITOR_PLUGIN::NL_PL_EDITOR_PLUGIN(), NL_SCHEMATIC_PLUGIN::NL_SCHEMATIC_PLUGIN(), PROJECT_TREE_PANE::onRight(), KICAD_MANAGER_FRAME::OpenJobsFile(), PANEL_COMMON_SETTINGS::PANEL_COMMON_SETTINGS(), PANEL_SETUP_CONSTRAINTS::PANEL_SETUP_CONSTRAINTS(), BRDITEMS_PLOTTER::PlotDrillMarks(), PlotLayerOutlines(), processFace(), KICAD_MANAGER_FRAME::ProjectChanged(), PCB_SELECTION_TOOL::pruneObscuredSelectionCandidates(), readSTEP(), SCH_EDIT_FRAME::RecalculateConnections(), SCH_EDIT_FRAME::ReCreateOptToolbar(), SYMBOL_EDIT_FRAME::ReCreateOptToolbar(), FOOTPRINT_EDIT_FRAME::ReCreateOptToolbar(), FOOTPRINT_VIEWER_FRAME::ReCreateOptToolbar(), PCB_EDIT_FRAME::ReCreateOptToolbar(), PROJECT_TREE_PANE::ReCreateTreePrj(), PNS::ROUTER::ROUTER(), DRC_TEST_PROVIDER_SLIVER_CHECKER::Run(), ERC_TESTER::RunTests(), SCH_RENDER_SETTINGS::SCH_RENDER_SETTINGS(), BOARD_EDITOR_CONTROL::setTransitions(), PCBNEW_PRINTOUT::setupPainter(), PNS_KICAD_IFACE::SetView(), EDA_BASE_FRAME::ShowPreferences(), SHAPE_POLY_SET::Simplify(), POLYGON_TRIANGULATION::simplifyList(), KICAD_API_SERVER::Start(), PDF_PLOTTER::startPdfStream(), DRC_TEST_PROVIDER_CREEPAGE::testCreepage(), DRC_TEST_PROVIDER_PHYSICAL_CLEARANCE::testShapeLineChain(), PROJECT_TREE_PANE::updateGitStatusIcons(), SCH_EDIT_FRAME::WriteNetListFile(), ZONE_FILLER::ZONE_FILLER(), and PCB_EDIT_FRAME::~PCB_EDIT_FRAME().

◆ loadFromConfigFile()

void ADVANCED_CFG::loadFromConfigFile ( )
private

Load the config from the normal config file.

Definition at line 309 of file advanced_config.cpp.

References AdvancedConfigMask, getAdvancedCfgFilename(), and loadSettings().

Referenced by ADVANCED_CFG().

◆ loadSettings()

void ADVANCED_CFG::loadSettings ( wxConfigBase &  aCfg)
private

Definition at line 336 of file advanced_config.cpp.

References AC_KEYS::AllowManualCanvasScale, AC_KEYS::CompactFileSave, AC_KEYS::CoroutineStackSize, AC_KEYS::DebugPDFWriter, AC_KEYS::DebugZoneFiller, AC_STACK::default_stack, AC_KEYS::DisambiguationTime, AC_KEYS::DrawArcAccuracy, AC_KEYS::DrawArcCenterStartEndMaxAngle, AC_KEYS::DrawBoundingBoxes, AC_KEYS::DRCEpsilon, AC_KEYS::DRCSliverAngleTolerance, AC_KEYS::DRCSliverMinimumLength, AC_KEYS::DRCSliverWidthTolerance, dumpCfg(), AC_KEYS::EnableAPILogging, AC_KEYS::EnableCacheFriendlyFracture, AC_KEYS::EnableCreepageSlot, AC_KEYS::EnableDesignBlocks, AC_KEYS::EnableEeschemaPrintCairo, AC_KEYS::EnableExtensionSnaps, AC_KEYS::EnableGenerators, AC_KEYS::EnableGit, AC_KEYS::EnableJobset, AC_KEYS::EnableLibDir, AC_KEYS::EnableLibWithText, AC_KEYS::EnableRouterDump, AC_KEYS::EnableSnapAnchorsDebug, AC_KEYS::ExtensionSnapActivateOnHover, AC_KEYS::ExtensionSnapTimeoutMs, AC_KEYS::ExtraFillMargin, AC_KEYS::ExtraZoneDisplayModes, AC_KEYS::FontErrorSize, AC_KEYS::HideVersionFromTitle, AC_KEYS::HoleWallThickness, AC_KEYS::HotkeysDumper, AC_KEYS::HyperZoom, AC_KEYS::IncrementalConnectivity, kicadTraceCoroutineStack, m_3DRT_BevelExtentFactor, m_3DRT_BevelHeight_um, m_AllowManualCanvasScale, m_CompactSave, m_CoroutineStackSize, m_DebugPDFWriter, m_DebugZoneFiller, m_DisambiguationMenuDelay, m_DrawArcAccuracy, m_DrawArcCenterMaxAngle, m_DrawBoundingBoxes, m_DrawTriangulationOutlines, m_DRCEpsilon, m_EnableAPILogging, m_EnableCacheFriendlyFracture, m_EnableCreepageSlot, m_EnableDesignBlocks, m_EnableEeschemaPrintCairo, m_EnableExtensionSnaps, m_EnableGenerators, m_EnableGit, m_EnableJobset, m_EnableLibDir, m_EnableLibWithText, m_EnableRouterDump, m_EnableSnapAnchorsDebug, m_ExtensionSnapActivateOnHover, m_ExtensionSnapTimeoutMs, m_ExtraClearance, m_ExtraZoneDisplayModes, m_FontErrorSize, m_HideVersionFromTitle, m_HoleWallThickness, m_HotkeysDumper, m_HyperZoom, m_IncrementalConnectivity, m_MaxFilesystemWatchers, m_MaxTangentAngleDeviation, m_MaxTrackLengthToKeep, m_MinorSchematicGraphSize, m_MinParallelAngle, m_MinPlotPenWidth, m_OcePluginAngularDeflection, m_OcePluginLinearDeflection, m_PcbSelectionVisibilityRatio, m_ResolveTextRecursionDepth, m_ShowEventCounters, m_ShowPcbnewExportNetlist, m_ShowRepairSchematic, m_ShowRouterDebugGraphics, m_Skip3DModelFileCache, m_Skip3DModelMemoryCache, m_SliverAngleTolerance, m_SliverMinimumLength, m_SliverWidthTolerance, m_SmallDrillMarkSize, m_TriangulateMinimumArea, m_TriangulateSimplificationLevel, m_UpdateUIEventInterval, m_Use3DConnexionDriver, m_UseClipper2, AC_STACK::max_stack, AC_KEYS::MaxFileSystemWatchers, AC_KEYS::MaxTangentTrackAngleDeviation, AC_KEYS::MaxTrackLengthToKeep, AC_STACK::min_stack, AC_KEYS::MinorSchematicGraphSize, AC_KEYS::MinParallelAngle, AC_KEYS::MinPlotPenWidth, AC_KEYS::OcePluginAngularDeflection, AC_KEYS::OcePluginLinearDeflection, AC_KEYS::PcbSelectionVisibilityRatio, AC_KEYS::ResolveTextRecursionDepth, AC_KEYS::ShowEventCounters, AC_KEYS::ShowPcbnewExportNetlist, AC_KEYS::ShowRepairSchematic, AC_KEYS::ShowRouterDebugGraphics, AC_KEYS::Skip3DModelFileCache, AC_KEYS::Skip3DModelMemoryCache, AC_KEYS::SmallDrillMarkSize, AC_KEYS::StrokeTriangulation, AC_KEYS::TraceMasks, AC_KEYS::TriangulateMinimumArea, AC_KEYS::TriangulateSimplificationLevel, AC_KEYS::UpdateUIEventInterval, AC_KEYS::Use3DConnexionDriver, AC_KEYS::UseClipper2, AC_GROUPS::V3D_RayTracing, AC_KEYS::V3DRT_BevelExtentFactor, AC_KEYS::V3DRT_BevelHeight_um, and wxConfigLoadSetups().

Referenced by loadFromConfigFile().


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