@@ -191,8 +191,12 @@ def path_to_3d_segment_with_codes(path, zs=0, zdir='z'):
191
191
zs = np .broadcast_to (zs , len (path ))
192
192
pathsegs = path .iter_segments (simplify = False , curves = False )
193
193
seg_codes = [((x , y , z ), code ) for ((x , y ), code ), z in zip (pathsegs , zs )]
194
- seg , codes = zip (* seg_codes )
195
- seg3d = [juggle_axes (x , y , z , zdir ) for (x , y , z ) in seg ]
194
+ if seg_codes :
195
+ seg , codes = zip (* seg_codes )
196
+ seg3d = [juggle_axes (x , y , z , zdir ) for (x , y , z ) in seg ]
197
+ else :
198
+ seg3d = []
199
+ codes = []
196
200
return seg3d , list (codes )
197
201
198
202
@@ -204,7 +208,10 @@ def paths_to_3d_segments_with_codes(paths, zs=0, zdir='z'):
204
208
zs = np .broadcast_to (zs , len (paths ))
205
209
segments_codes = [path_to_3d_segment_with_codes (path , pathz , zdir )
206
210
for path , pathz in zip (paths , zs )]
207
- segments , codes = zip (* segments_codes )
211
+ if segments_codes :
212
+ segments , codes = zip (* segments_codes )
213
+ else :
214
+ segments , codes = [], []
208
215
return list (segments ), list (codes )
209
216
210
217
0 commit comments