Changeset 8709:8b46470b5917 in orange


Ignore:
Timestamp:
08/14/11 17:23:18 (3 years ago)
Author:
miha <miha.stajdohar@…>
Branch:
default
Convert:
9e020d007f45baf931b3b43c165e8486297ce81a
Message:

Animating inside view.

Location:
orange/OrangeWidgets/Visualize Qt
Files:
2 edited

Legend:

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

    r8707 r8709  
    289289         
    290290        elif colorIndex is not None and self.links.domain[colorIndex].varType == orange.VarTypes.Continuous: 
    291             #colors.update((v, self.contPalette[(float(self.items[v][colorIndex].value) - minValue) / (maxValue - minValue)])  
    292             #              if str(self.items[v][colorIndex].value) != '?' else  
    293             #              (v, self.discPalette[0]) for v in nodes) 
    294             print "TODO set continuous color" 
     291            colors = [self.contPalette[(float(self.links[edge.links_index()][colorIndex].value) - minValue) / (maxValue - minValue)] 
     292                          if str(self.links[edge.links_index()][colorIndex].value) != '?' else  
     293                          self.discPalette[0] for edge in self.networkCurve.edges()] 
     294             
    295295        elif colorIndex is not None and self.links.domain[colorIndex].varType == orange.VarTypes.Discrete: 
    296             #colors.update((v, self.discPalette[colorIndices[self.items[v][colorIndex].value]]) for v in nodes) 
    297             print "TODO set discrete color" 
    298             colors = [self.discEdgePalette[colorIndices[self.links[edge.links_index][colorIndex].value]] for edge in self.networkCurve.edges()] 
     296            colors = [self.discEdgePalette[colorIndices[self.links[edge.links_index()][colorIndex].value]] for edge in self.networkCurve.edges()] 
     297             
    299298        else: 
    300299            colors = [self.discEdgePalette[0] for edge in self.networkCurve.edge_indices()] 
     
    302301        self.networkCurve.set_edge_colors(colors) 
    303302        self.replot() 
    304          
    305 #                 if self.links.domain[colorIndex].varType == orange.VarTypes.Continuous: 
    306 #                    newColor = self.discEdgePalette[0] 
    307 #                        else: 
    308 #                            value = (float(self.links[links_index][colorIndex].value) - minValue) / (maxValue - minValue) 
    309 #                            newColor = self.contEdgePalette[value] 
    310 #                elif self.links.domain[colorIndex].varType == orange.VarTypes.Discrete: 
    311 #                    newColor = self.discEdgePalette[colorIndices[self.links[links_index][colorIndex].value]] 
    312 #                    if self.links[links_index][colorIndex].value == "0": 
    313 #                      self.networkCurve.set_edge_color(index, newColor, nocolor=1) 
    314 #                    else: 
    315 #                      self.networkCurve.set_edge_color(index, newColor) 
    316303         
    317304    def set_edge_labels(self, attributes=None): 
     
    364351        current_nodes = self.networkCurve.nodes() 
    365352         
    366         pos = dict((n, [numpy.average(c) for c in zip(*[(current_nodes[u].x(), current_nodes[u].y()) for u in old_nodes.intersection(self.graph.neighbors(n))])]) for n in add_nodes) 
     353        def closest_nodes_with_pos(nodes): 
     354             
     355            neighbors = set() 
     356            for n in nodes: 
     357                neighbors |= set(self.graph.neighbors(n)) 
     358 
     359            # checked all, none found             
     360            if len(neighbors-nodes) == 0: 
     361                return [] 
     362             
     363            inter = old_nodes.intersection(neighbors) 
     364            if len(inter) > 0: 
     365                return inter 
     366            else: 
     367                print "in recursion" 
     368                return closest_nodes_with_pos(neighbors) 
     369         
     370        pos = dict((n, [numpy.average(c) for c in zip(*[(current_nodes[u].x(), current_nodes[u].y()) for u in closest_nodes_with_pos(set([n]))])]) for n in add_nodes) 
    367371         
    368372        self.networkCurve.remove_nodes(list(remove_nodes)) 
  • orange/OrangeWidgets/Visualize Qt/OWNxExplorerQt.py

    r8700 r8709  
    12471247#            self.graph_layout_method() 
    12481248         
     1249        animation_enabled = self.networkCanvas.animate_points; 
     1250        self.networkCanvas.animate_points = False; 
     1251         
    12491252        self.set_node_sizes() 
    12501253        self.set_node_colors() 
     
    12521255        self.set_edge_colors() 
    12531256             
    1254         self.networkCanvas.setEdgesSize() 
    12551257        self.clickedAttLstBox() 
    12561258        self.clickedTooltipLstBox() 
     
    12581260         
    12591261        self.networkCanvas.replot() 
     1262         
     1263        self.networkCanvas.animate_points = animation_enabled 
    12601264        qApp.processEvents() 
    12611265        self.networkCanvas.networkCurve.fr(100, weighted=False, smooth_cooling=True) 
Note: See TracChangeset for help on using the changeset viewer.