private void ThreadAlgoritmosEstimacao_DoWork(object sender, System.ComponentModel.DoWorkEventArgs e) { int algoritmo = (int)e.Argument; double[,] padroesCopia = (double[, ])padroes.Clone(); EstimaGrupos estimaGrupos = new EstimaGrupos(padroesCopia, double.Parse(txtJumpsThreshold.Text, CultureInfo.InvariantCulture), int.Parse(txtNumberRunningThreshold.Text)); int numeroGrupos = estimaGrupos.Controle(); if (algoritmo == 3 && numeroGrupos > 0) { DIANA diana = new DIANA(padroes, numeroGrupos, indiceDiametro); agrupamento = diana.Agrupa(); } else if (algoritmo == 5 && numeroGrupos > 0) { KMeans kMeans = new KMeans(padroes, numeroGrupos); agrupamento = kMeans.Agrupa(); } else if (algoritmo == 4 && numeroGrupos > 0) { DIANACentroide diana = new DIANACentroide(padroes, numeroGrupos, indiceDiametro); agrupamento = diana.Agrupa(); } else { MessageBox.Show("Nember of Clusters = " + numeroGrupos, "Error"); } }
private void ThreadAlgoritmos_DoWork(object sender, System.ComponentModel.DoWorkEventArgs e) { int algoritmo = (int)e.Argument; if (algoritmo == 0) { DIANA diana = new DIANA(padroes, int.Parse(txtNumberClusters.Text), indiceDiametro); agrupamento = diana.Agrupa(); } else if (algoritmo == 2) { KMeans KMeans = new KMeans(padroes, int.Parse(txtNumberClusters.Text)); agrupamento = KMeans.Agrupa(); } else { DIANACentroide diana = new DIANACentroide(padroes, int.Parse(txtNumberClusters.Text), indiceDiametro); agrupamento = diana.Agrupa(); } }