// Use this for initialization void Start() { PlayerDetailsComp = GetComponent <PlayerDetails> (); DropWaterComp = GetComponent <DropWater> (); Altitude = TargetAltitude = 1.0f; OriginalScale = transform.localScale; }
// Use this for initialization void Start() { PlayerDetailsComp = GetComponent<PlayerDetails> (); DropWaterComp = GetComponent<DropWater> (); Altitude = TargetAltitude = 1.0f; OriginalScale = transform.localScale; }
/// <summary> /// Find optimal running route through cougar /// </summary> /// <param name="geometry"></param> private static void RunCougarFinder(Geometry geometry) { geometry = new DropBuildings().Transform(geometry); geometry = new DropWater().Transform(geometry); OutputPolygons("275765", geometry); geometry = new OnlyTraversable().Transform(geometry); geometry = new CollapseParkingLots().Transform(geometry); var cougar = geometry.Relations.First(x => x.Id == "275765"); var ways = new LabelWaysInRelation().Transform(cougar, geometry); ways = new SplitBisectedWays().Transform(ways); DebugOut(ways, "labeledWays.json"); var targetNodes = new HashSet <Node>(); foreach (var way in ways) { if (way.Tags["rfInPolygon"] == "in") { targetNodes.Add(way.Nodes.First()); targetNodes.Add(way.Nodes.Last()); } } var graph = new GraphBuilder(new RequiredEdgeGraphFilter(), new ReasonablyEnjoyableRunningCost()).BuildGraph(ways.ToArray(), out var originalEdgeWays); new GraphSummaryOutputter(outputLocation).OutputGraph(graph, originalEdgeWays, "reducedGraph.json"); var requiredCost = graph.RequiredEdgeCost(); // lazy route var lazyRouteFinder = new RouteFinder <Node>(new LazyGraphAugmenter <Node>()); var lazyRoute = lazyRouteFinder.GetRoute(graph); var lazyRouteCost = lazyRoute.Select(x => x.Distance).Sum(); // do regular route (rebuilds graph) graph = new GraphBuilder(new RequiredEdgeGraphFilter(), new ReasonablyEnjoyableRunningCost()).BuildGraph(ways.ToArray(), out originalEdgeWays); var greedRouteFinder = new RouteFinder <Node>(new GreedyGraphAugmenter <Node>()); var route = greedRouteFinder.GetRoute(graph); var routeCost = route.Select(x => x.Distance).Sum(); //new RouteCoverageOutputter(outputLocation).OutputGraph(route, originalEdgeWays, "greedyRouteCoverage.json"); new RouteDetailOutputter(ways, outputLocation, "lazyRouteCoverage.json", "instructions.txt").DescribeRoutesAsWays(lazyRoute); Console.WriteLine($"Required running: {requiredCost}"); Console.WriteLine($"Lazy Route: {lazyRouteCost}"); Console.WriteLine($"Greedy Route: {routeCost}"); Console.Read(); }
// Use this for initialization void Start() { Altitude = TargetAltitude = 1.0f; Direction = new Vector3(0, 1, 0); bDied = false; bGamePaused = false; HowToPlay = GameObject.Find("HowToPlay").GetComponent <Image> (); HowToPlay.enabled = false; DropWaterComp = GetComponent <DropWater> (); PlayerDetailsComp = GetComponent <PlayerDetails>(); GameOverText.text = ""; DropShadowObject = transform.GetChild(0).gameObject; OriginalScale = transform.localScale; rend = gameObject.GetComponent <SpriteRenderer>(); bInTheAir = true; }
// Use this for initialization void Start() { Altitude = TargetAltitude = 1.0f; Direction = new Vector3 (0, 1, 0); bDied = false; bGamePaused = false; HowToPlay=GameObject.Find ("HowToPlay").GetComponent<Image> (); HowToPlay.enabled = false; DropWaterComp = GetComponent<DropWater> (); PlayerDetailsComp = GetComponent<PlayerDetails>(); GameOverText.text = ""; DropShadowObject = transform.GetChild(0).gameObject; OriginalScale = transform.localScale; rend = gameObject.GetComponent<SpriteRenderer>(); bInTheAir = true; }