KiCad PCB EDA Suite
zones.h File Reference
#include <wx/translation.h>

Go to the source code of this file.

Macros

#define ZONE_THERMAL_RELIEF_GAP_MM   0.5
 
#define ZONE_THERMAL_RELIEF_COPPER_WIDTH_MM   0.5
 
#define ZONE_THICKNESS_MM   0.25
 
#define ZONE_THICKNESS_MIN_VALUE_MM   0.025
 
#define ZONE_CLEARANCE_MM   0.5
 
#define ZONE_CLEARANCE_MAX_VALUE_MM   100
 
#define ZONE_BORDER_HATCH_DIST_MM   0.5
 
#define ZONE_BORDER_HATCH_MINDIST_MM   0.1
 
#define ZONE_BORDER_HATCH_MAXDIST_MM   2.0
 
#define ZONE_EXPORT_VALUES   1004
 

Enumerations

enum class  ZONE_CONNECTION {
  INHERITED = -1 , NONE , THERMAL , FULL ,
  THT_THERMAL
}
 How pads are covered by copper in zone. More...
 

Functions

wxString PrintZoneConnection (ZONE_CONNECTION aConnection)
 
int InvokeNonCopperZonesEditor (PCB_BASE_FRAME *aParent, ZONE_SETTINGS *aSettings, CONVERT_SETTINGS *aConvertSettings=nullptr)
 Function InvokeNonCopperZonesEditor invokes up a modal dialog window for non-copper zone editing. More...
 
int InvokeCopperZonesEditor (PCB_BASE_FRAME *aCaller, ZONE_SETTINGS *aSettings, CONVERT_SETTINGS *aConvertSettings=nullptr)
 Function InvokeCopperZonesEditor invokes up a modal dialog window for copper zone editing. More...
 
int InvokeRuleAreaEditor (PCB_BASE_FRAME *aCaller, ZONE_SETTINGS *aSettings, CONVERT_SETTINGS *aConvertSettings=nullptr)
 Function InvokeRuleAreaEditor invokes up a modal dialog window for copper zone editing. More...
 

Macro Definition Documentation

◆ ZONE_BORDER_HATCH_DIST_MM

#define ZONE_BORDER_HATCH_DIST_MM   0.5

Definition at line 39 of file zones.h.

◆ ZONE_BORDER_HATCH_MAXDIST_MM

#define ZONE_BORDER_HATCH_MAXDIST_MM   2.0

Definition at line 41 of file zones.h.

◆ ZONE_BORDER_HATCH_MINDIST_MM

#define ZONE_BORDER_HATCH_MINDIST_MM   0.1

Definition at line 40 of file zones.h.

◆ ZONE_CLEARANCE_MAX_VALUE_MM

#define ZONE_CLEARANCE_MAX_VALUE_MM   100

Definition at line 38 of file zones.h.

◆ ZONE_CLEARANCE_MM

#define ZONE_CLEARANCE_MM   0.5

Definition at line 37 of file zones.h.

◆ ZONE_EXPORT_VALUES

#define ZONE_EXPORT_VALUES   1004

Definition at line 43 of file zones.h.

◆ ZONE_THERMAL_RELIEF_COPPER_WIDTH_MM

#define ZONE_THERMAL_RELIEF_COPPER_WIDTH_MM   0.5

Definition at line 34 of file zones.h.

◆ ZONE_THERMAL_RELIEF_GAP_MM

#define ZONE_THERMAL_RELIEF_GAP_MM   0.5

Definition at line 33 of file zones.h.

◆ ZONE_THICKNESS_MIN_VALUE_MM

#define ZONE_THICKNESS_MIN_VALUE_MM   0.025

Definition at line 36 of file zones.h.

◆ ZONE_THICKNESS_MM

#define ZONE_THICKNESS_MM   0.25

Definition at line 35 of file zones.h.

Enumeration Type Documentation

◆ ZONE_CONNECTION

enum class ZONE_CONNECTION
strong

How pads are covered by copper in zone.

Enumerator
INHERITED 
NONE 

Pads are not covered.

THERMAL 

Use thermal relief for pads.

FULL 

pads are covered by copper

THT_THERMAL 

Thermal relief only for THT pads.

Definition at line 48 of file zones.h.

49{
50 INHERITED = -1,
51 NONE,
52 THERMAL,
53 FULL,
55};
@ NONE
Definition: kibis.h:53
@ THERMAL
Use thermal relief for pads.
@ THT_THERMAL
Thermal relief only for THT pads.

Function Documentation

◆ InvokeCopperZonesEditor()

