filter loop edges
authorladanyi
Thu, 27 Apr 2006 12:20:09 +0000
changeset 2065780e27579198
parent 2064 2c5f81b35269
child 2066 b72fe5e2631a
filter loop edges
gui/mapstorage.cc
     1.1 --- a/gui/mapstorage.cc	Tue Apr 25 14:48:50 2006 +0000
     1.2 +++ b/gui/mapstorage.cc	Thu Apr 27 12:20:09 2006 +0000
     1.3 @@ -268,6 +268,7 @@
     1.4        if (*it == "label")
     1.5        {
     1.6          //std::cout << "read id edgemap" << std::endl;
     1.7 +        read_edge_id = true;
     1.8        }
     1.9        else
    1.10        {
    1.11 @@ -366,6 +367,20 @@
    1.12      }
    1.13    }
    1.14  
    1.15 +  // filter loop edges
    1.16 +  for (EdgeIt e(graph); e != INVALID; ++e)
    1.17 +  {
    1.18 +    if (graph.source(e) == graph.target(e))
    1.19 +    {
    1.20 +      std::cerr << "Removed loop edge " << (*edgemap_storage["label"])[e]
    1.21 +        << " (from " << (*nodemap_storage["label"])[graph.source(e)]
    1.22 +        << ", to " << (*nodemap_storage["label"])[graph.target(e)] << ")."
    1.23 +        << std::endl;
    1.24 +
    1.25 +      graph.erase(e);
    1.26 +    }
    1.27 +  }
    1.28 +
    1.29    return 0;
    1.30  }
    1.31