@@ -512,14 +512,24 @@ def draw(self, renderer):
512512 if clippath_trans is not None :
513513 clippath_trans = clippath_trans .frozen ()
514514
515- assert transform .is_affine
515+ if not transform .is_affine :
516+ coordinates = self ._coordinates .reshape (
517+ (self ._coordinates .shape [0 ] *
518+ self ._coordinates .shape [1 ],
519+ 2 ))
520+ coordinates = transform .transform (coordinates )
521+ coordinates = coordinates .reshape (self ._coordinates .shape )
522+ transform = transforms .IdentityTransform ()
523+ else :
524+ coordinates = self ._coordinates
525+
516526 if not transOffset .is_affine :
517527 offsets = transOffset .transform_non_affine (offsets )
518528 transOffset = transOffset .get_affine ()
519529
520530 renderer .draw_quad_mesh (
521531 transform .frozen (), self .clipbox , clippath , clippath_trans ,
522- self ._meshWidth , self ._meshHeight , self . _coordinates ,
532+ self ._meshWidth , self ._meshHeight , coordinates ,
523533 offsets , transOffset , self ._facecolors , self ._antialiased ,
524534 self ._showedges )
525535 renderer .close_group (self .__class__ .__name__ )
0 commit comments