Common $el.setAttribute('data-tooltip', 'Copy link to this element'), 2000)" aria-label="Copy link to this element" class="headerlink" data-tooltip="Copy link to this element" href="#module-edea.kicad.pcb.common">
- class edea.kicad.pcb.common.Position(x: float = 0, y: float = 0, angle: float = 0, unlocked: bool = False) $el.setAttribute('data-tooltip', 'Copy link to this element'), 2000)" aria-label="Copy link to this element" class="headerlink" data-tooltip="Copy link to this element" href="#edea.kicad.pcb.common.Position" x-intersect.margin.0%.0%.-70%.0%="activeSection = '#edea.kicad.pcb.common.Position'">
Bases:
KicadPcbExpr
A position element within a KiCad PCB file.
- Parameters:
x – The X coordinates of the position.
y – The X coordinates of the position.
angle – The orientation angle of the position.
unlocked – Whether the position orientation can be anything other than the upright orientation or not.
- Variables:
kicad_expr_tag_name – The KiCad expression tag name for this element (“at”).
- kicad_expr_tag_name: ClassVar[Literal['at']] = 'at' $el.setAttribute('data-tooltip', 'Copy link to this element'), 2000)" aria-label="Copy link to this element" class="headerlink" data-tooltip="Copy link to this element" href="#edea.kicad.pcb.common.Position.kicad_expr_tag_name" x-intersect.margin.0%.0%.-70%.0%="activeSection = '#edea.kicad.pcb.common.Position.kicad_expr_tag_name'">
- class edea.kicad.pcb.common.ConnectionPads(type: Literal['yes', 'no', 'full', 'thru_hole_only', None] = None, clearance: float = 0) $el.setAttribute('data-tooltip', 'Copy link to this element'), 2000)" aria-label="Copy link to this element" class="headerlink" data-tooltip="Copy link to this element" href="#edea.kicad.pcb.common.ConnectionPads" x-intersect.margin.0%.0%.-70%.0%="activeSection = '#edea.kicad.pcb.common.ConnectionPads'">
Bases:
KicadPcbExpr
A connection pads.
- Parameters:
type – The type of pad connection.
clearance – The minimum clearance distance for connected pads.
- Variables:
kicad_expr_tag_name – The KiCad expression tag name for this element (“connect_pads”).
- type: Literal['yes', 'no', 'full', 'thru_hole_only', None] = None $el.setAttribute('data-tooltip', 'Copy link to this element'), 2000)" aria-label="Copy link to this element" class="headerlink" data-tooltip="Copy link to this element" href="#edea.kicad.pcb.common.ConnectionPads.type" x-intersect.margin.0%.0%.-70%.0%="activeSection = '#edea.kicad.pcb.common.ConnectionPads.type'">
- kicad_expr_tag_name: ClassVar[Literal['connect_pads']] = 'connect_pads' $el.setAttribute('data-tooltip', 'Copy link to this element'), 2000)" aria-label="Copy link to this element" class="headerlink" data-tooltip="Copy link to this element" href="#edea.kicad.pcb.common.ConnectionPads.kicad_expr_tag_name" x-intersect.margin.0%.0%.-70%.0%="activeSection = '#edea.kicad.pcb.common.ConnectionPads.kicad_expr_tag_name'">
- class edea.kicad.pcb.common.ZoneKeepOutSettings(tracks: Literal['allowed', 'not_allowed'], vias: Literal['allowed', 'not_allowed'], pads: Literal['allowed', 'not_allowed'], copperpour: Literal['allowed', 'not_allowed'], footprints: Literal['allowed', 'not_allowed']) $el.setAttribute('data-tooltip', 'Copy link to this element'), 2000)" aria-label="Copy link to this element" class="headerlink" data-tooltip="Copy link to this element" href="#edea.kicad.pcb.common.ZoneKeepOutSettings" x-intersect.margin.0%.0%.-70%.0%="activeSection = '#edea.kicad.pcb.common.ZoneKeepOutSettings'">
Bases:
KicadPcbExpr
The zone keepout settings within a KiCad PCB file, defining allowed elements within keepout zones.
- Parameters:
tracks – Whether tracks should be excluded from the keep out area. Valid attributes are allowed and not_allowed.
vias – Whether vias should be excluded from the keep out area. Valid attributes are allowed and not_allowed.
pads – Whether pads should be excluded from the keep out area. Valid attributes are allowed and not_allowed.
copperpour – Whethercopper pours should be excluded from the keep out area. Valid attributes are allowed and not_allowed.
footprints – Whether footprints should be excluded from the keep out area. Valid attributes are allowed and not_allowed.
- Variables:
kicad_expr_tag_name – The KiCad expression tag name for this element (“keepout”) or not.
- tracks: Literal['allowed', 'not_allowed'] $el.setAttribute('data-tooltip', 'Copy link to this element'), 2000)" aria-label="Copy link to this element" class="headerlink" data-tooltip="Copy link to this element" href="#edea.kicad.pcb.common.ZoneKeepOutSettings.tracks" x-intersect.margin.0%.0%.-70%.0%="activeSection = '#edea.kicad.pcb.common.ZoneKeepOutSettings.tracks'">
- vias: Literal['allowed', 'not_allowed'] $el.setAttribute('data-tooltip', 'Copy link to this element'), 2000)" aria-label="Copy link to this element" class="headerlink" data-tooltip="Copy link to this element" href="#edea.kicad.pcb.common.ZoneKeepOutSettings.vias" x-intersect.margin.0%.0%.-70%.0%="activeSection = '#edea.kicad.pcb.common.ZoneKeepOutSettings.vias'">
- pads: Literal['allowed', 'not_allowed'] $el.setAttribute('data-tooltip', 'Copy link to this element'), 2000)" aria-label="Copy link to this element" class="headerlink" data-tooltip="Copy link to this element" href="#edea.kicad.pcb.common.ZoneKeepOutSettings.pads" x-intersect.margin.0%.0%.-70%.0%="activeSection = '#edea.kicad.pcb.common.ZoneKeepOutSettings.pads'">
- copperpour: Literal['allowed', 'not_allowed'] $el.setAttribute('data-tooltip', 'Copy link to this element'), 2000)" aria-label="Copy link to this element" class="headerlink" data-tooltip="Copy link to this element" href="#edea.kicad.pcb.common.ZoneKeepOutSettings.copperpour" x-intersect.margin.0%.0%.-70%.0%="activeSection = '#edea.kicad.pcb.common.ZoneKeepOutSettings.copperpour'">
- footprints: Literal['allowed', 'not_allowed'] $el.setAttribute('data-tooltip', 'Copy link to this element'), 2000)" aria-label="Copy link to this element" class="headerlink" data-tooltip="Copy link to this element" href="#edea.kicad.pcb.common.ZoneKeepOutSettings.footprints" x-intersect.margin.0%.0%.-70%.0%="activeSection = '#edea.kicad.pcb.common.ZoneKeepOutSettings.footprints'">
- kicad_expr_tag_name: ClassVar[Literal['keepout']] = 'keepout' $el.setAttribute('data-tooltip', 'Copy link to this element'), 2000)" aria-label="Copy link to this element" class="headerlink" data-tooltip="Copy link to this element" href="#edea.kicad.pcb.common.ZoneKeepOutSettings.kicad_expr_tag_name" x-intersect.margin.0%.0%.-70%.0%="activeSection = '#edea.kicad.pcb.common.ZoneKeepOutSettings.kicad_expr_tag_name'">
- class edea.kicad.pcb.common.ZoneFillIslandRemovalMode(value, names=<not given>, *values, module=None, qualname=None, type=None, start=1, boundary=None) $el.setAttribute('data-tooltip', 'Copy link to this element'), 2000)" aria-label="Copy link to this element" class="headerlink" data-tooltip="Copy link to this element" href="#edea.kicad.pcb.common.ZoneFillIslandRemovalMode" x-intersect.margin.0%.0%.-70%.0%="activeSection = '#edea.kicad.pcb.common.ZoneFillIslandRemovalMode'">
Bases:
StrEnum
Different Island removal modes for zone fills within a KiCad PCB file.
- Always = '0' $el.setAttribute('data-tooltip', 'Copy link to this element'), 2000)" aria-label="Copy link to this element" class="headerlink" data-tooltip="Copy link to this element" href="#edea.kicad.pcb.common.ZoneFillIslandRemovalMode.Always" x-intersect.margin.0%.0%.-70%.0%="activeSection = '#edea.kicad.pcb.common.ZoneFillIslandRemovalMode.Always'">
Remove all islands (copper areas disconnected from the main zone).
- MinimumArea = '2' $el.setAttribute('data-tooltip', 'Copy link to this element'), 2000)" aria-label="Copy link to this element" class="headerlink" data-tooltip="Copy link to this element" href="#edea.kicad.pcb.common.ZoneFillIslandRemovalMode.MinimumArea" x-intersect.margin.0%.0%.-70%.0%="activeSection = '#edea.kicad.pcb.common.ZoneFillIslandRemovalMode.MinimumArea'">
Remove islands with area smaller than a specified threshold.
- class edea.kicad.pcb.common.ZoneFillHatchSmoothingLevel(value, names=<not given>, *values, module=None, qualname=None, type=None, start=1, boundary=None) $el.setAttribute('data-tooltip', 'Copy link to this element'), 2000)" aria-label="Copy link to this element" class="headerlink" data-tooltip="Copy link to this element" href="#edea.kicad.pcb.common.ZoneFillHatchSmoothingLevel" x-intersect.margin.0%.0%.-70%.0%="activeSection = '#edea.kicad.pcb.common.ZoneFillHatchSmoothingLevel'">
Bases:
StrEnum
Different smoothing levels for hatched zone fills within a KiCad PCB file.
- No = '0' $el.setAttribute('data-tooltip', 'Copy link to this element'), 2000)" aria-label="Copy link to this element" class="headerlink" data-tooltip="Copy link to this element" href="#edea.kicad.pcb.common.ZoneFillHatchSmoothingLevel.No" x-intersect.margin.0%.0%.-70%.0%="activeSection = '#edea.kicad.pcb.common.ZoneFillHatchSmoothingLevel.No'">
No smoothing applied to the hatch edges.
- Fillet = '1' $el.setAttribute('data-tooltip', 'Copy link to this element'), 2000)" aria-label="Copy link to this element" class="headerlink" data-tooltip="Copy link to this element" href="#edea.kicad.pcb.common.ZoneFillHatchSmoothingLevel.Fillet" x-intersect.margin.0%.0%.-70%.0%="activeSection = '#edea.kicad.pcb.common.ZoneFillHatchSmoothingLevel.Fillet'">
Apply a fillet (rounded corner) smoothing to the hatch edges.
- ArcMinimum = '2' $el.setAttribute('data-tooltip', 'Copy link to this element'), 2000)" aria-label="Copy link to this element" class="headerlink" data-tooltip="Copy link to this element" href="#edea.kicad.pcb.common.ZoneFillHatchSmoothingLevel.ArcMinimum" x-intersect.margin.0%.0%.-70%.0%="activeSection = '#edea.kicad.pcb.common.ZoneFillHatchSmoothingLevel.ArcMinimum'">
Use minimum arc radius for smoothing hatch edges.
- ArcMaximum = '3' $el.setAttribute('data-tooltip', 'Copy link to this element'), 2000)" aria-label="Copy link to this element" class="headerlink" data-tooltip="Copy link to this element" href="#edea.kicad.pcb.common.ZoneFillHatchSmoothingLevel.ArcMaximum" x-intersect.margin.0%.0%.-70%.0%="activeSection = '#edea.kicad.pcb.common.ZoneFillHatchSmoothingLevel.ArcMaximum'">
Use maximum arc radius for smoothing hatch edges.
- class edea.kicad.pcb.common.ZoneFillHatchBorderAlgorithm(value, names=<not given>, *values, module=None, qualname=None, type=None, start=1, boundary=None) $el.setAttribute('data-tooltip', 'Copy link to this element'), 2000)" aria-label="Copy link to this element" class="headerlink" data-tooltip="Copy link to this element" href="#edea.kicad.pcb.common.ZoneFillHatchBorderAlgorithm" x-intersect.margin.0%.0%.-70%.0%="activeSection = '#edea.kicad.pcb.common.ZoneFillHatchBorderAlgorithm'">
Bases:
StrEnum
Different algorithms for defining the border of hatched zone fills within a KiCad PCB file.
- ZoneMinimumThickness = 'zone_min_thickness' $el.setAttribute('data-tooltip', 'Copy link to this element'), 2000)" aria-label="Copy link to this element" class="headerlink" data-tooltip="Copy link to this element" href="#edea.kicad.pcb.common.ZoneFillHatchBorderAlgorithm.ZoneMinimumThickness" x-intersect.margin.0%.0%.-70%.0%="activeSection = '#edea.kicad.pcb.common.ZoneFillHatchBorderAlgorithm.ZoneMinimumThickness'">
Use minimum zone thickness to define the border.
- HatchThickness = 'hatch_thickness' $el.setAttribute('data-tooltip', 'Copy link to this element'), 2000)" aria-label="Copy link to this element" class="headerlink" data-tooltip="Copy link to this element" href="#edea.kicad.pcb.common.ZoneFillHatchBorderAlgorithm.HatchThickness" x-intersect.margin.0%.0%.-70%.0%="activeSection = '#edea.kicad.pcb.common.ZoneFillHatchBorderAlgorithm.HatchThickness'">
Use hatch thickness to define the border.
- class edea.kicad.pcb.common.ZoneFillSettings(yes: bool = False, mode: Literal['hatch', 'solid'] = 'solid', thermal_gap: float | None = None, thermal_bridge_width: float | None = None, smoothing: Literal['chamfer', 'fillet', None] = None, radius: float | None = None, island_removal_mode: ZoneFillIslandRemovalMode | None = None, island_area_min: float | None = None, hatch_thickness: float | None = None, hatch_gap: float | None = None, hatch_orientation: float | None = None, hatch_smoothing_level: ZoneFillHatchSmoothingLevel | None = None, hatch_smoothing_value: float | None = None, hatch_border_algorithm: ZoneFillHatchBorderAlgorithm | None = None, hatch_min_hole_area: float | None = None) $el.setAttribute('data-tooltip', 'Copy link to this element'), 2000)" aria-label="Copy link to this element" class="headerlink" data-tooltip="Copy link to this element" href="#edea.kicad.pcb.common.ZoneFillSettings" x-intersect.margin.0%.0%.-70%.0%="activeSection = '#edea.kicad.pcb.common.ZoneFillSettings'">
Bases:
KicadPcbExpr
The zone fill settings within a KiCad PCB file, defining properties for filling copper zones.
- Parameters:
yes – If the zone should be filled.
mode – How the zone is filled. The only valid fill mode is hatched.
thermal_gap – The distance from the zone to all pad thermal relief connections to the zone.
thermal_bridge_width – The spoke width for all pad thermal relief connection to the zone.
smoothing – The style of corner smoothing and the radius of the smoothing.
radius – The radius.
island_removal_mode – The mode for removing islands within the zone fill.
island_area_min – The minimum allowable zone island.
hatch_thickness – The thickness for hatched fills.
hatch_gap – The distance between lines for hatched fills.
hatch_orientation – The line angle for hatched fills.
hatch_smoothing_level – How hatch outlines are smoothed.
hatch_smoothing_value – The ratio between the hole and the chamfer/fillet size.
hatch_border_algorithm – Whether the zone line thickness is used when performing a hatch fill or not.
hatch_min_hole_area – The minimum area a hatch file hole can be.
- Variables:
kicad_expr_tag_name – The KiCad expression tag name for this element (“fill”).
Warning
The radius field is not documented in the KiCad file format documentation but we have seen it in the wild.
- mode: Literal['hatch', 'solid'] = 'solid' $el.setAttribute('data-tooltip', 'Copy link to this element'), 2000)" aria-label="Copy link to this element" class="headerlink" data-tooltip="Copy link to this element" href="#edea.kicad.pcb.common.ZoneFillSettings.mode" x-intersect.margin.0%.0%.-70%.0%="activeSection = '#edea.kicad.pcb.common.ZoneFillSettings.mode'">
- thermal_bridge_width: float | None = None $el.setAttribute('data-tooltip', 'Copy link to this element'), 2000)" aria-label="Copy link to this element" class="headerlink" data-tooltip="Copy link to this element" href="#edea.kicad.pcb.common.ZoneFillSettings.thermal_bridge_width" x-intersect.margin.0%.0%.-70%.0%="activeSection = '#edea.kicad.pcb.common.ZoneFillSettings.thermal_bridge_width'">
- smoothing: Literal['chamfer', 'fillet', None] = None $el.setAttribute('data-tooltip', 'Copy link to this element'), 2000)" aria-label="Copy link to this element" class="headerlink" data-tooltip="Copy link to this element" href="#edea.kicad.pcb.common.ZoneFillSettings.smoothing" x-intersect.margin.0%.0%.-70%.0%="activeSection = '#edea.kicad.pcb.common.ZoneFillSettings.smoothing'">
- island_removal_mode: ZoneFillIslandRemovalMode | None = None $el.setAttribute('data-tooltip', 'Copy link to this element'), 2000)" aria-label="Copy link to this element" class="headerlink" data-tooltip="Copy link to this element" href="#edea.kicad.pcb.common.ZoneFillSettings.island_removal_mode" x-intersect.margin.0%.0%.-70%.0%="activeSection = '#edea.kicad.pcb.common.ZoneFillSettings.island_removal_mode'">
- hatch_orientation: float | None = None $el.setAttribute('data-tooltip', 'Copy link to this element'), 2000)" aria-label="Copy link to this element" class="headerlink" data-tooltip="Copy link to this element" href="#edea.kicad.pcb.common.ZoneFillSettings.hatch_orientation" x-intersect.margin.0%.0%.-70%.0%="activeSection = '#edea.kicad.pcb.common.ZoneFillSettings.hatch_orientation'">
- hatch_smoothing_level: ZoneFillHatchSmoothingLevel | None = None $el.setAttribute('data-tooltip', 'Copy link to this element'), 2000)" aria-label="Copy link to this element" class="headerlink" data-tooltip="Copy link to this element" href="#edea.kicad.pcb.common.ZoneFillSettings.hatch_smoothing_level" x-intersect.margin.0%.0%.-70%.0%="activeSection = '#edea.kicad.pcb.common.ZoneFillSettings.hatch_smoothing_level'">
- hatch_smoothing_value: float | None = None $el.setAttribute('data-tooltip', 'Copy link to this element'), 2000)" aria-label="Copy link to this element" class="headerlink" data-tooltip="Copy link to this element" href="#edea.kicad.pcb.common.ZoneFillSettings.hatch_smoothing_value" x-intersect.margin.0%.0%.-70%.0%="activeSection = '#edea.kicad.pcb.common.ZoneFillSettings.hatch_smoothing_value'">
- hatch_border_algorithm: ZoneFillHatchBorderAlgorithm | None = None $el.setAttribute('data-tooltip', 'Copy link to this element'), 2000)" aria-label="Copy link to this element" class="headerlink" data-tooltip="Copy link to this element" href="#edea.kicad.pcb.common.ZoneFillSettings.hatch_border_algorithm" x-intersect.margin.0%.0%.-70%.0%="activeSection = '#edea.kicad.pcb.common.ZoneFillSettings.hatch_border_algorithm'">
- hatch_min_hole_area: float | None = None $el.setAttribute('data-tooltip', 'Copy link to this element'), 2000)" aria-label="Copy link to this element" class="headerlink" data-tooltip="Copy link to this element" href="#edea.kicad.pcb.common.ZoneFillSettings.hatch_min_hole_area" x-intersect.margin.0%.0%.-70%.0%="activeSection = '#edea.kicad.pcb.common.ZoneFillSettings.hatch_min_hole_area'">
- kicad_expr_tag_name: ClassVar[Literal['fill']] = 'fill' $el.setAttribute('data-tooltip', 'Copy link to this element'), 2000)" aria-label="Copy link to this element" class="headerlink" data-tooltip="Copy link to this element" href="#edea.kicad.pcb.common.ZoneFillSettings.kicad_expr_tag_name" x-intersect.margin.0%.0%.-70%.0%="activeSection = '#edea.kicad.pcb.common.ZoneFillSettings.kicad_expr_tag_name'">
- class edea.kicad.pcb.common.ZoneFillPolygon(layer: ~typing.Literal['F.Cu', 'In1.Cu', 'In2.Cu', 'In3.Cu', 'In4.Cu', 'In5.Cu', 'In6.Cu', 'In7.Cu', 'In8.Cu', 'In9.Cu', 'In10.Cu', 'In11.Cu', 'In12.Cu', 'In13.Cu', 'In14.Cu', 'In15.Cu', 'In16.Cu', 'In17.Cu', 'In18.Cu', 'In19.Cu', 'In20.Cu', 'In21.Cu', 'In22.Cu', 'In23.Cu', 'In24.Cu', 'In25.Cu', 'In26.Cu', 'In27.Cu', 'In28.Cu', 'In29.Cu', 'In30.Cu', 'B.Cu', 'B.Adhes', 'F.Adhes', 'B.Paste', 'F.Paste', 'B.SilkS', 'F.SilkS', 'B.Mask', 'F.Mask', 'Dwgs.User', 'Cmts.User', 'Eco1.User', 'Eco2.User', 'Edge.Cuts', 'F.CrtYd', 'B.CrtYd', 'F.Fab', 'B.Fab', 'User.1', 'User.2', 'User.3', 'User.4', 'User.5', 'User.6', 'User.7', 'User.8', 'User.9', 'Margin', 'Rescue'], island: bool = False, pts: ~edea.kicad.common.Pts = <factory>) $el.setAttribute('data-tooltip', 'Copy link to this element'), 2000)" aria-label="Copy link to this element" class="headerlink" data-tooltip="Copy link to this element" href="#edea.kicad.pcb.common.ZoneFillPolygon" x-intersect.margin.0%.0%.-70%.0%="activeSection = '#edea.kicad.pcb.common.ZoneFillPolygon'">
Bases:
KicadPcbExpr
A filled polygon element within a KiCad PCB file, defining a zone fill area on a specific layer.
- Parameters:
layer – The canonical layer the zone fill resides on.
island – Whether the polygon defines an island within a zone fill or not.
pts – A list of polygon X-Y coordinates used to fill the zone.
- Variables:
kicad_expr_tag_name – The KiCad expression tag name for this element (“filled_polygon”).
- layer: Literal['F.Cu', 'In1.Cu', 'In2.Cu', 'In3.Cu', 'In4.Cu', 'In5.Cu', 'In6.Cu', 'In7.Cu', 'In8.Cu', 'In9.Cu', 'In10.Cu', 'In11.Cu', 'In12.Cu', 'In13.Cu', 'In14.Cu', 'In15.Cu', 'In16.Cu', 'In17.Cu', 'In18.Cu', 'In19.Cu', 'In20.Cu', 'In21.Cu', 'In22.Cu', 'In23.Cu', 'In24.Cu', 'In25.Cu', 'In26.Cu', 'In27.Cu', 'In28.Cu', 'In29.Cu', 'In30.Cu', 'B.Cu', 'B.Adhes', 'F.Adhes', 'B.Paste', 'F.Paste', 'B.SilkS', 'F.SilkS', 'B.Mask', 'F.Mask', 'Dwgs.User', 'Cmts.User', 'Eco1.User', 'Eco2.User', 'Edge.Cuts', 'F.CrtYd', 'B.CrtYd', 'F.Fab', 'B.Fab', 'User.1', 'User.2', 'User.3', 'User.4', 'User.5', 'User.6', 'User.7', 'User.8', 'User.9', 'Margin', 'Rescue'] $el.setAttribute('data-tooltip', 'Copy link to this element'), 2000)" aria-label="Copy link to this element" class="headerlink" data-tooltip="Copy link to this element" href="#edea.kicad.pcb.common.ZoneFillPolygon.layer" x-intersect.margin.0%.0%.-70%.0%="activeSection = '#edea.kicad.pcb.common.ZoneFillPolygon.layer'">
- pts: Pts $el.setAttribute('data-tooltip', 'Copy link to this element'), 2000)" aria-label="Copy link to this element" class="headerlink" data-tooltip="Copy link to this element" href="#edea.kicad.pcb.common.ZoneFillPolygon.pts" x-intersect.margin.0%.0%.-70%.0%="activeSection = '#edea.kicad.pcb.common.ZoneFillPolygon.pts'">
- kicad_expr_tag_name: ClassVar[Literal['filled_polygon']] = 'filled_polygon' $el.setAttribute('data-tooltip', 'Copy link to this element'), 2000)" aria-label="Copy link to this element" class="headerlink" data-tooltip="Copy link to this element" href="#edea.kicad.pcb.common.ZoneFillPolygon.kicad_expr_tag_name" x-intersect.margin.0%.0%.-70%.0%="activeSection = '#edea.kicad.pcb.common.ZoneFillPolygon.kicad_expr_tag_name'">
- class edea.kicad.pcb.common.Polygon(pts: list[~edea.kicad.common.Pts] = <factory>) $el.setAttribute('data-tooltip', 'Copy link to this element'), 2000)" aria-label="Copy link to this element" class="headerlink" data-tooltip="Copy link to this element" href="#edea.kicad.pcb.common.Polygon" x-intersect.margin.0%.0%.-70%.0%="activeSection = '#edea.kicad.pcb.common.Polygon'">
Bases:
KicadPcbExpr
A simple polygon element within a KiCad PCB file, defining a closed shape without filling.
- Parameters:
pts – List of lists of points defining the polygon’s outer and potential inner contours.
- Variables:
kicad_expr_tag_name – The KiCad expression tag name for this element (“polygon”).
- pts: list[Pts] $el.setAttribute('data-tooltip', 'Copy link to this element'), 2000)" aria-label="Copy link to this element" class="headerlink" data-tooltip="Copy link to this element" href="#edea.kicad.pcb.common.Polygon.pts" x-intersect.margin.0%.0%.-70%.0%="activeSection = '#edea.kicad.pcb.common.Polygon.pts'">
- kicad_expr_tag_name: ClassVar[Literal['polygon']] = 'polygon' $el.setAttribute('data-tooltip', 'Copy link to this element'), 2000)" aria-label="Copy link to this element" class="headerlink" data-tooltip="Copy link to this element" href="#edea.kicad.pcb.common.Polygon.kicad_expr_tag_name" x-intersect.margin.0%.0%.-70%.0%="activeSection = '#edea.kicad.pcb.common.Polygon.kicad_expr_tag_name'">
- class edea.kicad.pcb.common.Hatch(value, names=<not given>, *values, module=None, qualname=None, type=None, start=1, boundary=None) $el.setAttribute('data-tooltip', 'Copy link to this element'), 2000)" aria-label="Copy link to this element" class="headerlink" data-tooltip="Copy link to this element" href="#edea.kicad.pcb.common.Hatch" x-intersect.margin.0%.0%.-70%.0%="activeSection = '#edea.kicad.pcb.common.Hatch'">
Bases:
StrEnum
Different hatch options for ZoneFillPolygon and Polygon elements within a KiCad PCB file.
- Edge = 'edge' $el.setAttribute('data-tooltip', 'Copy link to this element'), 2000)" aria-label="Copy link to this element" class="headerlink" data-tooltip="Copy link to this element" href="#edea.kicad.pcb.common.Hatch.Edge" x-intersect.margin.0%.0%.-70%.0%="activeSection = '#edea.kicad.pcb.common.Hatch.Edge'">
Hatch along the polygon edges.
- Full = 'full' $el.setAttribute('data-tooltip', 'Copy link to this element'), 2000)" aria-label="Copy link to this element" class="headerlink" data-tooltip="Copy link to this element" href="#edea.kicad.pcb.common.Hatch.Full" x-intersect.margin.0%.0%.-70%.0%="activeSection = '#edea.kicad.pcb.common.Hatch.Full'">
Fill the entire polygon area with hatch.
- None_ = 'none' $el.setAttribute('data-tooltip', 'Copy link to this element'), 2000)" aria-label="Copy link to this element" class="headerlink" data-tooltip="Copy link to this element" href="#edea.kicad.pcb.common.Hatch.None_" x-intersect.margin.0%.0%.-70%.0%="activeSection = '#edea.kicad.pcb.common.Hatch.None_'">
No hatching applied to the polygon.
- class edea.kicad.pcb.common.ZoneAttrTearDrop(type: Literal['padvia', 'track_end'] = 'padvia') $el.setAttribute('data-tooltip', 'Copy link to this element'), 2000)" aria-label="Copy link to this element" class="headerlink" data-tooltip="Copy link to this element" href="#edea.kicad.pcb.common.ZoneAttrTearDrop" x-intersect.margin.0%.0%.-70%.0%="activeSection = '#edea.kicad.pcb.common.ZoneAttrTearDrop'">
Bases:
KicadPcbExpr
A teardrop attribute for zone fills within a KiCad PCB file.
- Parameters:
type – This specifies the type of teardrop element
- Variables:
kicad_expr_tag_name – The KiCad expression tag name for this element, which is always “teardrop”.
- type: Literal['padvia', 'track_end'] = 'padvia' $el.setAttribute('data-tooltip', 'Copy link to this element'), 2000)" aria-label="Copy link to this element" class="headerlink" data-tooltip="Copy link to this element" href="#edea.kicad.pcb.common.ZoneAttrTearDrop.type" x-intersect.margin.0%.0%.-70%.0%="activeSection = '#edea.kicad.pcb.common.ZoneAttrTearDrop.type'">
- kicad_expr_tag_name: ClassVar[Literal['teardrop']] = 'teardrop' $el.setAttribute('data-tooltip', 'Copy link to this element'), 2000)" aria-label="Copy link to this element" class="headerlink" data-tooltip="Copy link to this element" href="#edea.kicad.pcb.common.ZoneAttrTearDrop.kicad_expr_tag_name" x-intersect.margin.0%.0%.-70%.0%="activeSection = '#edea.kicad.pcb.common.ZoneAttrTearDrop.kicad_expr_tag_name'">
- class edea.kicad.pcb.common.ZoneAttr(teardrop: ZoneAttrTearDrop) $el.setAttribute('data-tooltip', 'Copy link to this element'), 2000)" aria-label="Copy link to this element" class="headerlink" data-tooltip="Copy link to this element" href="#edea.kicad.pcb.common.ZoneAttr" x-intersect.margin.0%.0%.-70%.0%="activeSection = '#edea.kicad.pcb.common.ZoneAttr'">
Bases:
KicadPcbExpr
The zone attributes within a KiCad PCB file, potentially defining teardrop clearance shapes.
- Parameters:
teardrop – Teardrop clearance shape definition for the zone.
- Variables:
kicad_expr_tag_name – The KiCad expression tag name for this element (“attr”).
- teardrop: ZoneAttrTearDrop $el.setAttribute('data-tooltip', 'Copy link to this element'), 2000)" aria-label="Copy link to this element" class="headerlink" data-tooltip="Copy link to this element" href="#edea.kicad.pcb.common.ZoneAttr.teardrop" x-intersect.margin.0%.0%.-70%.0%="activeSection = '#edea.kicad.pcb.common.ZoneAttr.teardrop'">
- kicad_expr_tag_name: ClassVar[Literal['attr']] = 'attr' $el.setAttribute('data-tooltip', 'Copy link to this element'), 2000)" aria-label="Copy link to this element" class="headerlink" data-tooltip="Copy link to this element" href="#edea.kicad.pcb.common.ZoneAttr.kicad_expr_tag_name" x-intersect.margin.0%.0%.-70%.0%="activeSection = '#edea.kicad.pcb.common.ZoneAttr.kicad_expr_tag_name'">
- class edea.kicad.pcb.common.Zone(locked: bool = False, net: int = 0, net_name: str = '', layer: ~typing.Literal['F.Cu', 'In1.Cu', 'In2.Cu', 'In3.Cu', 'In4.Cu', 'In5.Cu', 'In6.Cu', 'In7.Cu', 'In8.Cu', 'In9.Cu', 'In10.Cu', 'In11.Cu', 'In12.Cu', 'In13.Cu', 'In14.Cu', 'In15.Cu', 'In16.Cu', 'In17.Cu', 'In18.Cu', 'In19.Cu', 'In20.Cu', 'In21.Cu', 'In22.Cu', 'In23.Cu', 'In24.Cu', 'In25.Cu', 'In26.Cu', 'In27.Cu', 'In28.Cu', 'In29.Cu', 'In30.Cu', 'B.Cu', 'B.Adhes', 'F.Adhes', 'B.Paste', 'F.Paste', 'B.SilkS', 'F.SilkS', 'B.Mask', 'F.Mask', 'Dwgs.User', 'Cmts.User', 'Eco1.User', 'Eco2.User', 'Edge.Cuts', 'F.CrtYd', 'B.CrtYd', 'F.Fab', 'B.Fab', 'User.1', 'User.2', 'User.3', 'User.4', 'User.5', 'User.6', 'User.7', 'User.8', 'User.9', 'Margin', 'Rescue'] | None = None, layers: list[~typing.Literal['F.Cu', 'In1.Cu', 'In2.Cu', 'In3.Cu', 'In4.Cu', 'In5.Cu', 'In6.Cu', 'In7.Cu', 'In8.Cu', 'In9.Cu', 'In10.Cu', 'In11.Cu', 'In12.Cu', 'In13.Cu', 'In14.Cu', 'In15.Cu', 'In16.Cu', 'In17.Cu', 'In18.Cu', 'In19.Cu', 'In20.Cu', 'In21.Cu', 'In22.Cu', 'In23.Cu', 'In24.Cu', 'In25.Cu', 'In26.Cu', 'In27.Cu', 'In28.Cu', 'In29.Cu', 'In30.Cu', 'B.Cu', 'B.Adhes', 'F.Adhes', 'B.Paste', 'F.Paste', 'B.SilkS', 'F.SilkS', 'B.Mask', 'F.Mask', 'Dwgs.User', 'Cmts.User', 'Eco1.User', 'Eco2.User', 'Edge.Cuts', 'F.CrtYd', 'B.CrtYd', 'F.Fab', 'B.Fab', 'User.1', 'User.2', 'User.3', 'User.4', 'User.5', 'User.6', 'User.7', 'User.8', 'User.9', 'Margin', 'Rescue'] | ~typing.Literal['*.Adhes', '*.Cu', '*.Mask', '*.Paste', '*.SilkS', 'F&B.Cu']] = <factory>, tstamp: ~uuid.UUID | None = None, uuid: ~uuid.UUID | None = None, name: str | None = None, hatch: tuple[~edea.kicad.pcb.common.Hatch, float] = ('none', 0), priority: int | None = None, attr: ~edea.kicad.pcb.common.ZoneAttr | None = None, connect_pads: ~edea.kicad.pcb.common.ConnectionPads = <factory>, min_thickness: float = 0, filled_areas_thickness: bool = True, keepout: ~edea.kicad.pcb.common.ZoneKeepOutSettings | None = None, fill: ~edea.kicad.pcb.common.ZoneFillSettings = <factory>, polygons: list[~edea.kicad.pcb.common.Polygon] = <factory>, filled_polygons: list[~edea.kicad.pcb.common.ZoneFillPolygon] = <factory>) $el.setAttribute('data-tooltip', 'Copy link to this element'), 2000)" aria-label="Copy link to this element" class="headerlink" data-tooltip="Copy link to this element" href="#edea.kicad.pcb.common.Zone" x-intersect.margin.0%.0%.-70%.0%="activeSection = '#edea.kicad.pcb.common.Zone'">
Bases:
KicadPcbExpr
A zone object within a KiCad PCB file, defining a designated area on specific copper layers.
Note
Some zones have layers instead of layer. But it’s always guaranteed to have all the layers in the layers list after initialization.
- Parameters:
locked – Whether the zone is locked for editing or not.
net – The net ordinal number which net in the nets section that the zone is part of.
net_name – The name of the net if the zone is not a keep out area.
layer – The canonical layer the zone resides on.
layers – It specifies the copper layers for the zone.
tstamp – The unique identifier (UUID) for the zone object.
name – The name for the zone if one has been assigned.
hatch – The zone outline display hatch style and pitch
priority – The zone priority if it is not zero.
attr – The reference to a ZoneAttr object defining additional zone attributes.
connect_pads – The pad connection type and clearance.
min_thickness – The minimum fill width allowed in the zone.
filled_areas_thickness – The zone like width is not used when determining the zone fill area.
keepout – The keep out items if the zone defines as a keep out area.
fill – The configuration for zone filling, including mode, island removal, hatch options, etc.
polygons – X-Y coordinates of corner points of the polygon outline.
filled_polygons – List of polygons used to fill the zone.
Note
The tstamp field got renamed to uuid in 20240108 (KiCad 8).
- layer: Literal['F.Cu', 'In1.Cu', 'In2.Cu', 'In3.Cu', 'In4.Cu', 'In5.Cu', 'In6.Cu', 'In7.Cu', 'In8.Cu', 'In9.Cu', 'In10.Cu', 'In11.Cu', 'In12.Cu', 'In13.Cu', 'In14.Cu', 'In15.Cu', 'In16.Cu', 'In17.Cu', 'In18.Cu', 'In19.Cu', 'In20.Cu', 'In21.Cu', 'In22.Cu', 'In23.Cu', 'In24.Cu', 'In25.Cu', 'In26.Cu', 'In27.Cu', 'In28.Cu', 'In29.Cu', 'In30.Cu', 'B.Cu', 'B.Adhes', 'F.Adhes', 'B.Paste', 'F.Paste', 'B.SilkS', 'F.SilkS', 'B.Mask', 'F.Mask', 'Dwgs.User', 'Cmts.User', 'Eco1.User', 'Eco2.User', 'Edge.Cuts', 'F.CrtYd', 'B.CrtYd', 'F.Fab', 'B.Fab', 'User.1', 'User.2', 'User.3', 'User.4', 'User.5', 'User.6', 'User.7', 'User.8', 'User.9', 'Margin', 'Rescue'] | None = None $el.setAttribute('data-tooltip', 'Copy link to this element'), 2000)" aria-label="Copy link to this element" class="headerlink" data-tooltip="Copy link to this element" href="#edea.kicad.pcb.common.Zone.layer" x-intersect.margin.0%.0%.-70%.0%="activeSection = '#edea.kicad.pcb.common.Zone.layer'">
- layers: list[Literal['F.Cu', 'In1.Cu', 'In2.Cu', 'In3.Cu', 'In4.Cu', 'In5.Cu', 'In6.Cu', 'In7.Cu', 'In8.Cu', 'In9.Cu', 'In10.Cu', 'In11.Cu', 'In12.Cu', 'In13.Cu', 'In14.Cu', 'In15.Cu', 'In16.Cu', 'In17.Cu', 'In18.Cu', 'In19.Cu', 'In20.Cu', 'In21.Cu', 'In22.Cu', 'In23.Cu', 'In24.Cu', 'In25.Cu', 'In26.Cu', 'In27.Cu', 'In28.Cu', 'In29.Cu', 'In30.Cu', 'B.Cu', 'B.Adhes', 'F.Adhes', 'B.Paste', 'F.Paste', 'B.SilkS', 'F.SilkS', 'B.Mask', 'F.Mask', 'Dwgs.User', 'Cmts.User', 'Eco1.User', 'Eco2.User', 'Edge.Cuts', 'F.CrtYd', 'B.CrtYd', 'F.Fab', 'B.Fab', 'User.1', 'User.2', 'User.3', 'User.4', 'User.5', 'User.6', 'User.7', 'User.8', 'User.9', 'Margin', 'Rescue'] | Literal['*.Adhes', '*.Cu', '*.Mask', '*.Paste', '*.SilkS', 'F&B.Cu']] $el.setAttribute('data-tooltip', 'Copy link to this element'), 2000)" aria-label="Copy link to this element" class="headerlink" data-tooltip="Copy link to this element" href="#edea.kicad.pcb.common.Zone.layers" x-intersect.margin.0%.0%.-70%.0%="activeSection = '#edea.kicad.pcb.common.Zone.layers'">
- hatch: tuple[Hatch, float] = ('none', 0) $el.setAttribute('data-tooltip', 'Copy link to this element'), 2000)" aria-label="Copy link to this element" class="headerlink" data-tooltip="Copy link to this element" href="#edea.kicad.pcb.common.Zone.hatch" x-intersect.margin.0%.0%.-70%.0%="activeSection = '#edea.kicad.pcb.common.Zone.hatch'">
- attr: ZoneAttr | None = None $el.setAttribute('data-tooltip', 'Copy link to this element'), 2000)" aria-label="Copy link to this element" class="headerlink" data-tooltip="Copy link to this element" href="#edea.kicad.pcb.common.Zone.attr" x-intersect.margin.0%.0%.-70%.0%="activeSection = '#edea.kicad.pcb.common.Zone.attr'">
- connect_pads: ConnectionPads $el.setAttribute('data-tooltip', 'Copy link to this element'), 2000)" aria-label="Copy link to this element" class="headerlink" data-tooltip="Copy link to this element" href="#edea.kicad.pcb.common.Zone.connect_pads" x-intersect.margin.0%.0%.-70%.0%="activeSection = '#edea.kicad.pcb.common.Zone.connect_pads'">
- keepout: ZoneKeepOutSettings | None = None $el.setAttribute('data-tooltip', 'Copy link to this element'), 2000)" aria-label="Copy link to this element" class="headerlink" data-tooltip="Copy link to this element" href="#edea.kicad.pcb.common.Zone.keepout" x-intersect.margin.0%.0%.-70%.0%="activeSection = '#edea.kicad.pcb.common.Zone.keepout'">
- fill: ZoneFillSettings $el.setAttribute('data-tooltip', 'Copy link to this element'), 2000)" aria-label="Copy link to this element" class="headerlink" data-tooltip="Copy link to this element" href="#edea.kicad.pcb.common.Zone.fill" x-intersect.margin.0%.0%.-70%.0%="activeSection = '#edea.kicad.pcb.common.Zone.fill'">
- polygons: list[Polygon] $el.setAttribute('data-tooltip', 'Copy link to this element'), 2000)" aria-label="Copy link to this element" class="headerlink" data-tooltip="Copy link to this element" href="#edea.kicad.pcb.common.Zone.polygons" x-intersect.margin.0%.0%.-70%.0%="activeSection = '#edea.kicad.pcb.common.Zone.polygons'">
- filled_polygons: list[ZoneFillPolygon] $el.setAttribute('data-tooltip', 'Copy link to this element'), 2000)" aria-label="Copy link to this element" class="headerlink" data-tooltip="Copy link to this element" href="#edea.kicad.pcb.common.Zone.filled_polygons" x-intersect.margin.0%.0%.-70%.0%="activeSection = '#edea.kicad.pcb.common.Zone.filled_polygons'">
- kicad_expr_tag_name: ClassVar[Literal['zone']] = 'zone' $el.setAttribute('data-tooltip', 'Copy link to this element'), 2000)" aria-label="Copy link to this element" class="headerlink" data-tooltip="Copy link to this element" href="#edea.kicad.pcb.common.Zone.kicad_expr_tag_name" x-intersect.margin.0%.0%.-70%.0%="activeSection = '#edea.kicad.pcb.common.Zone.kicad_expr_tag_name'">
- class edea.kicad.pcb.common.Group(name: str, locked: bool = False, id: ~uuid.UUID | None = None, uuid: ~uuid.UUID | None = None, members: list[~uuid.UUID] = <factory>) $el.setAttribute('data-tooltip', 'Copy link to this element'), 2000)" aria-label="Copy link to this element" class="headerlink" data-tooltip="Copy link to this element" href="#edea.kicad.pcb.common.Group" x-intersect.margin.0%.0%.-70%.0%="activeSection = '#edea.kicad.pcb.common.Group'">
Bases:
KicadPcbExpr
A group element within a KiCad PCB file, allowing you to group other elements for organizational purposes.
- Parameters:
name – The name of the group.
locked – Whether the group is locked for editing or not.
id – The unique identifier (UUID) for the group element.
members – A list of unique identifiers of the objects belonging to the group.
Note
The id field got renamed to uuid in 20240108 (KiCad 8).
- kicad_expr_tag_name: ClassVar[Literal['group']] = 'group' $el.setAttribute('data-tooltip', 'Copy link to this element'), 2000)" aria-label="Copy link to this element" class="headerlink" data-tooltip="Copy link to this element" href="#edea.kicad.pcb.common.Group.kicad_expr_tag_name" x-intersect.margin.0%.0%.-70%.0%="activeSection = '#edea.kicad.pcb.common.Group.kicad_expr_tag_name'">
- class edea.kicad.pcb.common.RenderCache(name: str, number: float, polygons: list[~edea.kicad.pcb.common.Polygon] = <factory>) $el.setAttribute('data-tooltip', 'Copy link to this element'), 2000)" aria-label="Copy link to this element" class="headerlink" data-tooltip="Copy link to this element" href="#edea.kicad.pcb.common.RenderCache" x-intersect.margin.0%.0%.-70%.0%="activeSection = '#edea.kicad.pcb.common.RenderCache'">
Bases:
KicadPcbExpr
A render cache element within a KiCad PCB file, potentially used for optimizing rendering of complex elements.
- Parameters:
name – The name of the render cache.
number – A number of the render cache.
polygons – The cached geometry.
- polygons: list[Polygon] $el.setAttribute('data-tooltip', 'Copy link to this element'), 2000)" aria-label="Copy link to this element" class="headerlink" data-tooltip="Copy link to this element" href="#edea.kicad.pcb.common.RenderCache.polygons" x-intersect.margin.0%.0%.-70%.0%="activeSection = '#edea.kicad.pcb.common.RenderCache.polygons'">
- kicad_expr_tag_name: ClassVar[Literal['render_cache']] = 'render_cache' $el.setAttribute('data-tooltip', 'Copy link to this element'), 2000)" aria-label="Copy link to this element" class="headerlink" data-tooltip="Copy link to this element" href="#edea.kicad.pcb.common.RenderCache.kicad_expr_tag_name" x-intersect.margin.0%.0%.-70%.0%="activeSection = '#edea.kicad.pcb.common.RenderCache.kicad_expr_tag_name'">
- class edea.kicad.pcb.common.BaseTextBox(locked: bool = False, text: str = '', start: tuple[float, float] | None = None, end: tuple[float, float] | None = None, pts: ~edea.kicad.common.Pts | None = None, layer: ~typing.Literal['F.Cu', 'In1.Cu', 'In2.Cu', 'In3.Cu', 'In4.Cu', 'In5.Cu', 'In6.Cu', 'In7.Cu', 'In8.Cu', 'In9.Cu', 'In10.Cu', 'In11.Cu', 'In12.Cu', 'In13.Cu', 'In14.Cu', 'In15.Cu', 'In16.Cu', 'In17.Cu', 'In18.Cu', 'In19.Cu', 'In20.Cu', 'In21.Cu', 'In22.Cu', 'In23.Cu', 'In24.Cu', 'In25.Cu', 'In26.Cu', 'In27.Cu', 'In28.Cu', 'In29.Cu', 'In30.Cu', 'B.Cu', 'B.Adhes', 'F.Adhes', 'B.Paste', 'F.Paste', 'B.SilkS', 'F.SilkS', 'B.Mask', 'F.Mask', 'Dwgs.User', 'Cmts.User', 'Eco1.User', 'Eco2.User', 'Edge.Cuts', 'F.CrtYd', 'B.CrtYd', 'F.Fab', 'B.Fab', 'User.1', 'User.2', 'User.3', 'User.4', 'User.5', 'User.6', 'User.7', 'User.8', 'User.9', 'Margin', 'Rescue'] = 'F.Cu', effects: ~edea.kicad.common.Effects = <factory>, render_cache: ~edea.kicad.pcb.common.RenderCache | None = None, angle: float | None = None, stroke: ~edea.kicad.common.Stroke | None = None, hide: bool = False, border: bool | None = None, tstamp: ~uuid.UUID | None = None, uuid: ~uuid.UUID | None = None) $el.setAttribute('data-tooltip', 'Copy link to this element'), 2000)" aria-label="Copy link to this element" class="headerlink" data-tooltip="Copy link to this element" href="#edea.kicad.pcb.common.BaseTextBox" x-intersect.margin.0%.0%.-70%.0%="activeSection = '#edea.kicad.pcb.common.BaseTextBox'">
Bases:
KicadPcbExpr
A base textbox element within a KiCad PCB file, providing a foundation for various text objects.
- Parameters:
locked – Whether the text box is locked for editing or not.
text – The text content of the box.
start – The starting X-Y coordinates of the text box.
end – The ending X-Y coordinates of the text box.
pts – The reference to a Pts object defining the text box outline.
layer – The canonical layer the text box resides on.
effects – Reference to an Effects object defining text effects.
render_cache – Reference to a RenderCache element for potentially cached rendering.
angle – The rotation angle for the text box.
stroke – Reference to a stroke object defining the text outline style.
hide – Whether the text box is hidden or not.
border – Whether the text box has a border or not.
tstamp – The unique identifier (UUID) for the text box element.
uuid – The unique identifier (UUID) for the text box element.
Note
The tstamp field got renamed to uuid in 20240108 (KiCad 8).
- start: tuple[float, float] | None = None $el.setAttribute('data-tooltip', 'Copy link to this element'), 2000)" aria-label="Copy link to this element" class="headerlink" data-tooltip="Copy link to this element" href="#edea.kicad.pcb.common.BaseTextBox.start" x-intersect.margin.0%.0%.-70%.0%="activeSection = '#edea.kicad.pcb.common.BaseTextBox.start'">
- end: tuple[float, float] | None = None $el.setAttribute('data-tooltip', 'Copy link to this element'), 2000)" aria-label="Copy link to this element" class="headerlink" data-tooltip="Copy link to this element" href="#edea.kicad.pcb.common.BaseTextBox.end" x-intersect.margin.0%.0%.-70%.0%="activeSection = '#edea.kicad.pcb.common.BaseTextBox.end'">
- pts: Pts | None = None $el.setAttribute('data-tooltip', 'Copy link to this element'), 2000)" aria-label="Copy link to this element" class="headerlink" data-tooltip="Copy link to this element" href="#edea.kicad.pcb.common.BaseTextBox.pts" x-intersect.margin.0%.0%.-70%.0%="activeSection = '#edea.kicad.pcb.common.BaseTextBox.pts'">
- layer: Literal['F.Cu', 'In1.Cu', 'In2.Cu', 'In3.Cu', 'In4.Cu', 'In5.Cu', 'In6.Cu', 'In7.Cu', 'In8.Cu', 'In9.Cu', 'In10.Cu', 'In11.Cu', 'In12.Cu', 'In13.Cu', 'In14.Cu', 'In15.Cu', 'In16.Cu', 'In17.Cu', 'In18.Cu', 'In19.Cu', 'In20.Cu', 'In21.Cu', 'In22.Cu', 'In23.Cu', 'In24.Cu', 'In25.Cu', 'In26.Cu', 'In27.Cu', 'In28.Cu', 'In29.Cu', 'In30.Cu', 'B.Cu', 'B.Adhes', 'F.Adhes', 'B.Paste', 'F.Paste', 'B.SilkS', 'F.SilkS', 'B.Mask', 'F.Mask', 'Dwgs.User', 'Cmts.User', 'Eco1.User', 'Eco2.User', 'Edge.Cuts', 'F.CrtYd', 'B.CrtYd', 'F.Fab', 'B.Fab', 'User.1', 'User.2', 'User.3', 'User.4', 'User.5', 'User.6', 'User.7', 'User.8', 'User.9', 'Margin', 'Rescue'] = 'F.Cu' $el.setAttribute('data-tooltip', 'Copy link to this element'), 2000)" aria-label="Copy link to this element" class="headerlink" data-tooltip="Copy link to this element" href="#edea.kicad.pcb.common.BaseTextBox.layer" x-intersect.margin.0%.0%.-70%.0%="activeSection = '#edea.kicad.pcb.common.BaseTextBox.layer'">
- effects: Effects $el.setAttribute('data-tooltip', 'Copy link to this element'), 2000)" aria-label="Copy link to this element" class="headerlink" data-tooltip="Copy link to this element" href="#edea.kicad.pcb.common.BaseTextBox.effects" x-intersect.margin.0%.0%.-70%.0%="activeSection = '#edea.kicad.pcb.common.BaseTextBox.effects'">
- render_cache: RenderCache | None = None $el.setAttribute('data-tooltip', 'Copy link to this element'), 2000)" aria-label="Copy link to this element" class="headerlink" data-tooltip="Copy link to this element" href="#edea.kicad.pcb.common.BaseTextBox.render_cache" x-intersect.margin.0%.0%.-70%.0%="activeSection = '#edea.kicad.pcb.common.BaseTextBox.render_cache'">
- stroke: Stroke | None = None $el.setAttribute('data-tooltip', 'Copy link to this element'), 2000)" aria-label="Copy link to this element" class="headerlink" data-tooltip="Copy link to this element" href="#edea.kicad.pcb.common.BaseTextBox.stroke" x-intersect.margin.0%.0%.-70%.0%="activeSection = '#edea.kicad.pcb.common.BaseTextBox.stroke'">
- kicad_expr_tag_name: ClassVar[Literal['base_textbox', 'fp_text_box', 'gr_text_box']] = 'base_textbox' $el.setAttribute('data-tooltip', 'Copy link to this element'), 2000)" aria-label="Copy link to this element" class="headerlink" data-tooltip="Copy link to this element" href="#edea.kicad.pcb.common.BaseTextBox.kicad_expr_tag_name" x-intersect.margin.0%.0%.-70%.0%="activeSection = '#edea.kicad.pcb.common.BaseTextBox.kicad_expr_tag_name'">
- class edea.kicad.pcb.common.Net(number: int, name: str) $el.setAttribute('data-tooltip', 'Copy link to this element'), 2000)" aria-label="Copy link to this element" class="headerlink" data-tooltip="Copy link to this element" href="#edea.kicad.pcb.common.Net" x-intersect.margin.0%.0%.-70%.0%="activeSection = '#edea.kicad.pcb.common.Net'">
Bases:
KicadPcbExpr
A net connection for the pad within a KiCad PCB file.
- Parameters:
number – The number of the net connection.
name – The name of the net connection.
- kicad_expr_tag_name: ClassVar[Literal['net']] = 'net' $el.setAttribute('data-tooltip', 'Copy link to this element'), 2000)" aria-label="Copy link to this element" class="headerlink" data-tooltip="Copy link to this element" href="#edea.kicad.pcb.common.Net.kicad_expr_tag_name" x-intersect.margin.0%.0%.-70%.0%="activeSection = '#edea.kicad.pcb.common.Net.kicad_expr_tag_name'">
- class edea.kicad.pcb.common.Image(at: tuple[float, float], uuid: ~uuid.UUID | None = None, layer: ~typing.Literal['F.Cu', 'In1.Cu', 'In2.Cu', 'In3.Cu', 'In4.Cu', 'In5.Cu', 'In6.Cu', 'In7.Cu', 'In8.Cu', 'In9.Cu', 'In10.Cu', 'In11.Cu', 'In12.Cu', 'In13.Cu', 'In14.Cu', 'In15.Cu', 'In16.Cu', 'In17.Cu', 'In18.Cu', 'In19.Cu', 'In20.Cu', 'In21.Cu', 'In22.Cu', 'In23.Cu', 'In24.Cu', 'In25.Cu', 'In26.Cu', 'In27.Cu', 'In28.Cu', 'In29.Cu', 'In30.Cu', 'B.Cu', 'B.Adhes', 'F.Adhes', 'B.Paste', 'F.Paste', 'B.SilkS', 'F.SilkS', 'B.Mask', 'F.Mask', 'Dwgs.User', 'Cmts.User', 'Eco1.User', 'Eco2.User', 'Edge.Cuts', 'F.CrtYd', 'B.CrtYd', 'F.Fab', 'B.Fab', 'User.1', 'User.2', 'User.3', 'User.4', 'User.5', 'User.6', 'User.7', 'User.8', 'User.9', 'Margin', 'Rescue'] = 'F.Cu', scale: float | None = None, data: list[str] = <factory>, locked: bool | None = None) $el.setAttribute('data-tooltip', 'Copy link to this element'), 2000)" aria-label="Copy link to this element" class="headerlink" data-tooltip="Copy link to this element" href="#edea.kicad.pcb.common.Image" x-intersect.margin.0%.0%.-70%.0%="activeSection = '#edea.kicad.pcb.common.Image'">
Bases:
KicadPcbExpr
An embedded image within a KiCad PCB file.
- Parameters:
at – The X-Y coordinates of the image.
uuid – The unique identifier (UUID) for the image element.
layer – The associated board layer of the image using one canonical layer name.
scale – The scale factor of the image..
data – The image data in the portable network graphics format (PNG) encoded with MIME type base64.
locked – Whether the image is locked for editing or not.
Note
The fields uuid and locked were added in 20240108 (KiCad 8).
- layer: Literal['F.Cu', 'In1.Cu', 'In2.Cu', 'In3.Cu', 'In4.Cu', 'In5.Cu', 'In6.Cu', 'In7.Cu', 'In8.Cu', 'In9.Cu', 'In10.Cu', 'In11.Cu', 'In12.Cu', 'In13.Cu', 'In14.Cu', 'In15.Cu', 'In16.Cu', 'In17.Cu', 'In18.Cu', 'In19.Cu', 'In20.Cu', 'In21.Cu', 'In22.Cu', 'In23.Cu', 'In24.Cu', 'In25.Cu', 'In26.Cu', 'In27.Cu', 'In28.Cu', 'In29.Cu', 'In30.Cu', 'B.Cu', 'B.Adhes', 'F.Adhes', 'B.Paste', 'F.Paste', 'B.SilkS', 'F.SilkS', 'B.Mask', 'F.Mask', 'Dwgs.User', 'Cmts.User', 'Eco1.User', 'Eco2.User', 'Edge.Cuts', 'F.CrtYd', 'B.CrtYd', 'F.Fab', 'B.Fab', 'User.1', 'User.2', 'User.3', 'User.4', 'User.5', 'User.6', 'User.7', 'User.8', 'User.9', 'Margin', 'Rescue'] = 'F.Cu' $el.setAttribute('data-tooltip', 'Copy link to this element'), 2000)" aria-label="Copy link to this element" class="headerlink" data-tooltip="Copy link to this element" href="#edea.kicad.pcb.common.Image.layer" x-intersect.margin.0%.0%.-70%.0%="activeSection = '#edea.kicad.pcb.common.Image.layer'">
- kicad_expr_tag_name: ClassVar[Literal['image']] = 'image' $el.setAttribute('data-tooltip', 'Copy link to this element'), 2000)" aria-label="Copy link to this element" class="headerlink" data-tooltip="Copy link to this element" href="#edea.kicad.pcb.common.Image.kicad_expr_tag_name" x-intersect.margin.0%.0%.-70%.0%="activeSection = '#edea.kicad.pcb.common.Image.kicad_expr_tag_name'">
- class edea.kicad.pcb.common.TearDrops(best_length_ratio: float, max_length: float, best_width_ratio: float, max_width: float, curve_points: int, filter_ratio: float, enabled: bool, allow_two_segments: bool, prefer_zone_connections: bool) $el.setAttribute('data-tooltip', 'Copy link to this element'), 2000)" aria-label="Copy link to this element" class="headerlink" data-tooltip="Copy link to this element" href="#edea.kicad.pcb.common.TearDrops" x-intersect.margin.0%.0%.-70%.0%="activeSection = '#edea.kicad.pcb.common.TearDrops'">
Bases:
KicadPcbExpr
The teardrops settings within a KiCad PCB file.
- Parameters:
best_length_ratio – The best length ratio for the teardrops.
max_length – The maximum length for the teardrops.
best_width_ratio – The best width ratio for the teardrops.
max_width – The maximum width for the teardrops.
curve_points – The number of curve points for the teardrops.
filter_ratio – The filter ratio for the teardrops.
enabled – Whether the teardrops are enabled or not.
allow_two_segments – Whether two segments are allowed for the teardrops or not.
prefer_zone_connections – Whether zone connections are preferred for the teardrops or not.
- kicad_expr_tag_name: ClassVar[Literal['teardrops']] = 'teardrops' $el.setAttribute('data-tooltip', 'Copy link to this element'), 2000)" aria-label="Copy link to this element" class="headerlink" data-tooltip="Copy link to this element" href="#edea.kicad.pcb.common.TearDrops.kicad_expr_tag_name" x-intersect.margin.0%.0%.-70%.0%="activeSection = '#edea.kicad.pcb.common.TearDrops.kicad_expr_tag_name'">
- class edea.kicad.pcb.common.LayerKnockout(name: Literal['F.Cu', 'In1.Cu', 'In2.Cu', 'In3.Cu', 'In4.Cu', 'In5.Cu', 'In6.Cu', 'In7.Cu', 'In8.Cu', 'In9.Cu', 'In10.Cu', 'In11.Cu', 'In12.Cu', 'In13.Cu', 'In14.Cu', 'In15.Cu', 'In16.Cu', 'In17.Cu', 'In18.Cu', 'In19.Cu', 'In20.Cu', 'In21.Cu', 'In22.Cu', 'In23.Cu', 'In24.Cu', 'In25.Cu', 'In26.Cu', 'In27.Cu', 'In28.Cu', 'In29.Cu', 'In30.Cu', 'B.Cu', 'B.Adhes', 'F.Adhes', 'B.Paste', 'F.Paste', 'B.SilkS', 'F.SilkS', 'B.Mask', 'F.Mask', 'Dwgs.User', 'Cmts.User', 'Eco1.User', 'Eco2.User', 'Edge.Cuts', 'F.CrtYd', 'B.CrtYd', 'F.Fab', 'B.Fab', 'User.1', 'User.2', 'User.3', 'User.4', 'User.5', 'User.6', 'User.7', 'User.8', 'User.9', 'Margin', 'Rescue'] = 'F.Cu', knockout: bool = False) $el.setAttribute('data-tooltip', 'Copy link to this element'), 2000)" aria-label="Copy link to this element" class="headerlink" data-tooltip="Copy link to this element" href="#edea.kicad.pcb.common.LayerKnockout" x-intersect.margin.0%.0%.-70%.0%="activeSection = '#edea.kicad.pcb.common.LayerKnockout'">
Bases:
KicadPcbExpr
Indicates that the text in a layer should be knocked out.
- param name:
The name of the copper layer to be knocked out
- param knockout:
Whether the layer is knocked out or not.
- cvar kicad_expr_tag_name:
The KiCad expression tag name for this element (“layer”).
- name: Literal['F.Cu', 'In1.Cu', 'In2.Cu', 'In3.Cu', 'In4.Cu', 'In5.Cu', 'In6.Cu', 'In7.Cu', 'In8.Cu', 'In9.Cu', 'In10.Cu', 'In11.Cu', 'In12.Cu', 'In13.Cu', 'In14.Cu', 'In15.Cu', 'In16.Cu', 'In17.Cu', 'In18.Cu', 'In19.Cu', 'In20.Cu', 'In21.Cu', 'In22.Cu', 'In23.Cu', 'In24.Cu', 'In25.Cu', 'In26.Cu', 'In27.Cu', 'In28.Cu', 'In29.Cu', 'In30.Cu', 'B.Cu', 'B.Adhes', 'F.Adhes', 'B.Paste', 'F.Paste', 'B.SilkS', 'F.SilkS', 'B.Mask', 'F.Mask', 'Dwgs.User', 'Cmts.User', 'Eco1.User', 'Eco2.User', 'Edge.Cuts', 'F.CrtYd', 'B.CrtYd', 'F.Fab', 'B.Fab', 'User.1', 'User.2', 'User.3', 'User.4', 'User.5', 'User.6', 'User.7', 'User.8', 'User.9', 'Margin', 'Rescue'] = 'F.Cu' $el.setAttribute('data-tooltip', 'Copy link to this element'), 2000)" aria-label="Copy link to this element" class="headerlink" data-tooltip="Copy link to this element" href="#edea.kicad.pcb.common.LayerKnockout.name" x-intersect.margin.0%.0%.-70%.0%="activeSection = '#edea.kicad.pcb.common.LayerKnockout.name'">
- kicad_expr_tag_name: ClassVar[Literal['layer']] = 'layer' $el.setAttribute('data-tooltip', 'Copy link to this element'), 2000)" aria-label="Copy link to this element" class="headerlink" data-tooltip="Copy link to this element" href="#edea.kicad.pcb.common.LayerKnockout.kicad_expr_tag_name" x-intersect.margin.0%.0%.-70%.0%="activeSection = '#edea.kicad.pcb.common.LayerKnockout.kicad_expr_tag_name'">
- class edea.kicad.pcb.common.Property(key: str, value: str, at: Position | None = None, layer: LayerKnockout | None = None, effects: Effects | None = None, render_cache: RenderCache | None = None, uuid: UUID | None = None, hide: bool | None = None, unlocked: bool | None = None) $el.setAttribute('data-tooltip', 'Copy link to this element'), 2000)" aria-label="Copy link to this element" class="headerlink" data-tooltip="Copy link to this element" href="#edea.kicad.pcb.common.Property" x-intersect.margin.0%.0%.-70%.0%="activeSection = '#edea.kicad.pcb.common.Property'">
Bases:
KicadPcbExpr
A property element within a KiCad PCB file.
- Parameters:
key – The name of the property and must be unique.
value – The value of the property.
- at: Position | None = None $el.setAttribute('data-tooltip', 'Copy link to this element'), 2000)" aria-label="Copy link to this element" class="headerlink" data-tooltip="Copy link to this element" href="#edea.kicad.pcb.common.Property.at" x-intersect.margin.0%.0%.-70%.0%="activeSection = '#edea.kicad.pcb.common.Property.at'">
- layer: LayerKnockout | None = None $el.setAttribute('data-tooltip', 'Copy link to this element'), 2000)" aria-label="Copy link to this element" class="headerlink" data-tooltip="Copy link to this element" href="#edea.kicad.pcb.common.Property.layer" x-intersect.margin.0%.0%.-70%.0%="activeSection = '#edea.kicad.pcb.common.Property.layer'">
- effects: Effects | None = None $el.setAttribute('data-tooltip', 'Copy link to this element'), 2000)" aria-label="Copy link to this element" class="headerlink" data-tooltip="Copy link to this element" href="#edea.kicad.pcb.common.Property.effects" x-intersect.margin.0%.0%.-70%.0%="activeSection = '#edea.kicad.pcb.common.Property.effects'">
- render_cache: RenderCache | None = None $el.setAttribute('data-tooltip', 'Copy link to this element'), 2000)" aria-label="Copy link to this element" class="headerlink" data-tooltip="Copy link to this element" href="#edea.kicad.pcb.common.Property.render_cache" x-intersect.margin.0%.0%.-70%.0%="activeSection = '#edea.kicad.pcb.common.Property.render_cache'">
- kicad_expr_tag_name: ClassVar[Literal['property']] = 'property' $el.setAttribute('data-tooltip', 'Copy link to this element'), 2000)" aria-label="Copy link to this element" class="headerlink" data-tooltip="Copy link to this element" href="#edea.kicad.pcb.common.Property.kicad_expr_tag_name" x-intersect.margin.0%.0%.-70%.0%="activeSection = '#edea.kicad.pcb.common.Property.kicad_expr_tag_name'">