コード例 #1
0
ファイル: __init__.py プロジェクト: wxgeo/geophar
    def draw(self, renderer):
        # draw the background patch
        self.axesPatch.draw(renderer)
        self._frameon = False

        # add the projection matrix to the renderer
        self.M = self.get_proj()
        renderer.M = self.M
        renderer.vvec = self.vvec
        renderer.eye = self.eye
        renderer.get_axis_position = self.get_axis_position

        # Calculate projection of collections and zorder them
        zlist = [(col.do_3d_projection(renderer), col) \
                for col in self.collections]
        zlist.sort(reverse=True)
        for i, (z, col) in enumerate(zlist):
            col.zorder = getattr(col, '_force_zorder', i)


        # Calculate projection of patches and zorder them
        zlist = [(patch.do_3d_projection(renderer), patch) \
                for patch in self.patches]
        zlist.sort(reverse=True)
        for i, (z, patch) in enumerate(zlist):
            patch.zorder = i

        self.w_xaxis.draw(renderer)
        self.w_yaxis.draw(renderer)
        self.w_zaxis.draw(renderer)
        Axes.draw(self, renderer)
コード例 #2
0
ファイル: axes3d.py プロジェクト: ranjithtenz/cis530
    def draw(self, renderer):
        # draw the background patch
        self.axesPatch.draw(renderer)
        self._frameon = False

        # add the projection matrix to the renderer
        self.M = self.get_proj()
        renderer.M = self.M
        renderer.vvec = self.vvec
        renderer.eye = self.eye
        renderer.get_axis_position = self.get_axis_position

        # Calculate projection of collections and zorder them
        zlist = [(col.do_3d_projection(renderer), col) for col in self.collections]
        zlist.sort()
        zlist.reverse()
        for i, (z, col) in enumerate(zlist):
            col.zorder = i

        # Calculate projection of patches and zorder them
        zlist = [(patch.do_3d_projection(renderer), patch) for patch in self.patches]
        zlist.sort()
        zlist.reverse()
        for i, (z, patch) in enumerate(zlist):
            patch.zorder = i

        axes = (self.w_xaxis, self.w_yaxis, self.w_zaxis)
        for ax in axes:
            ax.draw_pane(renderer)
        for ax in axes:
            ax.draw(renderer)

        Axes.draw(self, renderer)
コード例 #3
0
ファイル: axes.py プロジェクト: aplpy/aplpy-experimental
    def draw(self, renderer):

        if self._parent is not None:
            self.axes.viewLim.set(self._parent.viewLim)
            self.set_position(self._parent.get_position())

        Axes.draw(self, renderer)
コード例 #4
0
    def draw(self, renderer):
        # draw the background patch
        self.axesPatch.draw(renderer)
        self._frameon = False

        # add the projection matrix to the renderer
        self.M = self.get_proj()
        renderer.M = self.M
        renderer.vvec = self.vvec
        renderer.eye = self.eye
        renderer.get_axis_position = self.get_axis_position

        # Calculate projection of collections and zorder them
        zlist = [(col.do_3d_projection(renderer), col) \
                for col in self.collections]
        zlist.sort()
        zlist.reverse()
        for i, (z, col) in enumerate(zlist):
            col.zorder = i

        # Calculate projection of patches and zorder them
        zlist = [(patch.do_3d_projection(renderer), patch) \
                for patch in self.patches]
        zlist.sort()
        zlist.reverse()
        for i, (z, patch) in enumerate(zlist):
            patch.zorder = i

        self.w_xaxis.draw(renderer)
        self.w_yaxis.draw(renderer)
        self.w_zaxis.draw(renderer)
        Axes.draw(self, renderer)
コード例 #5
0
ファイル: axes.py プロジェクト: aplpy/aplpy-experimental
    def draw(self, renderer):

        if self._parent is not None:
            self.axes.viewLim.set(self._parent.viewLim)
            self.set_position(self._parent.get_position())

        Axes.draw(self, renderer)
コード例 #6
0
 def draw(self, *args):
     '''
     draw() is overridden here to allow the data transform to be updated
     before calling the Axes.draw() method.  This allows resizes to be
     properly handled without registering callbacks.  The amount of
     work done here is kept to a minimum.
     '''
     self._update_data_transform()
     Axes.draw(self, *args)
