Clear area and mouse coordinates
This commit is contained in:
parent
0bd00464de
commit
e0d93910a6
29
camlib.py
29
camlib.py
|
@ -52,6 +52,31 @@ class Geometry:
|
|||
return 0
|
||||
bounds = self.bounds()
|
||||
return (bounds[2]-bounds[0], bounds[3]-bounds[1])
|
||||
|
||||
def get_empty_area(self, boundary=None):
|
||||
'''
|
||||
Returns the complement of self.solid_geometry within
|
||||
the given boundary polygon. If not specified, it defaults to
|
||||
the rectangular bounding box of self.solid_geometry.
|
||||
'''
|
||||
if boundary == None:
|
||||
boundary = self.solid_geometry.envelope
|
||||
return boundary.difference(g.solid_geometry)
|
||||
|
||||
def clear_polygon(self, polygon, tooldia, overlap = 0.15):
|
||||
'''
|
||||
Creates geometry inside a polygon for a tool to cover
|
||||
the whole area.
|
||||
'''
|
||||
poly_cuts = [polygon.buffer(-tooldia/2.0)]
|
||||
while(1):
|
||||
polygon = poly_cuts[-1].buffer(-tooldia*(1-overlap))
|
||||
if polygon.area > 0:
|
||||
poly_cuts.append(polygon)
|
||||
else:
|
||||
break
|
||||
return poly_cuts
|
||||
|
||||
|
||||
class Gerber (Geometry):
|
||||
def __init__(self):
|
||||
|
@ -131,6 +156,10 @@ class Gerber (Geometry):
|
|||
return None
|
||||
|
||||
def parse_file(self, filename):
|
||||
'''
|
||||
Calls Gerber.parse_lines() with array of lines
|
||||
read from the given file.
|
||||
'''
|
||||
gfile = open(filename, 'r')
|
||||
gstr = gfile.readlines()
|
||||
gfile.close()
|
||||
|
|
BIN
camlib.pyc
BIN
camlib.pyc
Binary file not shown.
13
cirkuix.py
13
cirkuix.py
|
@ -19,7 +19,7 @@ class App:
|
|||
self.builder = Gtk.Builder()
|
||||
self.builder.add_from_file(self.gladefile)
|
||||
self.window = self.builder.get_object("window1")
|
||||
|
||||
self.positionLabel = self.builder.get_object("label3")
|
||||
#self.drawingarea = self.builder.get_object("drawingarea1")
|
||||
#self.drawingarea.connect("draw", self.cairopaint)
|
||||
|
||||
|
@ -46,6 +46,8 @@ class App:
|
|||
|
||||
canvas = FigureCanvas(f) # a Gtk.DrawingArea
|
||||
canvas.set_size_request(600,400)
|
||||
canvas.mpl_connect('button_press_event', self.on_click_over_plot)
|
||||
canvas.mpl_connect('motion_notify_event', self.on_mouse_move_over_plot)
|
||||
self.grid.attach(canvas,1,1,600,400)
|
||||
|
||||
def cairopaint(self, da, cr):
|
||||
|
@ -123,6 +125,13 @@ class App:
|
|||
canvas.set_size_request(600,400)
|
||||
self.grid.attach(canvas,1,1,600,400)
|
||||
self.window.show_all()
|
||||
|
||||
|
||||
def on_mouse_move_over_plot(self, event):
|
||||
self.positionLabel.set_label("X: %.4f Y: %.4f"%(event.xdata, event.ydata))
|
||||
|
||||
def on_click_over_plot(self, event):
|
||||
print 'button=%d, x=%d, y=%d, xdata=%f, ydata=%f'%(
|
||||
event.button, event.x, event.y, event.xdata, event.ydata)
|
||||
|
||||
|
||||
app = App()
|
||||
|
|
31
cirkuix.ui
31
cirkuix.ui
|
@ -320,6 +320,21 @@
|
|||
<child>
|
||||
<placeholder/>
|
||||
</child>
|
||||
<child>
|
||||
<placeholder/>
|
||||
</child>
|
||||
<child>
|
||||
<placeholder/>
|
||||
</child>
|
||||
<child>
|
||||
<placeholder/>
|
||||
</child>
|
||||
<child>
|
||||
<placeholder/>
|
||||
</child>
|
||||
<child>
|
||||
<placeholder/>
|
||||
</child>
|
||||
</object>
|
||||
</child>
|
||||
</object>
|
||||
|
@ -369,6 +384,22 @@
|
|||
<property name="position">1</property>
|
||||
</packing>
|
||||
</child>
|
||||
<child>
|
||||
<object class="GtkLabel" id="label3">
|
||||
<property name="width_request">200</property>
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">False</property>
|
||||
<property name="margin_left">5</property>
|
||||
<property name="margin_right">5</property>
|
||||
<property name="xalign">0</property>
|
||||
<property name="label" translatable="yes">X: 0.0 Y: 0.0</property>
|
||||
</object>
|
||||
<packing>
|
||||
<property name="expand">False</property>
|
||||
<property name="fill">True</property>
|
||||
<property name="position">2</property>
|
||||
</packing>
|
||||
</child>
|
||||
</object>
|
||||
<packing>
|
||||
<property name="expand">False</property>
|
||||
|
|
|
@ -0,0 +1,783 @@
|
|||
G04 (created by PCBNEW (2013-07-07 BZR 4022)-stable) date 11/20/2013 5:37:08 PM*
|
||||
%MOIN*%
|
||||
G04 Gerber Fmt 3.4, Leading zero omitted, Abs format*
|
||||
%FSLAX34Y34*%
|
||||
G01*
|
||||
G70*
|
||||
G90*
|
||||
G04 APERTURE LIST*
|
||||
%ADD10C,0.00590551*%
|
||||
%ADD11C,0.015*%
|
||||
%ADD12R,0.0393X0.0629*%
|
||||
%ADD13R,0.2125X0.244*%
|
||||
%ADD14R,0.02X0.03*%
|
||||
%ADD15R,0.144X0.08*%
|
||||
%ADD16R,0.04X0.08*%
|
||||
%ADD17R,0.0394X0.0354*%
|
||||
%ADD18R,0.0354X0.0394*%
|
||||
%ADD19R,0.063X0.071*%
|
||||
%ADD20R,0.071X0.063*%
|
||||
%ADD21C,0.1*%
|
||||
%ADD22R,0.08X0.08*%
|
||||
%ADD23C,0.08*%
|
||||
%ADD24C,0.04*%
|
||||
%ADD25C,0.02*%
|
||||
G04 APERTURE END LIST*
|
||||
G54D10*
|
||||
G54D11*
|
||||
X27233Y12376D02*
|
||||
X27728Y12376D01*
|
||||
X27461Y12071D01*
|
||||
X27576Y12071D01*
|
||||
X27652Y12033D01*
|
||||
X27690Y11995D01*
|
||||
X27728Y11919D01*
|
||||
X27728Y11728D01*
|
||||
X27690Y11652D01*
|
||||
X27652Y11614D01*
|
||||
X27576Y11576D01*
|
||||
X27347Y11576D01*
|
||||
X27271Y11614D01*
|
||||
X27233Y11652D01*
|
||||
X24021Y12300D02*
|
||||
X24059Y12338D01*
|
||||
X24135Y12376D01*
|
||||
X24326Y12376D01*
|
||||
X24402Y12338D01*
|
||||
X24440Y12300D01*
|
||||
X24478Y12223D01*
|
||||
X24478Y12147D01*
|
||||
X24440Y12033D01*
|
||||
X23983Y11576D01*
|
||||
X24478Y11576D01*
|
||||
X4578Y11701D02*
|
||||
X4121Y11701D01*
|
||||
X4350Y11701D02*
|
||||
X4350Y12501D01*
|
||||
X4273Y12386D01*
|
||||
X4197Y12310D01*
|
||||
X4121Y12272D01*
|
||||
X569Y1526D02*
|
||||
X1064Y1526D01*
|
||||
X797Y1221D01*
|
||||
X911Y1221D01*
|
||||
X988Y1183D01*
|
||||
X1026Y1145D01*
|
||||
X1064Y1069D01*
|
||||
X1064Y878D01*
|
||||
X1026Y802D01*
|
||||
X988Y764D01*
|
||||
X911Y726D01*
|
||||
X683Y726D01*
|
||||
X607Y764D01*
|
||||
X569Y802D01*
|
||||
X1407Y802D02*
|
||||
X1445Y764D01*
|
||||
X1407Y726D01*
|
||||
X1369Y764D01*
|
||||
X1407Y802D01*
|
||||
X1407Y726D01*
|
||||
X1711Y1526D02*
|
||||
X2207Y1526D01*
|
||||
X1940Y1221D01*
|
||||
X2054Y1221D01*
|
||||
X2130Y1183D01*
|
||||
X2169Y1145D01*
|
||||
X2207Y1069D01*
|
||||
X2207Y878D01*
|
||||
X2169Y802D01*
|
||||
X2130Y764D01*
|
||||
X2054Y726D01*
|
||||
X1826Y726D01*
|
||||
X1750Y764D01*
|
||||
X1711Y802D01*
|
||||
X2435Y1526D02*
|
||||
X2702Y726D01*
|
||||
X2969Y1526D01*
|
||||
X1672Y14551D02*
|
||||
X1291Y14551D01*
|
||||
X1253Y14170D01*
|
||||
X1291Y14208D01*
|
||||
X1367Y14246D01*
|
||||
X1558Y14246D01*
|
||||
X1634Y14208D01*
|
||||
X1672Y14170D01*
|
||||
X1710Y14094D01*
|
||||
X1710Y13903D01*
|
||||
X1672Y13827D01*
|
||||
X1634Y13789D01*
|
||||
X1558Y13751D01*
|
||||
X1367Y13751D01*
|
||||
X1291Y13789D01*
|
||||
X1253Y13827D01*
|
||||
X1939Y14551D02*
|
||||
X2205Y13751D01*
|
||||
X2472Y14551D01*
|
||||
X26525Y14651D02*
|
||||
X26677Y14651D01*
|
||||
X26753Y14613D01*
|
||||
X26829Y14536D01*
|
||||
X26867Y14384D01*
|
||||
X26867Y14117D01*
|
||||
X26829Y13965D01*
|
||||
X26753Y13889D01*
|
||||
X26677Y13851D01*
|
||||
X26525Y13851D01*
|
||||
X26448Y13889D01*
|
||||
X26372Y13965D01*
|
||||
X26334Y14117D01*
|
||||
X26334Y14384D01*
|
||||
X26372Y14536D01*
|
||||
X26448Y14613D01*
|
||||
X26525Y14651D01*
|
||||
X27210Y14651D02*
|
||||
X27210Y14003D01*
|
||||
X27248Y13927D01*
|
||||
X27286Y13889D01*
|
||||
X27363Y13851D01*
|
||||
X27515Y13851D01*
|
||||
X27591Y13889D01*
|
||||
X27629Y13927D01*
|
||||
X27667Y14003D01*
|
||||
X27667Y14651D01*
|
||||
X27934Y14651D02*
|
||||
X28391Y14651D01*
|
||||
X28163Y13851D02*
|
||||
X28163Y14651D01*
|
||||
X17800Y13451D02*
|
||||
X17952Y13451D01*
|
||||
X18028Y13413D01*
|
||||
X18104Y13336D01*
|
||||
X18142Y13184D01*
|
||||
X18142Y12917D01*
|
||||
X18104Y12765D01*
|
||||
X18028Y12689D01*
|
||||
X17952Y12651D01*
|
||||
X17800Y12651D01*
|
||||
X17723Y12689D01*
|
||||
X17647Y12765D01*
|
||||
X17609Y12917D01*
|
||||
X17609Y13184D01*
|
||||
X17647Y13336D01*
|
||||
X17723Y13413D01*
|
||||
X17800Y13451D01*
|
||||
X18485Y13451D02*
|
||||
X18485Y12803D01*
|
||||
X18523Y12727D01*
|
||||
X18561Y12689D01*
|
||||
X18638Y12651D01*
|
||||
X18790Y12651D01*
|
||||
X18866Y12689D01*
|
||||
X18904Y12727D01*
|
||||
X18942Y12803D01*
|
||||
X18942Y13451D01*
|
||||
X19209Y13451D02*
|
||||
X19666Y13451D01*
|
||||
X19438Y12651D02*
|
||||
X19438Y13451D01*
|
||||
X8900Y13326D02*
|
||||
X9052Y13326D01*
|
||||
X9128Y13288D01*
|
||||
X9204Y13211D01*
|
||||
X9242Y13059D01*
|
||||
X9242Y12792D01*
|
||||
X9204Y12640D01*
|
||||
X9128Y12564D01*
|
||||
X9052Y12526D01*
|
||||
X8900Y12526D01*
|
||||
X8823Y12564D01*
|
||||
X8747Y12640D01*
|
||||
X8709Y12792D01*
|
||||
X8709Y13059D01*
|
||||
X8747Y13211D01*
|
||||
X8823Y13288D01*
|
||||
X8900Y13326D01*
|
||||
X9585Y13326D02*
|
||||
X9585Y12678D01*
|
||||
X9623Y12602D01*
|
||||
X9661Y12564D01*
|
||||
X9738Y12526D01*
|
||||
X9890Y12526D01*
|
||||
X9966Y12564D01*
|
||||
X10004Y12602D01*
|
||||
X10042Y12678D01*
|
||||
X10042Y13326D01*
|
||||
X10309Y13326D02*
|
||||
X10766Y13326D01*
|
||||
X10538Y12526D02*
|
||||
X10538Y13326D01*
|
||||
X28880Y726D02*
|
||||
X28880Y1526D01*
|
||||
X29261Y726D02*
|
||||
X29261Y1526D01*
|
||||
X29719Y726D01*
|
||||
X29719Y1526D01*
|
||||
X23705Y2126D02*
|
||||
X23705Y2926D01*
|
||||
X24086Y2126D02*
|
||||
X24086Y2926D01*
|
||||
X24544Y2126D01*
|
||||
X24544Y2926D01*
|
||||
X3355Y3126D02*
|
||||
X3355Y3926D01*
|
||||
X3736Y3126D02*
|
||||
X3736Y3926D01*
|
||||
X4194Y3126D01*
|
||||
X4194Y3926D01*
|
||||
G54D12*
|
||||
X12278Y8961D03*
|
||||
X14072Y8961D03*
|
||||
G54D13*
|
||||
X13175Y11834D03*
|
||||
G54D14*
|
||||
X5850Y7450D03*
|
||||
X6600Y7450D03*
|
||||
X5850Y8450D03*
|
||||
X6225Y7450D03*
|
||||
X6600Y8450D03*
|
||||
X21075Y7400D03*
|
||||
X21825Y7400D03*
|
||||
X21075Y8400D03*
|
||||
X21450Y7400D03*
|
||||
X21825Y8400D03*
|
||||
G54D15*
|
||||
X15962Y2837D03*
|
||||
G54D16*
|
||||
X15962Y5437D03*
|
||||
X15062Y5437D03*
|
||||
X16862Y5437D03*
|
||||
G54D17*
|
||||
X23150Y6429D03*
|
||||
X23150Y7021D03*
|
||||
G54D18*
|
||||
X20546Y5800D03*
|
||||
X19954Y5800D03*
|
||||
G54D17*
|
||||
X22825Y7829D03*
|
||||
X22825Y8421D03*
|
||||
X21825Y9404D03*
|
||||
X21825Y9996D03*
|
||||
G54D18*
|
||||
X19579Y9325D03*
|
||||
X20171Y9325D03*
|
||||
X4454Y9325D03*
|
||||
X5046Y9325D03*
|
||||
G54D17*
|
||||
X6600Y9629D03*
|
||||
X6600Y10221D03*
|
||||
X7600Y8004D03*
|
||||
X7600Y8596D03*
|
||||
X8000Y6429D03*
|
||||
X8000Y7021D03*
|
||||
G54D18*
|
||||
X5171Y5850D03*
|
||||
X4579Y5850D03*
|
||||
G54D19*
|
||||
X12650Y7900D03*
|
||||
X13750Y7900D03*
|
||||
G54D20*
|
||||
X11025Y9750D03*
|
||||
X11025Y10850D03*
|
||||
X13737Y4387D03*
|
||||
X13737Y5487D03*
|
||||
G54D19*
|
||||
X16962Y6787D03*
|
||||
X15862Y6787D03*
|
||||
G54D17*
|
||||
X20175Y7804D03*
|
||||
X20175Y8396D03*
|
||||
X6225Y5854D03*
|
||||
X6225Y6446D03*
|
||||
G54D18*
|
||||
X16608Y7712D03*
|
||||
X16016Y7712D03*
|
||||
X23421Y9375D03*
|
||||
X22829Y9375D03*
|
||||
X24296Y7850D03*
|
||||
X23704Y7850D03*
|
||||
G54D17*
|
||||
X21450Y5804D03*
|
||||
X21450Y6396D03*
|
||||
G54D18*
|
||||
X9146Y8000D03*
|
||||
X8554Y8000D03*
|
||||
X8196Y9625D03*
|
||||
X7604Y9625D03*
|
||||
G54D17*
|
||||
X10100Y10104D03*
|
||||
X10100Y10696D03*
|
||||
X5050Y7854D03*
|
||||
X5050Y8446D03*
|
||||
G54D14*
|
||||
X28950Y6850D03*
|
||||
X29700Y6850D03*
|
||||
X28950Y7850D03*
|
||||
X29325Y6850D03*
|
||||
X29700Y7850D03*
|
||||
G54D21*
|
||||
X21825Y11925D03*
|
||||
X22825Y12925D03*
|
||||
X20825Y12925D03*
|
||||
X20825Y10925D03*
|
||||
X22825Y10925D03*
|
||||
X21450Y3475D03*
|
||||
X22450Y4475D03*
|
||||
X20450Y4475D03*
|
||||
X20450Y2475D03*
|
||||
X22450Y2475D03*
|
||||
X29325Y3475D03*
|
||||
X30325Y4475D03*
|
||||
X28325Y4475D03*
|
||||
X28325Y2475D03*
|
||||
X30325Y2475D03*
|
||||
X29700Y11925D03*
|
||||
X30700Y12925D03*
|
||||
X28700Y12925D03*
|
||||
X28700Y10925D03*
|
||||
X30700Y10925D03*
|
||||
G54D17*
|
||||
X27425Y8571D03*
|
||||
X27425Y7979D03*
|
||||
G54D22*
|
||||
X1375Y8325D03*
|
||||
G54D23*
|
||||
X1375Y9325D03*
|
||||
X1375Y10325D03*
|
||||
G54D22*
|
||||
X16375Y9625D03*
|
||||
G54D23*
|
||||
X16375Y10625D03*
|
||||
X16375Y11625D03*
|
||||
G54D22*
|
||||
X26375Y8425D03*
|
||||
G54D23*
|
||||
X26375Y9425D03*
|
||||
X26375Y10425D03*
|
||||
G54D22*
|
||||
X10225Y2475D03*
|
||||
G54D23*
|
||||
X11225Y2475D03*
|
||||
G54D22*
|
||||
X28375Y8850D03*
|
||||
G54D21*
|
||||
X10400Y6275D03*
|
||||
X25125Y5450D03*
|
||||
X6600Y11925D03*
|
||||
X7600Y12925D03*
|
||||
X5600Y12925D03*
|
||||
X5600Y10925D03*
|
||||
X7600Y10925D03*
|
||||
X6225Y3475D03*
|
||||
X7225Y4475D03*
|
||||
X5225Y4475D03*
|
||||
X5225Y2475D03*
|
||||
X7225Y2475D03*
|
||||
G54D17*
|
||||
X28225Y7254D03*
|
||||
X28225Y7846D03*
|
||||
G54D23*
|
||||
X12375Y2475D03*
|
||||
X30075Y6475D03*
|
||||
X28225Y6775D03*
|
||||
X20350Y7075D03*
|
||||
X22300Y6950D03*
|
||||
X7100Y6900D03*
|
||||
X19475Y5175D03*
|
||||
X24325Y9375D03*
|
||||
X25175Y7850D03*
|
||||
X17525Y7600D03*
|
||||
X13625Y3325D03*
|
||||
X11025Y8900D03*
|
||||
X10000Y8000D03*
|
||||
X8875Y9625D03*
|
||||
X4950Y7275D03*
|
||||
X3825Y5850D03*
|
||||
G54D24*
|
||||
X15962Y2837D02*
|
||||
X15962Y1162D01*
|
||||
X15962Y1162D02*
|
||||
X15975Y1150D01*
|
||||
X16375Y9625D02*
|
||||
X17450Y9625D01*
|
||||
X18650Y8425D02*
|
||||
X18650Y1150D01*
|
||||
X17450Y9625D02*
|
||||
X18650Y8425D01*
|
||||
X26375Y8425D02*
|
||||
X26375Y7775D01*
|
||||
X26350Y7800D02*
|
||||
X26375Y7775D01*
|
||||
X26375Y7775D02*
|
||||
X26975Y7175D01*
|
||||
X25700Y1150D02*
|
||||
X18650Y1150D01*
|
||||
X18650Y1150D02*
|
||||
X16925Y1150D01*
|
||||
X15975Y1150D02*
|
||||
X16925Y1150D01*
|
||||
X26975Y2425D02*
|
||||
X25700Y1150D01*
|
||||
X26975Y7175D02*
|
||||
X26975Y2425D01*
|
||||
X15962Y2837D02*
|
||||
X15962Y5437D01*
|
||||
X13175Y1150D02*
|
||||
X13550Y1150D01*
|
||||
X1375Y8325D02*
|
||||
X1375Y3774D01*
|
||||
X4000Y1150D02*
|
||||
X13175Y1150D01*
|
||||
X1375Y3774D02*
|
||||
X4000Y1150D01*
|
||||
X13550Y1150D02*
|
||||
X15975Y1150D01*
|
||||
G54D25*
|
||||
X16016Y7712D02*
|
||||
X15862Y7558D01*
|
||||
X15862Y7558D02*
|
||||
X15862Y6787D01*
|
||||
G54D24*
|
||||
X15962Y5437D02*
|
||||
X15962Y6112D01*
|
||||
X15862Y6212D02*
|
||||
X15862Y6787D01*
|
||||
X15962Y6112D02*
|
||||
X15862Y6212D01*
|
||||
X13175Y11834D02*
|
||||
X13175Y14200D01*
|
||||
X13150Y14225D02*
|
||||
X13150Y14200D01*
|
||||
X13175Y14200D02*
|
||||
X13150Y14225D01*
|
||||
X16375Y11625D02*
|
||||
X16400Y11650D01*
|
||||
X16400Y14175D02*
|
||||
X16400Y14200D01*
|
||||
X16400Y11650D02*
|
||||
X16400Y14175D01*
|
||||
X26375Y10425D02*
|
||||
X26375Y12750D01*
|
||||
X9775Y14200D02*
|
||||
X13150Y14200D01*
|
||||
X1375Y11475D02*
|
||||
X4100Y14200D01*
|
||||
X4100Y14200D02*
|
||||
X9775Y14200D01*
|
||||
X1375Y10325D02*
|
||||
X1375Y11475D01*
|
||||
X13150Y14200D02*
|
||||
X15025Y14200D01*
|
||||
X26375Y12750D02*
|
||||
X24925Y14200D01*
|
||||
X24925Y14200D02*
|
||||
X16400Y14200D01*
|
||||
X16400Y14200D02*
|
||||
X14825Y14200D01*
|
||||
X11025Y10850D02*
|
||||
X12191Y10850D01*
|
||||
X12191Y10850D02*
|
||||
X13175Y11834D01*
|
||||
G54D25*
|
||||
X10100Y10696D02*
|
||||
X10871Y10696D01*
|
||||
X10871Y10696D02*
|
||||
X11025Y10850D01*
|
||||
X6225Y3399D02*
|
||||
X6225Y5854D01*
|
||||
X6225Y5854D02*
|
||||
X5175Y5854D01*
|
||||
X5175Y5854D02*
|
||||
X5171Y5850D01*
|
||||
X21450Y3799D02*
|
||||
X21450Y5804D01*
|
||||
X20546Y5800D02*
|
||||
X21446Y5800D01*
|
||||
X21446Y5800D02*
|
||||
X21450Y5804D01*
|
||||
X6600Y10221D02*
|
||||
X6600Y11575D01*
|
||||
X21825Y11525D02*
|
||||
X21825Y9996D01*
|
||||
X8000Y7021D02*
|
||||
X8000Y7200D01*
|
||||
X7600Y7600D02*
|
||||
X7600Y8004D01*
|
||||
X8000Y7200D02*
|
||||
X7600Y7600D01*
|
||||
X7600Y8004D02*
|
||||
X8550Y8004D01*
|
||||
X8550Y8004D02*
|
||||
X8554Y8000D01*
|
||||
X10400Y6275D02*
|
||||
X9875Y6275D01*
|
||||
X9721Y6429D02*
|
||||
X9875Y6275D01*
|
||||
X9721Y6429D02*
|
||||
X8000Y6429D01*
|
||||
X6225Y6446D02*
|
||||
X6554Y6446D01*
|
||||
X7579Y6429D02*
|
||||
X8000Y6429D01*
|
||||
X7375Y6225D02*
|
||||
X7579Y6429D01*
|
||||
X6775Y6225D02*
|
||||
X7375Y6225D01*
|
||||
X6554Y6446D02*
|
||||
X6775Y6225D01*
|
||||
X8000Y6429D02*
|
||||
X8000Y6275D01*
|
||||
X8000Y6275D02*
|
||||
X8000Y6429D01*
|
||||
X6225Y6446D02*
|
||||
X6225Y7450D01*
|
||||
X6600Y9629D02*
|
||||
X6600Y8450D01*
|
||||
X7604Y9625D02*
|
||||
X6604Y9625D01*
|
||||
X6604Y9625D02*
|
||||
X6600Y9629D01*
|
||||
X7600Y8596D02*
|
||||
X7600Y9621D01*
|
||||
X7600Y9621D02*
|
||||
X7604Y9625D01*
|
||||
X23150Y7021D02*
|
||||
X23150Y7275D01*
|
||||
X22825Y7600D02*
|
||||
X22825Y7829D01*
|
||||
X23150Y7275D02*
|
||||
X22825Y7600D01*
|
||||
X22825Y7829D02*
|
||||
X23683Y7829D01*
|
||||
X23683Y7829D02*
|
||||
X23704Y7850D01*
|
||||
X24725Y6050D02*
|
||||
X25125Y5650D01*
|
||||
X24346Y6429D02*
|
||||
X24725Y6050D01*
|
||||
X23150Y6429D02*
|
||||
X24346Y6429D01*
|
||||
X25125Y5650D02*
|
||||
X25125Y5450D01*
|
||||
X21450Y6396D02*
|
||||
X21679Y6396D01*
|
||||
X23150Y6425D02*
|
||||
X23150Y6429D01*
|
||||
X22775Y6425D02*
|
||||
X23150Y6425D01*
|
||||
X22600Y6250D02*
|
||||
X22775Y6425D01*
|
||||
X21825Y6250D02*
|
||||
X22600Y6250D01*
|
||||
X21679Y6396D02*
|
||||
X21825Y6250D01*
|
||||
X21450Y7400D02*
|
||||
X21450Y6396D01*
|
||||
X21825Y8400D02*
|
||||
X21825Y9404D01*
|
||||
X21825Y9404D02*
|
||||
X21854Y9375D01*
|
||||
X21854Y9375D02*
|
||||
X22829Y9375D01*
|
||||
X22829Y9375D02*
|
||||
X22825Y9371D01*
|
||||
X22825Y9371D02*
|
||||
X22825Y8421D01*
|
||||
G54D24*
|
||||
X1375Y9325D02*
|
||||
X4454Y9325D01*
|
||||
X5050Y8725D02*
|
||||
X5050Y9321D01*
|
||||
X5050Y9321D02*
|
||||
X5046Y9325D01*
|
||||
X5050Y8446D02*
|
||||
X5050Y8725D01*
|
||||
X5850Y8725D02*
|
||||
X5850Y8450D01*
|
||||
X5050Y8725D02*
|
||||
X5850Y8725D01*
|
||||
X19579Y9325D02*
|
||||
X19400Y9325D01*
|
||||
X18100Y10625D02*
|
||||
X19400Y9325D01*
|
||||
X18100Y10625D02*
|
||||
X16375Y10625D01*
|
||||
X20171Y9325D02*
|
||||
X20171Y8400D01*
|
||||
X20171Y8400D02*
|
||||
X21075Y8400D01*
|
||||
X26375Y9425D02*
|
||||
X27050Y9425D01*
|
||||
X27425Y8625D02*
|
||||
X27425Y8571D01*
|
||||
X27425Y9050D02*
|
||||
X27425Y8625D01*
|
||||
X27050Y9425D02*
|
||||
X27425Y9050D01*
|
||||
G54D25*
|
||||
X28375Y8850D02*
|
||||
X28375Y7925D01*
|
||||
X28375Y7925D02*
|
||||
X28225Y7846D01*
|
||||
G54D24*
|
||||
X28225Y7846D02*
|
||||
X28921Y7846D01*
|
||||
X28925Y7850D02*
|
||||
X28950Y7850D01*
|
||||
X28921Y7846D02*
|
||||
X28925Y7850D01*
|
||||
X28225Y7846D02*
|
||||
X27454Y7846D01*
|
||||
X27425Y7875D02*
|
||||
X27425Y7979D01*
|
||||
X27454Y7846D02*
|
||||
X27425Y7875D01*
|
||||
X10225Y2475D02*
|
||||
X10225Y2950D01*
|
||||
X12175Y5550D02*
|
||||
X12162Y5550D01*
|
||||
X12175Y4900D02*
|
||||
X12175Y5550D01*
|
||||
X10225Y2950D02*
|
||||
X12175Y4900D01*
|
||||
X13750Y7900D02*
|
||||
X14072Y8222D01*
|
||||
X12162Y5487D02*
|
||||
X12162Y5550D01*
|
||||
X12162Y5550D02*
|
||||
X12162Y6362D01*
|
||||
X14072Y7147D02*
|
||||
X14072Y8961D01*
|
||||
X13650Y6725D02*
|
||||
X14072Y7147D01*
|
||||
X12525Y6725D02*
|
||||
X13650Y6725D01*
|
||||
X12162Y6362D02*
|
||||
X12525Y6725D01*
|
||||
X12162Y5487D02*
|
||||
X13737Y5487D01*
|
||||
X15062Y5437D02*
|
||||
X13787Y5437D01*
|
||||
X13787Y5437D02*
|
||||
X13737Y5487D01*
|
||||
X14072Y8222D02*
|
||||
X14072Y8961D01*
|
||||
X11225Y2475D02*
|
||||
X12375Y2475D01*
|
||||
G54D25*
|
||||
X29700Y6850D02*
|
||||
X29800Y6750D01*
|
||||
X29800Y6750D02*
|
||||
X29700Y6850D01*
|
||||
G54D24*
|
||||
X29825Y6725D02*
|
||||
X30100Y6450D01*
|
||||
X28225Y6800D02*
|
||||
X28800Y6800D01*
|
||||
X28850Y6800D02*
|
||||
X28825Y6775D01*
|
||||
X28800Y6800D02*
|
||||
X28850Y6800D01*
|
||||
X28225Y7254D02*
|
||||
X28225Y6800D01*
|
||||
X28225Y6800D02*
|
||||
X28225Y6800D01*
|
||||
X28225Y6800D02*
|
||||
X28225Y6775D01*
|
||||
G54D25*
|
||||
X21075Y7400D02*
|
||||
X20900Y7400D01*
|
||||
G54D24*
|
||||
X20900Y7400D02*
|
||||
X20625Y7400D01*
|
||||
G54D25*
|
||||
X5850Y7450D02*
|
||||
X5725Y7450D01*
|
||||
G54D24*
|
||||
X5050Y7475D02*
|
||||
X5075Y7450D01*
|
||||
X5075Y7450D02*
|
||||
X5725Y7450D01*
|
||||
X5050Y7475D02*
|
||||
X5050Y7854D01*
|
||||
X20625Y7400D02*
|
||||
X20350Y7125D01*
|
||||
X20350Y7125D02*
|
||||
X20350Y7075D01*
|
||||
G54D25*
|
||||
X21825Y7400D02*
|
||||
X21850Y7400D01*
|
||||
X21850Y7400D02*
|
||||
X22300Y6950D01*
|
||||
X6600Y7450D02*
|
||||
X6625Y7450D01*
|
||||
X7125Y6925D02*
|
||||
X7100Y6900D01*
|
||||
X7150Y6925D02*
|
||||
X7125Y6925D01*
|
||||
X6625Y7450D02*
|
||||
X7150Y6925D01*
|
||||
G54D24*
|
||||
X19954Y5800D02*
|
||||
X19479Y5179D01*
|
||||
X19479Y5179D02*
|
||||
X19475Y5175D01*
|
||||
X23421Y9375D02*
|
||||
X24325Y9375D01*
|
||||
X24296Y7850D02*
|
||||
X25175Y7850D01*
|
||||
X16962Y6787D02*
|
||||
X16962Y7037D01*
|
||||
X16962Y7037D02*
|
||||
X17525Y7600D01*
|
||||
X13737Y4387D02*
|
||||
X13737Y3437D01*
|
||||
X13737Y3437D02*
|
||||
X13625Y3325D01*
|
||||
X11025Y9750D02*
|
||||
X11025Y8900D01*
|
||||
X9146Y8000D02*
|
||||
X10000Y8000D01*
|
||||
X8196Y9625D02*
|
||||
X8875Y9625D01*
|
||||
X5050Y7854D02*
|
||||
X5050Y7375D01*
|
||||
X5050Y7375D02*
|
||||
X4950Y7275D01*
|
||||
X4579Y5850D02*
|
||||
X3825Y5850D01*
|
||||
G54D25*
|
||||
X16608Y7712D02*
|
||||
X16962Y7358D01*
|
||||
X16962Y7358D02*
|
||||
X16962Y6787D01*
|
||||
G54D24*
|
||||
X16862Y5437D02*
|
||||
X16962Y5537D01*
|
||||
X16962Y5537D02*
|
||||
X16962Y6787D01*
|
||||
X12278Y8961D02*
|
||||
X12278Y8272D01*
|
||||
X12278Y8272D02*
|
||||
X12650Y7900D01*
|
||||
X11025Y9750D02*
|
||||
X11489Y9750D01*
|
||||
X11489Y9750D02*
|
||||
X12278Y8961D01*
|
||||
G54D25*
|
||||
X10100Y10104D02*
|
||||
X10454Y9750D01*
|
||||
X10454Y9750D02*
|
||||
X11025Y9750D01*
|
||||
G54D24*
|
||||
X20175Y7804D02*
|
||||
X20175Y7750D01*
|
||||
X20525Y7400D02*
|
||||
X20625Y7400D01*
|
||||
X20175Y7750D02*
|
||||
X20525Y7400D01*
|
||||
G54D25*
|
||||
X29325Y6850D02*
|
||||
X29325Y3475D01*
|
||||
X29700Y11925D02*
|
||||
X29700Y7850D01*
|
||||
M02*
|
|
@ -0,0 +1,77 @@
|
|||
M48
|
||||
;DRILL file {Pcbnew (2013-07-07 BZR 4022)-stable} date 11/20/2013 1:52:19 PM
|
||||
;FORMAT={2:4/ absolute / inch / keep zeros}
|
||||
FMAT,2
|
||||
INCH,TZ
|
||||
T1C0.030
|
||||
T2C0.040
|
||||
T3C0.060
|
||||
%
|
||||
G90
|
||||
G05
|
||||
M72
|
||||
T1
|
||||
X010400Y006275
|
||||
X025125Y005450
|
||||
T2
|
||||
X001375Y010325
|
||||
X001375Y009325
|
||||
X001375Y008325
|
||||
X003825Y005850
|
||||
X004950Y007275
|
||||
X007100Y006900
|
||||
X008875Y009625
|
||||
X010000Y008000
|
||||
X010225Y002475
|
||||
X011025Y008900
|
||||
X011225Y002475
|
||||
X012375Y002475
|
||||
X013625Y003325
|
||||
X016375Y011625
|
||||
X016375Y010625
|
||||
X016375Y009625
|
||||
X017525Y007600
|
||||
X019475Y005175
|
||||
X020350Y007075
|
||||
X022300Y006950
|
||||
X024325Y009375
|
||||
X025175Y007850
|
||||
X026375Y010425
|
||||
X026375Y009425
|
||||
X026375Y008425
|
||||
X028225Y006775
|
||||
X028375Y008850
|
||||
X030075Y006475
|
||||
T3
|
||||
X005225Y004475
|
||||
X005225Y002475
|
||||
X005600Y012925
|
||||
X005600Y010925
|
||||
X006225Y003475
|
||||
X006600Y011925
|
||||
X007225Y004475
|
||||
X007225Y002475
|
||||
X007600Y012925
|
||||
X007600Y010925
|
||||
X020450Y004475
|
||||
X020450Y002475
|
||||
X020825Y012925
|
||||
X020825Y010925
|
||||
X021450Y003475
|
||||
X021825Y011925
|
||||
X022450Y004475
|
||||
X022450Y002475
|
||||
X022825Y012925
|
||||
X022825Y010925
|
||||
X028325Y004475
|
||||
X028325Y002475
|
||||
X028700Y012925
|
||||
X028700Y010925
|
||||
X029325Y003475
|
||||
X029700Y011925
|
||||
X030325Y004475
|
||||
X030325Y002475
|
||||
X030700Y012925
|
||||
X030700Y010925
|
||||
T0
|
||||
M30
|
|
@ -0,0 +1,48 @@
|
|||
# -*- coding: utf-8 -*-
|
||||
"""
|
||||
Created on Sun Jan 05 13:30:47 2014
|
||||
|
||||
@author: jpcaram
|
||||
"""
|
||||
|
||||
import os
|
||||
os.chdir('../')
|
||||
|
||||
from camlib import *
|
||||
#from matplotlib.figure import Figure
|
||||
from matplotlib import pyplot
|
||||
|
||||
# Gerber. To see if the Excellon is correct
|
||||
project_dir = "tests/"
|
||||
gerber_filename = project_dir + "KiCad_Squarer-F_Cu.gtl"
|
||||
g = Gerber()
|
||||
g.parse_file(gerber_filename)
|
||||
g.create_geometry()
|
||||
|
||||
excellon_filename = project_dir + "KiCad_Squarer.drl"
|
||||
ex = Excellon()
|
||||
ex.parse_file(excellon_filename)
|
||||
ex.create_geometry()
|
||||
|
||||
#fig = Figure()
|
||||
fig = pyplot.figure()
|
||||
ax = fig.add_subplot(111)
|
||||
ax.set_aspect(1)
|
||||
|
||||
# Plot gerber
|
||||
for geo in g.solid_geometry:
|
||||
x, y = geo.exterior.coords.xy
|
||||
plot(x, y, 'k-')
|
||||
for ints in geo.interiors:
|
||||
x, y = ints.coords.xy
|
||||
ax.plot(x, y, 'k-')
|
||||
|
||||
# Plot excellon
|
||||
for geo in ex.solid_geometry:
|
||||
x, y = geo.exterior.coords.xy
|
||||
plot(x, y, 'r-')
|
||||
for ints in geo.interiors:
|
||||
x, y = ints.coords.xy
|
||||
ax.plot(x, y, 'g-')
|
||||
|
||||
fig.show()
|
Loading…
Reference in New Issue