Changeset 8472:971b3c54e6cd in orange


Ignore:
Timestamp:
07/26/11 15:39:54 (3 years ago)
Author:
miha <miha.stajdohar@…>
Branch:
default
Convert:
b0dae2d9d53b55cc69c57c1d909206ecc5824afd
Message:

set size

Location:
source/orangeplot
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • source/orangeplot/networkcurve.cpp

    r8468 r8472  
    445445} 
    446446 
    447 void NetworkCurve::set_edge_size(QMap<int, double> sizes, double min_size, double max_size) 
    448 { 
     447void NetworkCurve::set_node_size(QMap<int, double> sizes, double min_size, double max_size) 
     448{ 
     449    // TODO inverted 
     450    NodeItem* node; 
     451    Nodes::ConstIterator nit; 
     452 
    449453    double min_size_value = std::numeric_limits<double>::max(); 
    450454    double max_size_value = std::numeric_limits<double>::min(); 
     
    466470    } 
    467471 
    468     if (min_size > 0 || max_size > 0) 
     472    // find min and max size value in nodes dict 
     473    bool min_changed = true; 
     474    bool max_changed = true; 
     475    for (nit = m_nodes.constBegin(); nit != m_nodes.constEnd(); ++nit) 
     476    { 
     477        node = nit.value(); 
     478 
     479        if (node->m_size_value < min_size_value) 
     480        { 
     481            min_size_value = node->m_size_value; 
     482            min_changed = false; 
     483        } 
     484 
     485        if (node->m_size_value > max_size_value) 
     486        { 
     487            max_size_value = node->m_size_value; 
     488            max_changed = false; 
     489        } 
     490    } 
     491 
     492    double size_span = max_size_value - min_size_value; 
     493    double node_size_span = m_max_node_size - m_min_node_size; 
     494 
     495    if (min_size > 0 || max_size > 0 || min_changed || max_changed) 
    469496    { 
    470497        if (min_size > 0) 
     
    478505        } 
    479506 
    480         // TODO: recalibrate all 
     507        // recalibrate all 
     508        qDebug() << "recalibrating all"; 
     509        qDebug() << "min_size_value " << min_size_value << " max_size_value " << max_size_value << " m_min_node_size " << m_min_node_size << " m_max_node_size " << m_max_node_size; 
     510 
     511        if (size_span > 0) 
     512        { 
     513            for (nit = m_nodes.constBegin(); nit != m_nodes.constEnd(); ++nit) 
     514            { 
     515                node = nit.value(); 
     516                node->set_size((node->m_size_value - min_size_value) / size_span * node_size_span + m_min_node_size); 
     517            } 
     518        } 
     519        else 
     520        { 
     521            for (nit = m_nodes.constBegin(); nit != m_nodes.constEnd(); ++nit) 
     522            { 
     523                node = nit.value(); 
     524                node->set_size(m_min_node_size); 
     525            } 
     526        } 
    481527    } 
    482528    else if (sizes.size() > 0) 
    483529    { 
    484         // TODO: recalibrate given 
     530        // recalibrate given 
     531        if (size_span > 0) 
     532        { 
     533            for (it = sizes.begin(); it != sizes.end(); ++it) 
     534            { 
     535                node = m_nodes[it.key()]; 
     536                node->set_size((node->m_size_value - min_size_value) / size_span * node_size_span + m_min_node_size); 
     537            } 
     538        } 
     539        else 
     540        { 
     541            for (it = sizes.begin(); it != sizes.end(); ++it) 
     542            { 
     543                node = m_nodes[it.key()]; 
     544                node->set_size(m_min_node_size); 
     545            } 
     546        } 
     547 
    485548    } 
    486549} 
  • source/orangeplot/networkcurve.h

    r8468 r8472  
    155155 
    156156    void set_node_color(QMap<int, QColor*> colors); 
    157     void set_edge_size(QMap<int, double> sizes=QMap<int, double>(), double min_size=0, double max_size=0); 
     157    void set_node_size(QMap<int, double> sizes=QMap<int, double>(), double min_size=0, double max_size=0); 
    158158 
    159159    void set_min_node_size(double size); 
  • source/orangeplot/networkcurve.sip

    r8469 r8472  
    9494     
    9595    void set_node_color(QMap<int, QColor*> colors);     
    96     void set_edge_size(QMap<int, double> sizes = QMap<int, double>(), double min_size=0, double max_size=0); 
     96    void set_node_size(QMap<int, double> sizes = QMap<int, double>(), double min_size=0, double max_size=0); 
    9797     
    9898    void set_min_node_size(double size); 
Note: See TracChangeset for help on using the changeset viewer.