コード例 #7
0
ファイル: axescache.py プロジェクト: DougBurke/glue
 def draw(self, renderer, *args, **kwargs):
     if self._capture is None or not self._enabled:
         Axes.draw(self.axes, renderer, *args, **kwargs)
         self._capture = RenderCapture(self.axes, renderer)
     else:
         self.axes.axesPatch.draw(renderer, *args, **kwargs)
         self._capture.draw(renderer, *args, **kwargs)
         self.axes.xaxis.draw(renderer, *args, **kwargs)
         self.axes.yaxis.draw(renderer, *args, **kwargs)
         for s in self.axes.spines.values():
             s.draw(renderer, *args, **kwargs)
コード例 #8
0
ファイル: axescache.py プロジェクト: astrofrog/axescache
 def draw(self, renderer, *args, **kwargs):
     if self._capture is None or not self._enabled:
         Axes.draw(self.axes, renderer, *args, **kwargs)
         self._capture = RenderCapture(self.axes, renderer)
     else:
         self.axes.axesPatch.draw(renderer, *args, **kwargs)
         self._capture.draw(renderer, *args, **kwargs)
         self.axes.xaxis.draw(renderer, *args, **kwargs)
         self.axes.yaxis.draw(renderer, *args, **kwargs)
         for s in self.axes.spines.values():
             s.draw(renderer, *args, **kwargs)
コード例 #9
0
ファイル: polar.py プロジェクト: whisperice/matplotlib
    def draw(self, *args, **kwargs):
        thetamin, thetamax = self._realViewLim.intervalx
        thetamin *= 180 / np.pi
        thetamax *= 180 / np.pi
        if thetamin > thetamax:
            thetamin, thetamax = thetamax, thetamin
        rmin, rmax = self._realViewLim.intervaly - self.get_rorigin()

        if isinstance(self.patch, mpatches.Wedge):
            # Backwards-compatibility: Any subclassed Axes might override the
            # patch to not be the Wedge that PolarAxes uses.
            center = self.transWedge.transform_point((0.5, 0.5))
            self.patch.set_center(center)
            self.patch.set_theta1(thetamin)
            self.patch.set_theta2(thetamax)

            edge, _ = self.transWedge.transform_point((1, 0))
            radius = edge - center[0]
            width = min(radius * (rmax - rmin) / rmax, radius)
            self.patch.set_radius(radius)
            self.patch.set_width(width)

            inner_width = radius - width
            inner = self.spines.get('inner', None)
            if inner:
                inner.set_visible(inner_width != 0.0)

        visible = not _is_full_circle_deg(thetamin, thetamax)
        # For backwards compatibility, any subclassed Axes might override the
        # spines to not include start/end that PolarAxes uses.
        start = self.spines.get('start', None)
        end = self.spines.get('end', None)
        if start:
            start.set_visible(visible)
        if end:
            end.set_visible(visible)
        if visible:
            yaxis_text_transform = self._yaxis_transform
        else:
            yaxis_text_transform = self._r_label_position + self.transData
        if self._yaxis_text_transform != yaxis_text_transform:
            self._yaxis_text_transform.set(yaxis_text_transform)
            self.yaxis.reset_ticks()
            self.yaxis.set_clip_path(self.patch)

        Axes.draw(self, *args, **kwargs)
コード例 #10
0
 def draw(self, renderer):
     self.axesPatch.draw(renderer)
     self._frameon = False
     self.M = self.get_proj()
     renderer.M = self.M
     renderer.vvec = self.vvec
     renderer.eye = self.eye
     renderer.get_axis_position = self.get_axis_position
     zlist = [(col.do_3d_projection(renderer), col) \
             for col in self.collections]
     zlist.sort()
     zlist.reverse()
     for i, (z, col) in enumerate(zlist):
         col.zorder = i
     zlist = [(patch.do_3d_projection(renderer), patch) \
             for patch in self.patches]
     zlist.sort()
     zlist.reverse()
     for i, (z, patch) in enumerate(zlist):
         patch.zorder = i
     self.w_xaxis.draw(renderer)
     self.w_yaxis.draw(renderer)
     self.w_zaxis.draw(renderer)
     Axes.draw(self, renderer)
コード例 #11
0
ファイル: mpl.py プロジェクト: nejstastnejsistene/ERPy
 def draw(self, *args):
     '''Override Axes.draw() to first consider our buffer.'''
     self._check_buffer()
     Axes.draw(self, *args)