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 // A label here would be overwritten by the unit binder, so the drawing carries the meaning.
214 std::vector<DRC_RE_FIELD_POSITION> GetFieldPositions() const override
215 {
216 return { { 92, 148, 190, wxEmptyString, LABEL_POSITION::NONE,
217 _( "Hole depth divided by drill diameter, 8 to 10 for drilled holes and 1 for microvias" ) } };
218 }
219};
220
221
223{
224public:
227 std::vector<DRC_RE_FIELD_POSITION> GetFieldPositions() const override
228 {
229 return { { 209, 264, 119, wxS( "mm" ), LABEL_POSITION::RIGHT, _( "Minimum drill diameter" ) } };
230 }
231};
232
233
235{
236public:
239 std::vector<DRC_RE_FIELD_POSITION> GetFieldPositions() const override
240 {
241 return { { 186, 241, 117, wxS( "mm" ), LABEL_POSITION::RIGHT, _( "Minimum outer diameter of vias" ) } };
242 }
243};
244
245
247{
248public:
251 std::vector<DRC_RE_FIELD_POSITION> GetFieldPositions() const override
252 {
253 return { { 165, 220, 37, wxS( "mm" ), LABEL_POSITION::RIGHT,
254 _( "Minimum clearance between silkscreen items" ) } };
255 }
256};
257
258
260{
261public:
264 std::vector<DRC_RE_FIELD_POSITION> GetFieldPositions() const override
265 {
266 return { { 235, 290, 72, wxS( "mm" ), LABEL_POSITION::RIGHT,
267 _( "Minimum clearance between silkscreen and solder mask openings" ) } };
268 }
269};
270
271
273{
274public:
277 std::vector<DRC_RE_FIELD_POSITION> GetFieldPositions() const override
278 {
279 return { { 348, 403, 59, wxS( "mm" ), LABEL_POSITION::RIGHT,
280 _( "Distance the solder mask opening extends beyond the pad" ) } };
281 }
282};
283
284
286{
287public:
290 std::vector<DRC_RE_FIELD_POSITION> GetFieldPositions() const override
291 {
292 return { { 245, 300, 79, wxS( "mm" ), LABEL_POSITION::RIGHT,
293 _( "Distance the solder paste aperture extends beyond the pad" ) } };
294 }
295};
296
297
298#endif
BITMAPS
A list of all bitmap identifiers.
@ constraint_minimum_annular_width
@ constraint_minimum_via_diameter
@ constraint_hole_aspect_ratio
@ constraint_hole_size
@ constraint_minimum_drill_size
@ constraint_soldermask_expansion
@ constraint_hole_to_hole_distance
@ 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.
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.
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)