KiCad PCB EDA Suite
Loading...
Searching...
No Matches
drc_re_numeric_constraint_types.h
Go to the documentation of this file.
1/*
2 * This program source code file is part of KiCad, a free EDA CAD application.
3 *
4 * Copyright (C) 2026 KiCad Developers, see AUTHORS.txt for contributors.
5 *
6 * This program is free software; you can redistribute it and/or
7 * modify it under the terms of the GNU General Public License
8 * as published by the Free Software Foundation; either version 2
9 * of the License, or (at your option) any later version.
10 *
11 * This program is distributed in the hope that it will be useful,
12 * but WITHOUT ANY WARRANTY; without even the implied warranty of
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 * GNU General Public License for more details.
15 *
16 * You should have received a copy of the GNU General Public License
17 * along with this program. If not, see <https://www.gnu.org/licenses/>.
18 */
19
20#ifndef DRC_RE_NUMERIC_CONSTRAINT_TYPES_H_
21#define DRC_RE_NUMERIC_CONSTRAINT_TYPES_H_
22
25
26
28{
29public:
32 std::vector<DRC_RE_FIELD_POSITION> GetFieldPositions() const override
33 {
34 return { { 208, 263, 177, wxS( "mm" ), LABEL_POSITION::RIGHT,
35 _( "Minimum clearance between copper items and the board edge" ) } };
36 }
37};
38
40{
41public:
44 std::vector<DRC_RE_FIELD_POSITION> GetFieldPositions() const override
45 {
46 return { { 200, 255, 119, wxS( "mm" ), LABEL_POSITION::RIGHT,
47 _( "Minimum clearance between copper items and hole edges" ) } };
48 }
49};
50
51
53{
54public:
57 std::vector<DRC_RE_FIELD_POSITION> GetFieldPositions() const override
58 {
59 return { { 260, 315, 129, wxS( "mm" ), LABEL_POSITION::RIGHT,
60 _( "Minimum clearance between footprint courtyards" ) } };
61 }
62};
63
64
66{
67public:
70 std::vector<DRC_RE_FIELD_POSITION> GetFieldPositions() const override
71 {
72 return { { 160, 215, 214, wxS( "mm" ), LABEL_POSITION::RIGHT,
73 _( "Minimum clearance between items regardless of net" ) } };
74 }
75};
76
77
79{
80public:
83 std::vector<DRC_RE_FIELD_POSITION> GetFieldPositions() const override
84 {
85 return { { 120, 175, 131, wxS( "mm" ), LABEL_POSITION::RIGHT,
86 _( "Minimum creepage distance between conductors along the board surface" ) } };
87 }
88};
89
90
92{
93public:
96 std::vector<DRC_RE_FIELD_POSITION> GetFieldPositions() const override
97 {
98 return { { 72, 127, 34, wxS( "mm" ), LABEL_POSITION::RIGHT, _( "Minimum hole diameter" ) } };
99 }
100};
101
102
104{
105public:
108 std::vector<DRC_RE_FIELD_POSITION> GetFieldPositions() const override
109 {
110 return { { 102, 157, 47, wxS( "mm" ), LABEL_POSITION::RIGHT, _( "Minimum distance between hole edges" ) } };
111 }
112};
113
114
116{
117public:
120 bool IsIntegerOnly() const override { return true; }
121 std::vector<DRC_RE_FIELD_POSITION> GetFieldPositions() const override
122 {
123 return { { 165, 220, 69, wxEmptyString, LABEL_POSITION::NONE,
124 _( "Maximum number of vias allowed on a matched net" ) } };
125 }
126};
127
128
130{
131public:
134 std::vector<DRC_RE_FIELD_POSITION> GetFieldPositions() const override
135 {
136 return { { 209, 264, 79, wxS( "mm" ), LABEL_POSITION::RIGHT,
137 _( "Minimum width of the copper ring around a hole" ) } };
138 }
139};
140
141
143{
144public:
147 std::vector<DRC_RE_FIELD_POSITION> GetFieldPositions() const override
148 {
149 return { { 205, 260, 119, wxS( "mm" ), LABEL_POSITION::RIGHT,
150 _( "Minimum clearance between copper items on different nets" ) } };
151 }
152};
153
155{
156public:
159 std::vector<DRC_RE_FIELD_POSITION> GetFieldPositions() const override
160 {
161 return { { 230, 285, 116, wxS( "mm" ), LABEL_POSITION::RIGHT, _( "Minimum width of any copper connection" ) } };
162 }
163};
164
165
167{
168public:
171 std::vector<DRC_RE_FIELD_POSITION> GetFieldPositions() const override
172 {
173 return { { 195, 250, 302, wxS( "mm" ), LABEL_POSITION::RIGHT,
174 _( "Minimum width of solder mask left between two mask openings" ) } };
175 }
176};
177
178
180{
181public:
184 bool IsIntegerOnly() const override { return true; }
185 std::vector<DRC_RE_FIELD_POSITION> GetFieldPositions() const override
186 {
187 return { { 150, 205, 44, wxEmptyString, LABEL_POSITION::NONE,
188 _( "Minimum number of thermal relief spokes connecting a pad to its zone" ) } };
189 }
190};
191
193{
194public:
197 bool IsIntegerOnly() const override { return true; }
198
199 std::vector<DRC_RE_FIELD_POSITION> GetFieldPositions() const override
200 {
201 return { { 205, 261, 121, wxEmptyString, LABEL_POSITION::NONE,
202 _( "Largest number of microvias allowed stacked on one another." ) } };
203 }
204};
205
206
208{
209public:
212
213 // Under the drawing rather than beside a dimension, so neither one reads as the value to type.
214 std::vector<DRC_RE_FIELD_POSITION> GetFieldPositions() const override
215 {
216 return { { 72, 128, 174, wxEmptyString, LABEL_POSITION::NONE,
217 _( "The largest hole depth divided by hole width you allow.\n"
218 "A 0.1 mm hole drilled 0.075 mm deep gives 0.75.\n"
219 "Most fabs allow 0.75 to 1.0. A deeper hole is harder to plate." ) } };
220 }
221};
222
223
225{
226public:
229 std::vector<DRC_RE_FIELD_POSITION> GetFieldPositions() const override
230 {
231 return { { 209, 264, 119, wxS( "mm" ), LABEL_POSITION::RIGHT, _( "Minimum drill diameter" ) } };
232 }
233};
234
235
237{
238public:
241 std::vector<DRC_RE_FIELD_POSITION> GetFieldPositions() const override
242 {
243 return { { 186, 241, 117, wxS( "mm" ), LABEL_POSITION::RIGHT, _( "Minimum outer diameter of vias" ) } };
244 }
245};
246
247
249{
250public:
253 std::vector<DRC_RE_FIELD_POSITION> GetFieldPositions() const override
254 {
255 return { { 165, 220, 37, wxS( "mm" ), LABEL_POSITION::RIGHT,
256 _( "Minimum clearance between silkscreen items" ) } };
257 }
258};
259
260
262{
263public:
266 std::vector<DRC_RE_FIELD_POSITION> GetFieldPositions() const override
267 {
268 return { { 235, 290, 72, wxS( "mm" ), LABEL_POSITION::RIGHT,
269 _( "Minimum clearance between silkscreen and solder mask openings" ) } };
270 }
271};
272
273
275{
276public:
279 std::vector<DRC_RE_FIELD_POSITION> GetFieldPositions() const override
280 {
281 return { { 348, 403, 59, wxS( "mm" ), LABEL_POSITION::RIGHT,
282 _( "Distance the solder mask opening extends beyond the pad" ) } };
283 }
284};
285
286
288{
289public:
292 std::vector<DRC_RE_FIELD_POSITION> GetFieldPositions() const override
293 {
294 return { { 245, 300, 79, wxS( "mm" ), LABEL_POSITION::RIGHT,
295 _( "Distance the solder paste aperture extends beyond the pad" ) } };
296 }
297};
298
299
300#endif
BITMAPS
A list of all bitmap identifiers.
@ constraint_minimum_annular_width
@ constraint_minimum_via_diameter
@ constraint_hole_size
@ constraint_minimum_drill_size
@ constraint_soldermask_expansion
@ constraint_hole_to_hole_distance
@ constraint_microvia_aspect_ratio
@ constraint_minimum_soldermask_sliver
@ constraint_creepage_distance
@ constraint_silk_to_soldermask_clearance
@ constraint_clearance
@ constraint_microvia_stack_depth
@ constraint_minimum_connection_width
@ constraint_copper_to_edge_clearance
@ constraint_solderpaste_expansion
@ constraint_maximum_via_count
@ constraint_silk_to_silk_clearance
@ constraint_minimum_thermal_relief_spoke_count
@ constraint_courtyard_clearance
@ constraint_copper_to_hole_clearance
@ constraint_minimum_clearance
std::vector< DRC_RE_FIELD_POSITION > GetFieldPositions() const override
Returns the field positions for controls overlaid on the constraint bitmap.
BITMAPS GetOverlayBitmap() const override
Returns the bitmap to use for the overlay panel background.
BITMAPS GetOverlayBitmap() const override
Returns the bitmap to use for the overlay panel background.
std::vector< DRC_RE_FIELD_POSITION > GetFieldPositions() const override
Returns the field positions for controls overlaid on the constraint bitmap.
std::vector< DRC_RE_FIELD_POSITION > GetFieldPositions() const override
Returns the field positions for controls overlaid on the constraint bitmap.
BITMAPS GetOverlayBitmap() const override
Returns the bitmap to use for the overlay panel background.
BITMAPS GetOverlayBitmap() const override
Returns the bitmap to use for the overlay panel background.
std::vector< DRC_RE_FIELD_POSITION > GetFieldPositions() const override
Returns the field positions for controls overlaid on the constraint bitmap.
BITMAPS GetOverlayBitmap() const override
Returns the bitmap to use for the overlay panel background.
std::vector< DRC_RE_FIELD_POSITION > GetFieldPositions() const override
Returns the field positions for controls overlaid on the constraint bitmap.
BITMAPS GetOverlayBitmap() const override
Returns the bitmap to use for the overlay panel background.
std::vector< DRC_RE_FIELD_POSITION > GetFieldPositions() const override
Returns the field positions for controls overlaid on the constraint bitmap.
std::vector< DRC_RE_FIELD_POSITION > GetFieldPositions() const override
Returns the field positions for controls overlaid on the constraint bitmap.
BITMAPS GetOverlayBitmap() const override
Returns the bitmap to use for the overlay panel background.
BITMAPS GetOverlayBitmap() const override
Returns the bitmap to use for the overlay panel background.
std::vector< DRC_RE_FIELD_POSITION > GetFieldPositions() const override
Returns the field positions for controls overlaid on the constraint bitmap.
BITMAPS GetOverlayBitmap() const override
Returns the bitmap to use for the overlay panel background.
std::vector< DRC_RE_FIELD_POSITION > GetFieldPositions() const override
Returns the field positions for controls overlaid on the constraint bitmap.
std::vector< DRC_RE_FIELD_POSITION > GetFieldPositions() const override
Returns the field positions for controls overlaid on the constraint bitmap.
BITMAPS GetOverlayBitmap() const override
Returns the bitmap to use for the overlay panel background.
BITMAPS GetOverlayBitmap() const override
Returns the bitmap to use for the overlay panel background.
std::vector< DRC_RE_FIELD_POSITION > GetFieldPositions() const override
Returns the field positions for controls overlaid on the constraint bitmap.
std::vector< DRC_RE_FIELD_POSITION > GetFieldPositions() const override
Returns the field positions for controls overlaid on the constraint bitmap.
BITMAPS GetOverlayBitmap() const override
Returns the bitmap to use for the overlay panel background.
BITMAPS GetOverlayBitmap() const override
Returns the bitmap to use for the overlay panel background.
std::vector< DRC_RE_FIELD_POSITION > GetFieldPositions() const override
Returns the field positions for controls overlaid on the constraint bitmap.
std::vector< DRC_RE_FIELD_POSITION > GetFieldPositions() const override
Returns the field positions for controls overlaid on the constraint bitmap.
BITMAPS GetOverlayBitmap() const override
Returns the bitmap to use for the overlay panel background.
std::vector< DRC_RE_FIELD_POSITION > GetFieldPositions() const override
Returns the field positions for controls overlaid on the constraint bitmap.
BITMAPS GetOverlayBitmap() const override
Returns the bitmap to use for the overlay panel background.
BITMAPS GetOverlayBitmap() const override
Returns the bitmap to use for the overlay panel background.
std::vector< DRC_RE_FIELD_POSITION > GetFieldPositions() const override
Returns the field positions for controls overlaid on the constraint bitmap.
BITMAPS GetOverlayBitmap() const override
Returns the bitmap to use for the overlay panel background.
std::vector< DRC_RE_FIELD_POSITION > GetFieldPositions() const override
Returns the field positions for controls overlaid on the constraint bitmap.
std::vector< DRC_RE_FIELD_POSITION > GetFieldPositions() const override
Returns the field positions for controls overlaid on the constraint bitmap.
BITMAPS GetOverlayBitmap() const override
Returns the bitmap to use for the overlay panel background.
std::vector< DRC_RE_FIELD_POSITION > GetFieldPositions() const override
Returns the field positions for controls overlaid on the constraint bitmap.
BITMAPS GetOverlayBitmap() const override
Returns the bitmap to use for the overlay panel background.
std::vector< DRC_RE_FIELD_POSITION > GetFieldPositions() const override
Returns the field positions for controls overlaid on the constraint bitmap.
BITMAPS GetOverlayBitmap() const override
Returns the bitmap to use for the overlay panel background.
std::vector< DRC_RE_FIELD_POSITION > GetFieldPositions() const override
Returns the field positions for controls overlaid on the constraint bitmap.
BITMAPS GetOverlayBitmap() const override
Returns the bitmap to use for the overlay panel background.
@ RIGHT
Label to the right of the field.
#define _(s)