示例#1
0
    public TspFitness(int numberOfCities)
    {
        Cities = new List <TspCity>(numberOfCities);

        for (int i = 0; i < numberOfCities; i++)
        {
            var city = new TspCity {
                Position = GetCityRandomPosition()
            };
            Cities.Add(city);
        }
    }
    public TspFitness(int numberOfCities)
    {
        Cities = new List <TspCity>(numberOfCities);

        var size = Camera.main.orthographicSize - 1;

        m_area = new Rect(-size, -size, size * 2, size * 2);

        for (int i = 0; i < numberOfCities; i++)
        {
            var city = new TspCity {
                Position = GetCityRandomPosition()
            };
            Cities.Add(city);
        }
    }
示例#3
0
 public double Distance(TspCity other)
 {
     return(Math.Sqrt(
                Math.Pow(X - other.X, 2) + Math.Pow(Y - other.Y, 2)
                ));
 }
示例#4
0
 private static double CalcDistanceTwoCities(TspCity one, TspCity two)
 {
     return(Math.Sqrt(Math.Pow(Math.Abs(one.Position.Item1 - two.Position.Item1), 2) +
                      Math.Pow(Math.Abs(one.Position.Item2 - two.Position.Item2), 2)));
 }
 private static double CalcDistanceTwoCities(TspCity one, TspCity two)
 {
     return(Vector2.Distance(one.Position, two.Position));
 }