Changeset 9064:1a92b789f448 in orange


Ignore:
Timestamp:
10/05/11 19:57:23 (3 years ago)
Author:
matejd <matejd@…>
Branch:
default
Convert:
822cad6b5128dda2d73d084e850ebec4482df766
Message:

Proper layout for netexplorer3ds plot child; added set_2D_mode convenience method (plot3d)

Location:
orange/OrangeWidgets
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • orange/OrangeWidgets/Visualize Qt/OWNxCanvas3D.py

    r9056 r9064  
    11from plot.owplot3d import OWPlot3D 
    22from PyQt4.QtCore import Qt 
     3from PyQt4.QtGui import QVBoxLayout 
    34import orangeqt 
    45import Orange 
     
    3334        orangeqt.Canvas3D.__init__(self, parent) 
    3435 
     36        layout = QVBoxLayout() 
    3537        self.plot = OWPlot3D(self) 
     38        layout.addWidget(self.plot) 
     39        self.setLayout(layout) 
    3640        self.plot.initializeGL() 
     41        self.plot.before_draw_callback = self.draw_callback 
    3742        self.plot.replot = self.plot.update 
    3843        self.gui = self.plot.gui 
     
    8186        self.title_margin = 0 
    8287        self.graph_margin = 1 
     88 
     89    def draw_callback(self): 
     90        pass 
    8391 
    8492    def update_canvas(self): 
     
    434442    def set_node_marks(self, d): 
    435443        orangeqt.Canvas3D.set_node_marks(self, d) 
    436  
    437     def layout_fr(self, steps, weighted=False, smooth_cooling=False): 
    438         orangeqt.Canvas3D.layout_fr(self, steps, weighted, smooth_cooling) 
    439444 
    440445    def set_node_coordinates(self, positions): 
     
    529534            #    self.mds.freshD = 0 
    530535             
    531             #self.update_properties() 
    532             #self.plot().replot() 
    533536            self.update() 
    534537            qApp.processEvents() 
     
    547550            return 1 
    548551 
    549         #p = self.plot() 
    550         edges = self.edges() 
     552        #edges = self.edges() 
    551553        nodes = self.nodes() 
    552554 
    553555        avgLinkage = True 
    554         rotationOnly = False 
     556        #rotationOnly = False 
    555557        minStressDelta = 0 
    556558        mdsRefresh = int(steps / 20) 
     
    579581        d_mds = math.sqrt(w_mds**2 + h_mds**2) 
    580582         
    581         #animate_points = p.animate_points 
    582         #p.animate_points = False 
    583          
    584583        self.set_node_coordinates(dict( 
    585584           (n, (nodes[n].x()*d_mds/d_fr, nodes[n].y()*d_mds/d_fr)) for n in nodes)) 
    586585         
    587         #self.update_properties() 
    588         #p.replot() 
    589586        self.update() 
    590587        qApp.processEvents() 
     
    677674           (n, (nodes[n].x()*d_mds/d_fr, nodes[n].y()*d_mds/d_fr)) for n in nodes)) 
    678675         
    679         #p.replot() 
    680676        self.update() 
    681677        qApp.processEvents() 
     
    702698            progress_callback(mds.avgStress, self.mdsStep) 
    703699         
    704         #p.animate_points = animate_points 
    705700        return 0 
    706701 
    707702    def update(self): 
    708         #self.set_dirty() 
    709703        self.plot.update() 
  • orange/OrangeWidgets/Visualize Qt/OWNxExplorer3D.py

    r9047 r9064  
    2323                       ("Items Subset", Orange.data.Table, self.setExampleSubset),  
    2424                       ("Items Distance Matrix", Orange.core.SymMatrix, self.set_items_distance_matrix)] 
    25          
     25 
    2626        self.outputs = [("Selected Network", Orange.network.Graph), 
    2727                        ("Selected Items Distance Matrix", Orange.core.SymMatrix), 
  • orange/OrangeWidgets/plot/owplot3d.py

    r9045 r9064  
    519519        model = QMatrix4x4() 
    520520        return model, view, projection 
     521 
     522    def set_2D_mode(self): 
     523        ''' 
     524        Sets ortho projection and identity modelview transform. A convenience method which 
     525        can be called before doing 2D drawing. 
     526        ''' 
     527        glMatrixMode(GL_PROJECTION) 
     528        glLoadIdentity() 
     529        glOrtho(0, self.width(), self.height(), 0, -1, 1) 
     530        glMatrixMode(GL_MODELVIEW) 
     531        glLoadIdentity() 
     532 
     533        self.projection = QMatrix4x4() 
     534        self.projection.ortho(0, self.width(), self.height(), 0, -1, 1) 
     535        self.model = QMatrix4x4() 
     536        self.view = QMatrix4x4() 
    521537 
    522538    def paintEvent(self, event): 
Note: See TracChangeset for help on using the changeset viewer.