private List<Cluster> CreateAreasThread(int nrOfClusters)
        {
            KMeanClustering clusteringAlgorithm = new KMeanClustering();

            List<Cluster> clusters = clusteringAlgorithm.CreateClusters(_slEdges, nrOfClusters);

            foreach (Cluster clust in clusters)
            {
                foreach (SilverlightEdge edge in clust.Edges)
                {
                    foreach (SilverlightEdge edge1 in clust.Edges)
                    {
                        edge.PolarCords.Center(clust.ClusterCenter);
                    }
                }
            }

            return clusters;
        }
        private List<Cluster> CreateAreas(int nrOfClusters)
        {
            KMeanClustering clusteringAlgorithm = new KMeanClustering();

                List<Cluster> clusters = clusteringAlgorithm.CreateClusters(_slEdges, nrOfClusters);
                int counter = 0;
                foreach (Cluster clust in clusters)
                {
                    counter++;
                    Label lbl = new Label();
                    lbl.Foreground = new SolidColorBrush(Color.FromArgb(255, 0, 0, 255));
                    lbl.FontSize = 20;
                    lbl.Width = 30;
                    lbl.Height = 30;
                    lbl.Content = counter.ToString();
                    lbl.SetValue(Canvas.LeftProperty, clust.ClusterCenter.X);
                    lbl.SetValue(Canvas.TopProperty, clust.ClusterCenter.Y);
                    lbl.SetValue(Canvas.ZIndexProperty, 2);
                    this.LayoutRoot.Children.Add(lbl);
                }

                return clusters;
        }