Skip to content
Open
Show file tree
Hide file tree
Changes from 1 commit
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() / 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