def draw(self, render): ax = self.axes ms = np.zeros((len(self._sizes), 3, 3)) ms[:, 0, 0] = self._sizes ms[:, 1, 1] = self._sizes ms[:, 2, 2] = 1 self._transforms = ms m = ax.transData.get_affine().get_matrix().copy() m[:2, 2:] = 0 self.set_transform(Affine2D(m)) return Collection.draw(self, render)
def draw(self, renderer): return Collection.draw(self, renderer)
def draw(self, renderer): v = None if isSupportedRenderer(renderer): self._sort_zpos = None renderer.use_gl = True glcanvas = get_glcanvas() if self.axes is not None: tag = self.axes trans = self.axes.transAxes elif self.figure is not None: tag = self.figure trans = self.figure.transFigure if glcanvas.has_vbo_data(self): d = glcanvas.get_vbo_data(self) if self._gl_cz: cz = self._gl_facecolordata elif self._gl_cz is not None: cz = self._gl_cz else: cz = self._gl_3dpath[2] if len(d) > 0 and d[0] is not None: if self._update_v: d[0]['v'].need_update = True self._gl_facecolor = self.to_rgba(cz) if self._update_fc: d[0]['fc'].need_update = True self._gl_facecolor = self.to_rgba(cz) if self._update_ec: d[0]['ec'].need_update = True self._gl_edgecolor = self.to_rgba(cz) if self._update_i: d[0]['i'].need_update = True if self._update_a: if 'vertex_id' in d[0] and d[0]['vertex_id'] is not None: d[0]['vertex_id'].need_update = True else: self._update_a = False self._update_v = False self._update_fc = False self._update_ec = False self._update_i = False # this happens when all surfaces are hidden. # if (len(d)) == 0: print('vbo zero length', self.figobj) if self._update_ec or self._update_fc: self.update_scalarmappable() gc = renderer.new_gc() glcanvas.frame_request(self, trans) # renderer.do_stencil_test = self.do_stencil_test glcanvas.start_draw_request(self) if self._gl_3dpath is not None: if isinstance(self._gl_3dpath[4], list): renderer.gl_draw_path_collection( gc, None, self._gl_3dpath, self.get_transforms(), self._gl_offset, None, self._gl_facecolor, self._gl_edgecolor, self._linewidths, self._linestyles, self._antialiaseds, self._urls, self._offset_position, stencil_test = self.do_stencil_test, view_offset = self._gl_voffset, array_idx = self._gl_array_idx) else: renderer.gl_draw_path_collection_e( gc, None, self._gl_3dpath, self.get_transforms(), self._gl_offset, None, self._gl_facecolor, self._gl_edgecolor, self._linewidths, self._linestyles, self._antialiaseds, self._urls, self._offset_position, stencil_test = self.do_stencil_test, view_offset = self._gl_voffset, array_idx = self._gl_array_idx, use_pointfill = self._gl_use_pointfill) # renderer.do_stencil_test = False glcanvas.end_draw_request() gc.restore() self._update_fc = False self._update_ec = False self._update_v = False self._update_i = False finish_gl_drawing(glcanvas, renderer, tag, trans) renderer.use_gl = False else: v = Collection.draw(self, renderer) return v