@@ -191,8 +191,12 @@ def path_to_3d_segment_with_codes(path, zs=0, zdir='z'):
191191 zs = np .broadcast_to (zs , len (path ))
192192 pathsegs = path .iter_segments (simplify = False , curves = False )
193193 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 = []
196200 return seg3d , list (codes )
197201
198202
@@ -204,7 +208,10 @@ def paths_to_3d_segments_with_codes(paths, zs=0, zdir='z'):
204208 zs = np .broadcast_to (zs , len (paths ))
205209 segments_codes = [path_to_3d_segment_with_codes (path , pathz , zdir )
206210 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 = [], []
208215 return list (segments ), list (codes )
209216
210217
0 commit comments