Add net names
This commit is contained in:
parent
c8132f19a7
commit
eb5337f415
3 changed files with 2550 additions and 2593 deletions
File diff suppressed because it is too large
Load diff
|
|
@ -58,6 +58,9 @@ class MeshPluginMainDialog(mesh_plugin_dialog.MainDialog):
|
|||
|
||||
self.nets = { str(wxs) for wxs, netinfo in board.GetNetsByName().items() }
|
||||
self.update_net_label(None)
|
||||
|
||||
self.Fit()
|
||||
|
||||
for i in range(pcbnew.PCB_LAYER_ID_COUNT):
|
||||
name = board.GetLayerName(i)
|
||||
self.m_layerChoice.Append(name)
|
||||
|
|
@ -163,7 +166,8 @@ class MeshPluginMainDialog(mesh_plugin_dialog.MainDialog):
|
|||
if self.tearup_confirm_dialog.ShowModal() == wx.ID_YES:
|
||||
raise AbortError()
|
||||
|
||||
self.generate_mesh_backend(mask, anchor, warn=warn, settings=settings)
|
||||
nets = list(islice(self.net_names(), settings.num_traces))
|
||||
self.generate_mesh_backend(mask, anchor, nets=nets, warn=warn, settings=settings)
|
||||
|
||||
except GeneratorError as e:
|
||||
return wx.MessageDialog(self, str(e), "Mesh Generation Error").ShowModal()
|
||||
|
|
@ -180,7 +184,7 @@ class MeshPluginMainDialog(mesh_plugin_dialog.MainDialog):
|
|||
outline_points.append((pcbnew.ToMM(point.x), pcbnew.ToMM(point.y)))
|
||||
yield polygon.Polygon(outline_points)
|
||||
|
||||
def generate_mesh_backend(self, mask, anchor, warn=lambda s: None, settings=GeneratorSettings()):
|
||||
def generate_mesh_backend(self, mask, anchor, nets, warn=lambda s: None, settings=GeneratorSettings()):
|
||||
anchor_outlines = list(self.poly_set_to_shapely(anchor.GetBoundingPoly()))
|
||||
if len(anchor_outlines) == 0:
|
||||
raise GeneratorError('Could not find any outlines for anchor {}'.format(anchor.GetReference()))
|
||||
|
|
@ -287,7 +291,7 @@ class MeshPluginMainDialog(mesh_plugin_dialog.MainDialog):
|
|||
yield from l
|
||||
|
||||
target_layer_id = self.board.GetLayerID('F.Cu') # FIXME make configurable
|
||||
def add_track(segment:geometry.LineString):
|
||||
def add_track(segment:geometry.LineString, net=None):
|
||||
coords = list(segment.coords)
|
||||
for (x1, y1), (x2, y2) in zip(coords, coords[1:]):
|
||||
if (x1, y1) == (x2, y2): # zero-length track due to zero chamfer
|
||||
|
|
@ -298,8 +302,16 @@ class MeshPluginMainDialog(mesh_plugin_dialog.MainDialog):
|
|||
track.SetEnd(pcbnew.wxPoint(pcbnew.FromMM(x2), pcbnew.FromMM(y2)))
|
||||
track.SetWidth(pcbnew.FromMM(settings.trace_width))
|
||||
track.SetLayer(target_layer_id)
|
||||
if net is not None:
|
||||
track.SetNet(net)
|
||||
self.board.Add(track)
|
||||
|
||||
netinfos = []
|
||||
for name in nets:
|
||||
ni = pcbnew.NETINFO_ITEM(self.board, name)
|
||||
self.board.Add(ni)
|
||||
netinfos.append(ni)
|
||||
|
||||
not_visited = { (x, y) for x in range(grid_cols) for y in range(grid_rows) if is_valid(grid[y][x]) }
|
||||
num_to_visit = len(not_visited)
|
||||
track_count = 0
|
||||
|
|
@ -322,7 +334,7 @@ class MeshPluginMainDialog(mesh_plugin_dialog.MainDialog):
|
|||
x, y, key, entry_dir = n_x, n_y, reciprocal(bmask), bmask
|
||||
break
|
||||
else:
|
||||
for segment in Pattern.render(key, settings.num_traces, settings.chamfer):
|
||||
for segment, net in Pattern.render(key, settings.num_traces, settings.chamfer):
|
||||
segment = affinity.scale(segment, grid_cell_width, grid_cell_width, origin=(0, 0))
|
||||
segment = affinity.translate(segment, grid_origin[0] + x*grid_cell_width, grid_origin[1] + y*grid_cell_width)
|
||||
segment = affinity.rotate(segment, settings.mesh_angle, origin=mask.centroid)
|
||||
|
|
@ -345,7 +357,7 @@ class MeshPluginMainDialog(mesh_plugin_dialog.MainDialog):
|
|||
0b1111: '#ff00ff80',
|
||||
}[key]
|
||||
dbg.add(segment, stroke_width=settings.trace_width, color='#ff000000', stroke_color=stroke_color)
|
||||
add_track(segment) # FIXME (works, disabled for debug)
|
||||
add_track(segment, netinfos[net]) # FIXME (works, disabled for debug)
|
||||
track_count += 1
|
||||
if not stack:
|
||||
break
|
||||
|
|
@ -374,23 +386,27 @@ class Pattern:
|
|||
yield from Pattern.LUT[key](n, cd=math.tan(math.pi/8) * cd)
|
||||
|
||||
def draw_I(n, cd):
|
||||
for i in range(2*n):
|
||||
for i in range(n):
|
||||
sp = (i+0.5) * (1/(2*n))
|
||||
yield geometry.LineString([(sp, 0), (sp, 1)])
|
||||
yield geometry.LineString([(sp, 0), (sp, 1)]), i
|
||||
sp = (2*n-1-i+0.5) * (1/(2*n))
|
||||
yield geometry.LineString([(sp, 0), (sp, 1)]), i
|
||||
|
||||
def draw_U(n, cd):
|
||||
pitch = (1/(2*n))
|
||||
cd *= pitch # chamfer depth
|
||||
for i in range(n):
|
||||
sp = (i+0.5) * pitch
|
||||
yield geometry.LineString([(sp, 0), (sp, 1-sp-cd), (sp+cd, 1-sp), (1-sp-cd, 1-sp), (1-sp, 1-sp-cd), (1-sp, 0)])
|
||||
yield geometry.LineString([(sp, 0), (sp, 1-sp-cd), (sp+cd, 1-sp), (1-sp-cd, 1-sp), (1-sp, 1-sp-cd), (1-sp, 0)]), i
|
||||
|
||||
def draw_L(n, cd):
|
||||
pitch = (1/(2*n))
|
||||
cd *= pitch # chamfer depth
|
||||
for i in range(2*n):
|
||||
for i in range(n):
|
||||
sp = (i+0.5) * pitch
|
||||
yield geometry.LineString([(sp, 0), (sp, 1-sp-cd), (sp+cd, 1-sp), (1, 1-sp)])
|
||||
yield geometry.LineString([(sp, 0), (sp, 1-sp-cd), (sp+cd, 1-sp), (1, 1-sp)]), i
|
||||
sp = (2*n-1-i+0.5) * pitch
|
||||
yield geometry.LineString([(sp, 0), (sp, 1-sp-cd), (sp+cd, 1-sp), (1, 1-sp)]), i
|
||||
|
||||
def draw_T(n, cd):
|
||||
pitch = (1/(2*n))
|
||||
|
|
@ -398,25 +414,25 @@ class Pattern:
|
|||
for i in range(n):
|
||||
sp = (i+0.5) * pitch
|
||||
# through line
|
||||
yield geometry.LineString([(0, sp), (1, sp)])
|
||||
yield geometry.LineString([(0, sp), (1, sp)]), i
|
||||
# two corners on the opposite side
|
||||
yield geometry.LineString([(0, 1-sp), (sp-cd, 1-sp), (sp, 1-sp+cd), (sp, 1)])
|
||||
yield geometry.LineString([(1-sp, 1), (1-sp, 1-sp+cd), (1-sp+cd, 1-sp), (1, 1-sp)])
|
||||
yield geometry.LineString([(0, 1-sp), (sp-cd, 1-sp), (sp, 1-sp+cd), (sp, 1)]), i
|
||||
yield geometry.LineString([(1-sp, 1), (1-sp, 1-sp+cd), (1-sp+cd, 1-sp), (1, 1-sp)]), i
|
||||
|
||||
def draw_X(n, cd):
|
||||
pitch = (1/(2*n))
|
||||
cd *= pitch # chamfer depth
|
||||
for i in range(n):
|
||||
sp = (i+0.5) * pitch
|
||||
yield geometry.LineString([(0, sp), (sp-cd, sp), (sp, sp-cd), (sp, 0)])
|
||||
yield geometry.LineString([(1-sp, 0), (1-sp, sp-cd), (1-sp+cd, sp), (1, sp)])
|
||||
yield geometry.LineString([(0, 1-sp), (sp-cd, 1-sp), (sp, 1-sp+cd), (sp, 1)])
|
||||
yield geometry.LineString([(1-sp, 1), (1-sp, 1-sp+cd), (1-sp+cd, 1-sp), (1, 1-sp)])
|
||||
yield geometry.LineString([(0, sp), (sp-cd, sp), (sp, sp-cd), (sp, 0)]), i
|
||||
yield geometry.LineString([(1-sp, 0), (1-sp, sp-cd), (1-sp+cd, sp), (1, sp)]), i
|
||||
yield geometry.LineString([(0, 1-sp), (sp-cd, 1-sp), (sp, 1-sp+cd), (sp, 1)]), i
|
||||
yield geometry.LineString([(1-sp, 1), (1-sp, 1-sp+cd), (1-sp+cd, 1-sp), (1, 1-sp)]), i
|
||||
|
||||
def rotate(pattern, deg):
|
||||
def wrapper(n, *args, **kwargs):
|
||||
for segment in pattern(n, *args, **kwargs):
|
||||
yield affinity.rotate(segment, deg, origin=(0.5, 0.5))
|
||||
for segment, net in pattern(n, *args, **kwargs):
|
||||
yield affinity.rotate(segment, deg, origin=(0.5, 0.5)), net
|
||||
return wrapper
|
||||
|
||||
def raise_error(n, *args, **kwargs):
|
||||
|
|
|
|||
|
|
@ -23,41 +23,39 @@ class MainDialog ( wx.Dialog ):
|
|||
|
||||
bSizer1 = wx.BoxSizer( wx.VERTICAL )
|
||||
|
||||
self.m_scrolledWindow1 = wx.ScrolledWindow( self, wx.ID_ANY, wx.DefaultPosition, wx.DefaultSize, wx.HSCROLL|wx.VSCROLL )
|
||||
self.m_scrolledWindow1.SetScrollRate( 5, 5 )
|
||||
fgSizer1 = wx.FlexGridSizer( 8, 2, 0, 0 )
|
||||
fgSizer1.AddGrowableCol( 1 )
|
||||
fgSizer1.SetFlexibleDirection( wx.BOTH )
|
||||
fgSizer1.SetNonFlexibleGrowMode( wx.FLEX_GROWMODE_SPECIFIED )
|
||||
|
||||
self.m_staticText1 = wx.StaticText( self.m_scrolledWindow1, wx.ID_ANY, u"Mesh net name prefix", wx.DefaultPosition, wx.DefaultSize, 0 )
|
||||
self.m_staticText1 = wx.StaticText( self, wx.ID_ANY, u"Mesh net name prefix", wx.DefaultPosition, wx.DefaultSize, 0 )
|
||||
self.m_staticText1.Wrap( -1 )
|
||||
|
||||
fgSizer1.Add( self.m_staticText1, 1, wx.ALIGN_CENTER_VERTICAL|wx.ALIGN_RIGHT|wx.ALL, 5 )
|
||||
|
||||
self.m_net_prefix = wx.TextCtrl( self.m_scrolledWindow1, wx.ID_ANY, u"mesh", wx.DefaultPosition, wx.DefaultSize, 0 )
|
||||
self.m_net_prefix = wx.TextCtrl( self, wx.ID_ANY, u"mesh", wx.DefaultPosition, wx.DefaultSize, 0 )
|
||||
fgSizer1.Add( self.m_net_prefix, 2, wx.ALIGN_CENTER_VERTICAL|wx.EXPAND, 5 )
|
||||
|
||||
|
||||
fgSizer1.Add( ( 0, 0), 0, wx.EXPAND, 5 )
|
||||
|
||||
self.m_netLabel = wx.StaticText( self.m_scrolledWindow1, wx.ID_ANY, u"0 matching nets", wx.DefaultPosition, wx.DefaultSize, 0 )
|
||||
self.m_netLabel = wx.StaticText( self, wx.ID_ANY, u"0 matching nets", wx.DefaultPosition, wx.DefaultSize, 0 )
|
||||
self.m_netLabel.Wrap( -1 )
|
||||
|
||||
fgSizer1.Add( self.m_netLabel, 0, wx.ALL, 5 )
|
||||
|
||||
self.m_staticText3 = wx.StaticText( self.m_scrolledWindow1, wx.ID_ANY, u"Mesh angle", wx.DefaultPosition, wx.DefaultSize, 0 )
|
||||
self.m_staticText3 = wx.StaticText( self, wx.ID_ANY, u"Mesh angle", wx.DefaultPosition, wx.DefaultSize, 0 )
|
||||
self.m_staticText3.Wrap( -1 )
|
||||
|
||||
fgSizer1.Add( self.m_staticText3, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALIGN_RIGHT|wx.ALL, 5 )
|
||||
|
||||
bSizer4 = wx.BoxSizer( wx.HORIZONTAL )
|
||||
|
||||
self.m_angleSpin = wx.SpinCtrlDouble( self.m_scrolledWindow1, wx.ID_ANY, wx.EmptyString, wx.DefaultPosition, wx.DefaultSize, wx.SP_ARROW_KEYS|wx.SP_WRAP, 0, 360, 0.000000, 1 )
|
||||
self.m_angleSpin = wx.SpinCtrlDouble( self, wx.ID_ANY, wx.EmptyString, wx.DefaultPosition, wx.DefaultSize, wx.SP_ARROW_KEYS|wx.SP_WRAP, 0, 360, 0.000000, 1 )
|
||||
self.m_angleSpin.SetDigits( 2 )
|
||||
bSizer4.Add( self.m_angleSpin, 0, wx.ALL, 5 )
|
||||
|
||||
self.m_staticText5 = wx.StaticText( self.m_scrolledWindow1, wx.ID_ANY, u"° (deg)", wx.DefaultPosition, wx.DefaultSize, 0 )
|
||||
self.m_staticText5 = wx.StaticText( self, wx.ID_ANY, u"° (deg)", wx.DefaultPosition, wx.DefaultSize, 0 )
|
||||
self.m_staticText5.Wrap( -1 )
|
||||
|
||||
bSizer4.Add( self.m_staticText5, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALL, 5 )
|
||||
|
|
@ -65,18 +63,18 @@ class MainDialog ( wx.Dialog ):
|
|||
|
||||
fgSizer1.Add( bSizer4, 1, wx.EXPAND, 5 )
|
||||
|
||||
self.m_staticText4 = wx.StaticText( self.m_scrolledWindow1, wx.ID_ANY, u"Trace width", wx.DefaultPosition, wx.DefaultSize, 0 )
|
||||
self.m_staticText4 = wx.StaticText( self, wx.ID_ANY, u"Trace width", wx.DefaultPosition, wx.DefaultSize, 0 )
|
||||
self.m_staticText4.Wrap( -1 )
|
||||
|
||||
fgSizer1.Add( self.m_staticText4, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALIGN_RIGHT|wx.ALL, 5 )
|
||||
|
||||
bSizer5 = wx.BoxSizer( wx.HORIZONTAL )
|
||||
|
||||
self.m_traceSpin = wx.SpinCtrlDouble( self.m_scrolledWindow1, wx.ID_ANY, wx.EmptyString, wx.DefaultPosition, wx.DefaultSize, wx.SP_ARROW_KEYS, 0, 1000, 0.127, 0.1 )
|
||||
self.m_traceSpin = wx.SpinCtrlDouble( self, wx.ID_ANY, wx.EmptyString, wx.DefaultPosition, wx.DefaultSize, wx.SP_ARROW_KEYS, 0, 1000, 0.127, 0.1 )
|
||||
self.m_traceSpin.SetDigits( 3 )
|
||||
bSizer5.Add( self.m_traceSpin, 0, wx.ALL, 5 )
|
||||
|
||||
self.m_staticText6 = wx.StaticText( self.m_scrolledWindow1, wx.ID_ANY, u"mm", wx.DefaultPosition, wx.DefaultSize, 0 )
|
||||
self.m_staticText6 = wx.StaticText( self, wx.ID_ANY, u"mm", wx.DefaultPosition, wx.DefaultSize, 0 )
|
||||
self.m_staticText6.Wrap( -1 )
|
||||
|
||||
bSizer5.Add( self.m_staticText6, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALL, 5 )
|
||||
|
|
@ -84,18 +82,18 @@ class MainDialog ( wx.Dialog ):
|
|||
|
||||
fgSizer1.Add( bSizer5, 1, wx.EXPAND, 5 )
|
||||
|
||||
self.m_staticText7 = wx.StaticText( self.m_scrolledWindow1, wx.ID_ANY, u"Space width", wx.DefaultPosition, wx.DefaultSize, 0 )
|
||||
self.m_staticText7 = wx.StaticText( self, wx.ID_ANY, u"Space width", wx.DefaultPosition, wx.DefaultSize, 0 )
|
||||
self.m_staticText7.Wrap( -1 )
|
||||
|
||||
fgSizer1.Add( self.m_staticText7, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALIGN_RIGHT|wx.ALL, 5 )
|
||||
|
||||
bSizer6 = wx.BoxSizer( wx.HORIZONTAL )
|
||||
|
||||
self.m_spaceSpin = wx.SpinCtrlDouble( self.m_scrolledWindow1, wx.ID_ANY, wx.EmptyString, wx.DefaultPosition, wx.DefaultSize, wx.SP_ARROW_KEYS, 0, 1000, 0.127, 0.1 )
|
||||
self.m_spaceSpin = wx.SpinCtrlDouble( self, wx.ID_ANY, wx.EmptyString, wx.DefaultPosition, wx.DefaultSize, wx.SP_ARROW_KEYS, 0, 1000, 0.127, 0.1 )
|
||||
self.m_spaceSpin.SetDigits( 3 )
|
||||
bSizer6.Add( self.m_spaceSpin, 0, wx.ALL, 5 )
|
||||
|
||||
self.m_staticText8 = wx.StaticText( self.m_scrolledWindow1, wx.ID_ANY, u"mm", wx.DefaultPosition, wx.DefaultSize, 0 )
|
||||
self.m_staticText8 = wx.StaticText( self, wx.ID_ANY, u"mm", wx.DefaultPosition, wx.DefaultSize, 0 )
|
||||
self.m_staticText8.Wrap( -1 )
|
||||
|
||||
bSizer6.Add( self.m_staticText8, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALL, 5 )
|
||||
|
|
@ -103,18 +101,18 @@ class MainDialog ( wx.Dialog ):
|
|||
|
||||
fgSizer1.Add( bSizer6, 1, wx.EXPAND, 5 )
|
||||
|
||||
self.m_staticText11 = wx.StaticText( self.m_scrolledWindow1, wx.ID_ANY, u"Anchor exit direction", wx.DefaultPosition, wx.DefaultSize, 0 )
|
||||
self.m_staticText11 = wx.StaticText( self, wx.ID_ANY, u"Anchor exit direction", wx.DefaultPosition, wx.DefaultSize, 0 )
|
||||
self.m_staticText11.Wrap( -1 )
|
||||
|
||||
fgSizer1.Add( self.m_staticText11, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALIGN_RIGHT|wx.ALL, 5 )
|
||||
|
||||
bSizer41 = wx.BoxSizer( wx.HORIZONTAL )
|
||||
|
||||
self.m_exitSpin = wx.SpinCtrlDouble( self.m_scrolledWindow1, wx.ID_ANY, wx.EmptyString, wx.DefaultPosition, wx.DefaultSize, wx.SP_ARROW_KEYS|wx.SP_WRAP, 0, 360, 0.000000, 45 )
|
||||
self.m_exitSpin = wx.SpinCtrlDouble( self, wx.ID_ANY, wx.EmptyString, wx.DefaultPosition, wx.DefaultSize, wx.SP_ARROW_KEYS|wx.SP_WRAP, 0, 360, 0.000000, 45 )
|
||||
self.m_exitSpin.SetDigits( 0 )
|
||||
bSizer41.Add( self.m_exitSpin, 0, wx.ALL, 5 )
|
||||
|
||||
self.m_staticText51 = wx.StaticText( self.m_scrolledWindow1, wx.ID_ANY, u"° (deg)", wx.DefaultPosition, wx.DefaultSize, 0 )
|
||||
self.m_staticText51 = wx.StaticText( self, wx.ID_ANY, u"° (deg)", wx.DefaultPosition, wx.DefaultSize, 0 )
|
||||
self.m_staticText51.Wrap( -1 )
|
||||
|
||||
bSizer41.Add( self.m_staticText51, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALL, 5 )
|
||||
|
|
@ -122,45 +120,45 @@ class MainDialog ( wx.Dialog ):
|
|||
|
||||
fgSizer1.Add( bSizer41, 1, wx.EXPAND, 5 )
|
||||
|
||||
self.m_staticText12 = wx.StaticText( self.m_scrolledWindow1, wx.ID_ANY, u"Number of mesh traces", wx.DefaultPosition, wx.DefaultSize, 0 )
|
||||
self.m_staticText12 = wx.StaticText( self, wx.ID_ANY, u"Number of mesh traces", wx.DefaultPosition, wx.DefaultSize, 0 )
|
||||
self.m_staticText12.Wrap( -1 )
|
||||
|
||||
fgSizer1.Add( self.m_staticText12, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALIGN_RIGHT|wx.ALL, 5 )
|
||||
|
||||
self.m_traceCountSpin = wx.SpinCtrl( self.m_scrolledWindow1, wx.ID_ANY, wx.EmptyString, wx.DefaultPosition, wx.DefaultSize, wx.SP_ARROW_KEYS, 0, 1000, 2 )
|
||||
self.m_traceCountSpin = wx.SpinCtrl( self, wx.ID_ANY, wx.EmptyString, wx.DefaultPosition, wx.DefaultSize, wx.SP_ARROW_KEYS, 0, 1000, 2 )
|
||||
fgSizer1.Add( self.m_traceCountSpin, 1, wx.ALL, 5 )
|
||||
|
||||
self.m_staticText13 = wx.StaticText( self.m_scrolledWindow1, wx.ID_ANY, u"Mesh origin offset", wx.DefaultPosition, wx.DefaultSize, 0 )
|
||||
self.m_staticText13 = wx.StaticText( self, wx.ID_ANY, u"Mesh origin offset", wx.DefaultPosition, wx.DefaultSize, 0 )
|
||||
self.m_staticText13.Wrap( -1 )
|
||||
|
||||
fgSizer1.Add( self.m_staticText13, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALIGN_RIGHT|wx.ALL, 5 )
|
||||
|
||||
bSizer9 = wx.BoxSizer( wx.HORIZONTAL )
|
||||
|
||||
self.m_staticText15 = wx.StaticText( self.m_scrolledWindow1, wx.ID_ANY, u"x", wx.DefaultPosition, wx.DefaultSize, 0 )
|
||||
self.m_staticText15 = wx.StaticText( self, wx.ID_ANY, u"x", wx.DefaultPosition, wx.DefaultSize, 0 )
|
||||
self.m_staticText15.Wrap( -1 )
|
||||
|
||||
bSizer9.Add( self.m_staticText15, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALL, 5 )
|
||||
|
||||
self.m_offsetXSpin = wx.SpinCtrlDouble( self.m_scrolledWindow1, wx.ID_ANY, wx.EmptyString, wx.DefaultPosition, wx.DefaultSize, wx.SP_ARROW_KEYS, -100, 100, 0, 0.1 )
|
||||
self.m_offsetXSpin = wx.SpinCtrlDouble( self, wx.ID_ANY, wx.EmptyString, wx.DefaultPosition, wx.DefaultSize, wx.SP_ARROW_KEYS, -100, 100, 0, 0.1 )
|
||||
self.m_offsetXSpin.SetDigits( 3 )
|
||||
bSizer9.Add( self.m_offsetXSpin, 0, wx.ALL, 5 )
|
||||
|
||||
self.m_staticText17 = wx.StaticText( self.m_scrolledWindow1, wx.ID_ANY, u"mm", wx.DefaultPosition, wx.DefaultSize, 0 )
|
||||
self.m_staticText17 = wx.StaticText( self, wx.ID_ANY, u"mm", wx.DefaultPosition, wx.DefaultSize, 0 )
|
||||
self.m_staticText17.Wrap( -1 )
|
||||
|
||||
bSizer9.Add( self.m_staticText17, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALL, 5 )
|
||||
|
||||
self.m_staticText16 = wx.StaticText( self.m_scrolledWindow1, wx.ID_ANY, u"y", wx.DefaultPosition, wx.DefaultSize, 0 )
|
||||
self.m_staticText16 = wx.StaticText( self, wx.ID_ANY, u"y", wx.DefaultPosition, wx.DefaultSize, 0 )
|
||||
self.m_staticText16.Wrap( -1 )
|
||||
|
||||
bSizer9.Add( self.m_staticText16, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALL, 5 )
|
||||
|
||||
self.m_offsetYSpin = wx.SpinCtrlDouble( self.m_scrolledWindow1, wx.ID_ANY, wx.EmptyString, wx.DefaultPosition, wx.DefaultSize, wx.SP_ARROW_KEYS, -100, 100, 0, 0.1 )
|
||||
self.m_offsetYSpin = wx.SpinCtrlDouble( self, wx.ID_ANY, wx.EmptyString, wx.DefaultPosition, wx.DefaultSize, wx.SP_ARROW_KEYS, -100, 100, 0, 0.1 )
|
||||
self.m_offsetYSpin.SetDigits( 3 )
|
||||
bSizer9.Add( self.m_offsetYSpin, 0, wx.ALL, 5 )
|
||||
|
||||
self.m_staticText18 = wx.StaticText( self.m_scrolledWindow1, wx.ID_ANY, u"mm", wx.DefaultPosition, wx.DefaultSize, 0 )
|
||||
self.m_staticText18 = wx.StaticText( self, wx.ID_ANY, u"mm", wx.DefaultPosition, wx.DefaultSize, 0 )
|
||||
self.m_staticText18.Wrap( -1 )
|
||||
|
||||
bSizer9.Add( self.m_staticText18, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALL, 5 )
|
||||
|
|
@ -168,18 +166,18 @@ class MainDialog ( wx.Dialog ):
|
|||
|
||||
fgSizer1.Add( bSizer9, 2, wx.EXPAND, 5 )
|
||||
|
||||
self.m_staticText20 = wx.StaticText( self.m_scrolledWindow1, wx.ID_ANY, u"Chamfer depth", wx.DefaultPosition, wx.DefaultSize, 0 )
|
||||
self.m_staticText20 = wx.StaticText( self, wx.ID_ANY, u"Chamfer depth", wx.DefaultPosition, wx.DefaultSize, 0 )
|
||||
self.m_staticText20.Wrap( -1 )
|
||||
|
||||
fgSizer1.Add( self.m_staticText20, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALIGN_RIGHT|wx.ALL, 5 )
|
||||
|
||||
bSizer10 = wx.BoxSizer( wx.HORIZONTAL )
|
||||
|
||||
self.m_chamferSpin = wx.SpinCtrlDouble( self.m_scrolledWindow1, wx.ID_ANY, wx.EmptyString, wx.DefaultPosition, wx.DefaultSize, wx.SP_ARROW_KEYS, 0, 100, 50, 25 )
|
||||
self.m_chamferSpin = wx.SpinCtrlDouble( self, wx.ID_ANY, wx.EmptyString, wx.DefaultPosition, wx.DefaultSize, wx.SP_ARROW_KEYS, 0, 100, 50, 25 )
|
||||
self.m_chamferSpin.SetDigits( 2 )
|
||||
bSizer10.Add( self.m_chamferSpin, 0, wx.ALL, 5 )
|
||||
|
||||
self.m_staticText21 = wx.StaticText( self.m_scrolledWindow1, wx.ID_ANY, u"% (percent)", wx.DefaultPosition, wx.DefaultSize, 0 )
|
||||
self.m_staticText21 = wx.StaticText( self, wx.ID_ANY, u"% (percent)", wx.DefaultPosition, wx.DefaultSize, 0 )
|
||||
self.m_staticText21.Wrap( -1 )
|
||||
|
||||
bSizer10.Add( self.m_staticText21, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALL, 5 )
|
||||
|
|
@ -187,37 +185,35 @@ class MainDialog ( wx.Dialog ):
|
|||
|
||||
fgSizer1.Add( bSizer10, 1, wx.EXPAND, 5 )
|
||||
|
||||
self.m_staticText22 = wx.StaticText( self.m_scrolledWindow1, wx.ID_ANY, u"Layer", wx.DefaultPosition, wx.DefaultSize, 0 )
|
||||
self.m_staticText22 = wx.StaticText( self, wx.ID_ANY, u"Layer", wx.DefaultPosition, wx.DefaultSize, 0 )
|
||||
self.m_staticText22.Wrap( -1 )
|
||||
|
||||
fgSizer1.Add( self.m_staticText22, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALIGN_RIGHT|wx.ALL, 5 )
|
||||
|
||||
m_layerChoiceChoices = []
|
||||
self.m_layerChoice = wx.Choice( self.m_scrolledWindow1, wx.ID_ANY, wx.DefaultPosition, wx.DefaultSize, m_layerChoiceChoices, 0 )
|
||||
self.m_layerChoice.SetSelection( 0 )
|
||||
self.m_layerChoice = wx.ComboBox( self, wx.ID_ANY, wx.EmptyString, wx.DefaultPosition, wx.DefaultSize, m_layerChoiceChoices, wx.CB_READONLY )
|
||||
fgSizer1.Add( self.m_layerChoice, 0, wx.ALL, 5 )
|
||||
|
||||
self.m_staticText23 = wx.StaticText( self.m_scrolledWindow1, wx.ID_ANY, u"Mesh outline layer", wx.DefaultPosition, wx.DefaultSize, 0 )
|
||||
self.m_staticText23 = wx.StaticText( self, wx.ID_ANY, u"Mesh outline layer", wx.DefaultPosition, wx.DefaultSize, 0 )
|
||||
self.m_staticText23.Wrap( -1 )
|
||||
|
||||
fgSizer1.Add( self.m_staticText23, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALIGN_RIGHT|wx.ALL, 5 )
|
||||
|
||||
m_maskLayerChoiceChoices = []
|
||||
self.m_maskLayerChoice = wx.Choice( self.m_scrolledWindow1, wx.ID_ANY, wx.DefaultPosition, wx.DefaultSize, m_maskLayerChoiceChoices, 0 )
|
||||
self.m_maskLayerChoice.SetSelection( 0 )
|
||||
self.m_maskLayerChoice = wx.ComboBox( self, wx.ID_ANY, wx.EmptyString, wx.DefaultPosition, wx.DefaultSize, m_maskLayerChoiceChoices, wx.CB_READONLY )
|
||||
fgSizer1.Add( self.m_maskLayerChoice, 0, wx.ALL, 5 )
|
||||
|
||||
self.m_staticText24 = wx.StaticText( self.m_scrolledWindow1, wx.ID_ANY, u"Random seed", wx.DefaultPosition, wx.DefaultSize, 0 )
|
||||
self.m_staticText24 = wx.StaticText( self, wx.ID_ANY, u"Random seed", wx.DefaultPosition, wx.DefaultSize, 0 )
|
||||
self.m_staticText24.Wrap( -1 )
|
||||
|
||||
fgSizer1.Add( self.m_staticText24, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALIGN_RIGHT|wx.ALL, 5 )
|
||||
|
||||
bSizer11 = wx.BoxSizer( wx.HORIZONTAL )
|
||||
|
||||
self.m_seedInput = wx.TextCtrl( self.m_scrolledWindow1, wx.ID_ANY, wx.EmptyString, wx.DefaultPosition, wx.DefaultSize, 0 )
|
||||
self.m_seedInput = wx.TextCtrl( self, wx.ID_ANY, wx.EmptyString, wx.DefaultPosition, wx.DefaultSize, 0 )
|
||||
bSizer11.Add( self.m_seedInput, 0, wx.ALL, 5 )
|
||||
|
||||
self.m_staticText25 = wx.StaticText( self.m_scrolledWindow1, wx.ID_ANY, u"Leave empty for random seed", wx.DefaultPosition, wx.DefaultSize, 0 )
|
||||
self.m_staticText25 = wx.StaticText( self, wx.ID_ANY, u"Leave empty for random seed", wx.DefaultPosition, wx.DefaultSize, 0 )
|
||||
self.m_staticText25.Wrap( -1 )
|
||||
|
||||
bSizer11.Add( self.m_staticText25, 0, wx.ALL, 5 )
|
||||
|
|
@ -225,26 +221,26 @@ class MainDialog ( wx.Dialog ):
|
|||
|
||||
fgSizer1.Add( bSizer11, 1, wx.EXPAND, 5 )
|
||||
|
||||
self.m_staticText26 = wx.StaticText( self.m_scrolledWindow1, wx.ID_ANY, u"Anchor footprint designator", wx.DefaultPosition, wx.DefaultSize, 0 )
|
||||
self.m_staticText26 = wx.StaticText( self, wx.ID_ANY, u"Anchor footprint designator", wx.DefaultPosition, wx.DefaultSize, 0 )
|
||||
self.m_staticText26.Wrap( -1 )
|
||||
|
||||
fgSizer1.Add( self.m_staticText26, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALIGN_RIGHT|wx.ALL, 5 )
|
||||
|
||||
self.m_anchorInput = wx.TextCtrl( self.m_scrolledWindow1, wx.ID_ANY, wx.EmptyString, wx.DefaultPosition, wx.DefaultSize, 0 )
|
||||
self.m_anchorInput = wx.TextCtrl( self, wx.ID_ANY, wx.EmptyString, wx.DefaultPosition, wx.DefaultSize, 0 )
|
||||
fgSizer1.Add( self.m_anchorInput, 0, wx.ALL, 5 )
|
||||
|
||||
self.m_staticText28 = wx.StaticText( self.m_scrolledWindow1, wx.ID_ANY, u"Routing randomness", wx.DefaultPosition, wx.DefaultSize, 0 )
|
||||
self.m_staticText28 = wx.StaticText( self, wx.ID_ANY, u"Routing randomness", wx.DefaultPosition, wx.DefaultSize, 0 )
|
||||
self.m_staticText28.Wrap( -1 )
|
||||
|
||||
fgSizer1.Add( self.m_staticText28, 0, wx.ALL, 5 )
|
||||
fgSizer1.Add( self.m_staticText28, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALIGN_RIGHT|wx.ALL, 5 )
|
||||
|
||||
bSizer12 = wx.BoxSizer( wx.HORIZONTAL )
|
||||
|
||||
self.m_randomnessSpin = wx.SpinCtrlDouble( self.m_scrolledWindow1, wx.ID_ANY, wx.EmptyString, wx.DefaultPosition, wx.DefaultSize, wx.SP_ARROW_KEYS, 0, 100, 25, 25 )
|
||||
self.m_randomnessSpin = wx.SpinCtrlDouble( self, wx.ID_ANY, wx.EmptyString, wx.DefaultPosition, wx.DefaultSize, wx.SP_ARROW_KEYS, 0, 100, 25, 25 )
|
||||
self.m_randomnessSpin.SetDigits( 0 )
|
||||
bSizer12.Add( self.m_randomnessSpin, 0, wx.ALL, 5 )
|
||||
|
||||
self.m_staticText211 = wx.StaticText( self.m_scrolledWindow1, wx.ID_ANY, u"% (percent)", wx.DefaultPosition, wx.DefaultSize, 0 )
|
||||
self.m_staticText211 = wx.StaticText( self, wx.ID_ANY, u"% (percent)", wx.DefaultPosition, wx.DefaultSize, 0 )
|
||||
self.m_staticText211.Wrap( -1 )
|
||||
|
||||
bSizer12.Add( self.m_staticText211, 0, wx.ALL, 5 )
|
||||
|
|
@ -253,10 +249,7 @@ class MainDialog ( wx.Dialog ):
|
|||
fgSizer1.Add( bSizer12, 1, wx.EXPAND, 5 )
|
||||
|
||||
|
||||
self.m_scrolledWindow1.SetSizer( fgSizer1 )
|
||||
self.m_scrolledWindow1.Layout()
|
||||
fgSizer1.Fit( self.m_scrolledWindow1 )
|
||||
bSizer1.Add( self.m_scrolledWindow1, 1, wx.EXPAND |wx.ALL, 5 )
|
||||
bSizer1.Add( fgSizer1, 1, wx.EXPAND, 5 )
|
||||
|
||||
bSizer99 = wx.BoxSizer( wx.HORIZONTAL )
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue