Example #1
0
void RDirNode::calcArea() {

    float total_file_area = file_area * visible_count;

    dir_area = total_file_area;

    for(std::list<RDirNode*>::iterator it = children.begin(); it != children.end(); it++) {
        RDirNode* node = (*it);

        dir_area += node->getArea();
    }
}
Example #2
0
void RDirNode::calcRadius() {

    float total_file_area = file_area * visible_count;

    dir_area = total_file_area;

    //float parent_circ        = 0.0;

    for(std::list<RDirNode*>::iterator it = children.begin(); it != children.end(); it++) {
        RDirNode* node = (*it);

        dir_area += node->getArea();
    //    parent_circ += node->getRadiusSqrt();
    }

    this->dir_radius = std::max(1.0f, (float)sqrt(dir_area)) * gGourceDirPadding;
    //this->dir_radius_sqrt = sqrt(dir_radius); //dir_radius_sqrt is not used

//    this->parent_radius = std::max(1.0, parent_circ / PI);
    this->parent_radius = std::max(1.0f, (float) sqrt(total_file_area) * gGourceDirPadding);
}