int InvokeCopperZonesEditor ( PCB_BASE_FRAME aCaller,
ZONE_SETTINGS aSettings,
CONVERT_SETTINGS aConvertSettings = nullptr 
)

Function InvokeCopperZonesEditor invokes up a modal dialog window for copper zone editing.

Parameters
aCalleris the PCB_BASE_FRAME calling parent window for the modal dialog, and it gives access to the BOARD through PCB_BASE_FRAME::GetBoard().
aSettingspoints to the ZONE_SETTINGS to edit.
Returns
int - tells if user aborted, changed only one zone, or all of them.

Definition at line 134 of file dialog_copper_zones.cpp.

136{
137 DIALOG_COPPER_ZONE dlg( aCaller, aSettings, aConvertSettings );
138
139 return dlg.ShowQuasiModal();
140}

References DIALOG_SHIM::ShowQuasiModal().

Referenced by ZONE_CREATE_HELPER::createNewZone(), CONVERT_TOOL::CreatePolys(), PCB_EDIT_FRAME::Edit_Zone_Params(), FOOTPRINT_EDIT_FRAME::OnEditItemRequest(), and BOARD_EDITOR_CONTROL::ZoneDuplicate().

◆ InvokeNonCopperZonesEditor()

int InvokeNonCopperZonesEditor ( PCB_BASE_FRAME aParent,
ZONE_SETTINGS aSettings,
CONVERT_SETTINGS aConvertSettings = nullptr 
)

Function InvokeNonCopperZonesEditor invokes up a modal dialog window for non-copper zone editing.

Parameters
aParentis the PCB_BASE_FRAME calling parent window for the modal dialog, and it gives access to the BOARD through PCB_BASE_FRAME::GetBoard().
aSettingspoints to the ZONE_SETTINGS to edit.
Returns
int - tells if user aborted, changed only one zone, or all of them.

Definition at line 72 of file dialog_non_copper_zones_properties.cpp.

74{
75 DIALOG_NON_COPPER_ZONES_EDITOR dlg( aParent, aSettings, aConvertSettings );
76
77 return dlg.ShowQuasiModal();
78}

References DIALOG_SHIM::ShowQuasiModal().

Referenced by ZONE_CREATE_HELPER::createNewZone(), CONVERT_TOOL::CreatePolys(), PCB_EDIT_FRAME::Edit_Zone_Params(), FOOTPRINT_EDIT_FRAME::OnEditItemRequest(), and BOARD_EDITOR_CONTROL::ZoneDuplicate().

◆ InvokeRuleAreaEditor()

int InvokeRuleAreaEditor ( PCB_BASE_FRAME aCaller,
ZONE_SETTINGS aSettings,
CONVERT_SETTINGS aConvertSettings = nullptr 
)

Function InvokeRuleAreaEditor invokes up a modal dialog window for copper zone editing.

Parameters
aCalleris the PCB_BASE_FRAME calling parent window for the modal dialog, and it gives access to the BOARD through PCB_BASE_FRAME::GetBoard().
aSettingspoints to the ZONE_SETTINGS to edit.
Returns
int - tells if user aborted, changed only one zone, or all of them.

Definition at line 69 of file dialog_rule_area_properties.cpp.

71{
72 DIALOG_RULE_AREA_PROPERTIES dlg( aCaller, aZoneSettings, aConvertSettings );
73
74 return dlg.ShowModal();
75}

Referenced by ZONE_CREATE_HELPER::createNewZone(), CONVERT_TOOL::CreatePolys(), PCB_EDIT_FRAME::Edit_Zone_Params(), FOOTPRINT_EDIT_FRAME::OnEditItemRequest(), and BOARD_EDITOR_CONTROL::ZoneDuplicate().

◆ PrintZoneConnection()

wxString PrintZoneConnection ( ZONE_CONNECTION  aConnection)
inline

Definition at line 58 of file zones.h.

59{
60 switch( aConnection )
61 {
62 default:
63 case ZONE_CONNECTION::INHERITED: return _( "inherited" );
64 case ZONE_CONNECTION::NONE: return _( "none" );
65 case ZONE_CONNECTION::THERMAL: return _( "thermal reliefs" );
66 case ZONE_CONNECTION::FULL: return _( "solid" );
67 case ZONE_CONNECTION::THT_THERMAL: return _( "thermal reliefs for PTH" );
68 }
69}
#define _(s)
@ NONE
Pads are not covered.
@ FULL
pads are covered by copper

References _, FULL, INHERITED, NONE, THERMAL, and THT_THERMAL.

Referenced by DRC_ENGINE::EvalRules(), and DRC_ENGINE::EvalZoneConnection().