Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions kicad/pcbnew/board.py
Original file line number Diff line number Diff line change
Expand Up @@ -258,9 +258,9 @@ def add_arc(self, center, radius, start_angle, stop_angle,
drawing.Arc(center, radius, start_angle, stop_angle,
layer, width, board=self))

def add_text(self, position, text, layer='F.SilkS', size=1.0, thickness=0.15):
def add_text(self, position, text, layer='F.SilkS', size=1.0, thickness=0.15, mirrored=False):
return self.add(
drawing.TextPCB(position, text, layer, size, thickness, board=self))
drawing.TextPCB(position, text, layer, size, thickness, mirrored=mirrored, board=self))

def remove(self, element, permanent=False):
''' Makes it so Ctrl-Z works.
Expand Down
23 changes: 20 additions & 3 deletions kicad/pcbnew/drawing.py
Original file line number Diff line number Diff line change
Expand Up @@ -290,14 +290,15 @@ def __init__(self, *args, **kwargs):


class TextPCB(Drawing, HasPosition):
def __init__(self, position, text=None, layer='F.SilkS', size=1.0, thickness=0.15, board=None):
def __init__(self, position, text=None, layer='F.SilkS', size=1.0, thickness=0.15, mirrored=False, board=None):
self._obj = SWIGtype.Text(board and board.native_obj)
self.position = position
if text:
self.text = text
self.layer = layer
self.size = size
self.thickness = thickness
self.mirrored = mirrored

@property
def text(self):
Expand All @@ -307,13 +308,29 @@ def text(self):
def text(self, value):
return self._obj.SetText(value)

@property
def mirrored(self):
return self._obj.IsMirrored()

@mirrored.setter
def mirrored(self, value):
return self._obj.SetMirrored(value)

@property
def thickness(self):
return float(self._obj.GetThickness()) / units.DEFAULT_UNIT_IUS
if SWIG_version >= 7:
thickness = self._obj.GetTextThickness()
else:
thickness = self._obj.GetThickness()
return float(thickness) / units.DEFAULT_UNIT_IUS

@thickness.setter
def thickness(self, value):
return self._obj.SetThickness(int(value * units.DEFAULT_UNIT_IUS))
thickness = int(value * units.DEFAULT_UNIT_IUS)

if SWIG_version >= 7:
return self._obj.SetTextThickness(thickness)
return self._obj.SetThickness(thickness)

@property
def size(self):
Expand Down