(self, renderer)
| 608 | |
| 609 | @martist.allow_rasterization |
| 610 | def draw(self, renderer): |
| 611 | # if not visible, declare victory and return |
| 612 | if not self.get_visible(): |
| 613 | self.stale = False |
| 614 | return |
| 615 | # for empty images, there is nothing to draw! |
| 616 | if self.get_array().size == 0: |
| 617 | self.stale = False |
| 618 | return |
| 619 | # actually render the image. |
| 620 | gc = renderer.new_gc() |
| 621 | self._set_gc_clip(gc) |
| 622 | gc.set_alpha(self._get_scalar_alpha()) |
| 623 | gc.set_url(self.get_url()) |
| 624 | gc.set_gid(self.get_gid()) |
| 625 | if (renderer.option_scale_image() # Renderer supports transform kwarg. |
| 626 | and self._check_unsampled_image() |
| 627 | and self.get_transform().is_affine): |
| 628 | im, l, b, trans = self.make_image(renderer, unsampled=True) |
| 629 | if im is not None: |
| 630 | trans = Affine2D().scale(im.shape[1], im.shape[0]) + trans |
| 631 | renderer.draw_image(gc, l, b, im, trans) |
| 632 | else: |
| 633 | im, l, b, trans = self.make_image( |
| 634 | renderer, renderer.get_image_magnification()) |
| 635 | if im is not None: |
| 636 | renderer.draw_image(gc, l, b, im) |
| 637 | gc.restore() |
| 638 | self.stale = False |
| 639 | |
| 640 | def contains(self, mouseevent): |
| 641 | """Test whether the mouse event occurred within the image.""" |
no test coverage detected