@@ -93,6 +93,7 @@ def __init__(self):
93
93
self .filled_polygon = []
94
94
self .filled_segments = []
95
95
self .name = ''
96
+ self .island = False
96
97
97
98
# Most of these don't need to be handled
98
99
self .metadata = []
@@ -139,6 +140,9 @@ def From_PCB(self, input):
139
140
elif item [0 ] == 'keepout' :
140
141
self .keepout = item [1 ]
141
142
143
+ elif item [0 ] == 'island' :
144
+ self .island = True
145
+
142
146
elif item [0 ] == 'name' :
143
147
self .name = item [1 ]
144
148
@@ -170,6 +174,8 @@ def To_PCB(self):
170
174
pcb .append (['layer' , self .layer ])
171
175
if len (self .layers ) > 0 :
172
176
pcb .append (['layers' , self .layers ])
177
+ if self .island :
178
+ pcb .append (['island' ])
173
179
if self .tstamp :
174
180
pcb .append (['tstamp' , self .tstamp ])
175
181
if self .hatch :
@@ -270,6 +276,10 @@ def To_SVG(self):
270
276
if self .keepout != '' :
271
277
keepout = 'keepout="' + self .keepout + '" '
272
278
279
+ island = ''
280
+ if self .island == True :
281
+ island = 'island="True" '
282
+
273
283
name = ''
274
284
if self .name != '' :
275
285
name = 'name="' + self .name + '" '
@@ -290,6 +300,7 @@ def To_SVG(self):
290
300
parameters += filled_areas_thickness
291
301
parameters += fill
292
302
parameters += keepout
303
+ parameters += island
293
304
parameters += name
294
305
parameters += 'type="zone">'
295
306
parameters += '</path>'
@@ -347,6 +358,8 @@ def From_SVG(self, tag, path):
347
358
self .filled_areas_thickness = tag ['filled_areas_thickness' ]
348
359
if tag .has_attr ('fill' ):
349
360
self .fill = tag ['fill' ]
361
+ if tag .has_attr ('island' ):
362
+ self .fill = True
350
363
if tag .has_attr ('keepout' ):
351
364
self .keepout = tag ['keepout' ]
352
365
if tag .has_attr ('name' ):
0 commit comments