Index: /branches/RoutePlanning/HeuristicLab.Problems.RoutePlanning.Test/Program.cs
===================================================================
--- /branches/RoutePlanning/HeuristicLab.Problems.RoutePlanning.Test/Program.cs	(revision 8513)
+++ /branches/RoutePlanning/HeuristicLab.Problems.RoutePlanning.Test/Program.cs	(revision 8514)
@@ -30,9 +30,13 @@
 
       //IDataSource ds = TestLoad(typeof(XmlDataSource), file7);
-      IDataSource ds = TestLoad(typeof(OsmDataSource), file6);
+      //IDataSource ds = TestLoad(typeof(OsmDataSource), file6);
       //OsmGraph graph = new OsmGraph(ds);
 
       //IGraph graphNew = TestGetRoutingGraph(ds);
-      //ExecuteBenchmark(graphNew, typeof(AStarAlgorithmV3), 2048, 1000);
+      //ExecuteBenchmark(graphNew, typeof(AStarAlgorithmV3), 262144, 20);
+
+      //IRouter router = new AStarAlgorithmV3(graphNew);
+      //long[] r = router.Calculate(266733493, 986825165);
+      ////long[] r = router.Calculate(998717680, 986825165);
 
       //IDataSource ds = new DIMACSDataSource(fileNYCoords, fileNYArcs);
@@ -70,4 +74,5 @@
       //TestLoadAndRouter(file6, typeof(BidrectionalDijkstraAlgorithm), 529102170, 31372732, false, true); // inz - hgb
 
+      TestLoadAndRouterNew(file6, typeof(AStarAlgorithmV3), 529102170, 31372732, false, true); // inz - hgb
       //TestLoadAndRouterNew(file6, typeof(DijkstraAlgorithmV2), 529102170, 31372732, false, true);
       //TestLoadAndRouterNew(file6, typeof(BidrectionalDijkstraAlgorithmV2), 529102170, 31372732, false, true);
@@ -166,5 +171,6 @@
       Console.Write("Loading data ... ");
       var sw = Stopwatch.StartNew();
-      XmlDataSource xmlDs = new XmlDataSource(filepath);
+      //XmlDataSource xmlDs = new XmlDataSource(filepath);
+      IDataSource xmlDs = new OsmDataSource(filepath);
       sw.Stop();
       Console.WriteLine("done.");
Index: /branches/RoutePlanning/HeuristicLab.Problems.RoutePlanning/3.3/Graph/Graph.cs
===================================================================
--- /branches/RoutePlanning/HeuristicLab.Problems.RoutePlanning/3.3/Graph/Graph.cs	(revision 8513)
+++ /branches/RoutePlanning/HeuristicLab.Problems.RoutePlanning/3.3/Graph/Graph.cs	(revision 8514)
@@ -142,10 +142,16 @@
 
     public float GetWeight(Edge<Vertex> edge) {
-      double distance = Utils.Distance(edge.Source.Logitude, edge.Source.Latitude,
-                                       edge.Target.Logitude, edge.Target.Latitude);
-      //double distance = Utils.LocationDistance(source.Node.Point, target.Node.Point);
+      //double distance = Utils.Distance(edge.Source.Logitude, edge.Source.Latitude,
+      //                                 edge.Target.Logitude, edge.Target.Latitude);
+
+      PointD s = new PointD(edge.Source.Logitude, edge.Source.Latitude);
+      PointD t = new PointD(edge.Target.Logitude, edge.Target.Latitude);
+      double distance = Utils.LocationDistance(s, t);
+
       int speed = edge.GetMaxSpeed();
+      double weight = (distance / speed) * 60;
       //double weight = (distance / speed) * 3.6;
-      double weight = (distance / speed);
+      //double weight = (distance / speed);
+      //double weight = distance;
       return (float)weight;
     }
@@ -158,10 +164,18 @@
 
     public float EstimatedCosts(Vertex source, Vertex target) {
-      double distance = Utils.Distance(source.Logitude, source.Latitude,
-                                       target.Logitude, target.Latitude);
-      //double distance = Utils.LocationDistance(source.Node.Point, target.Node.Point);
-      int speed = 10;
+      //double distance = Utils.Distance(source.Logitude, source.Latitude,
+      //                                 target.Logitude, target.Latitude);
+
+      PointD s = new PointD(source.Logitude, source.Latitude);
+      PointD t = new PointD(target.Logitude, target.Latitude);
+      double distance = Utils.LocationDistance(s, t);
+
+      //int speed = 130;
+      //int speed = 10;
+      int speed = 1;
+      double costs = (distance / speed) * 60;
       //double costs = (distance / speed) * 3.6;
-      double costs = (distance / speed);
+      //double costs = (distance / speed);
+      //double costs = distance;
       return (float)costs;
     }
