/// <summary> /// Constructor para duplicar el tipo de dato /// </summary> /// <param name="area">Objeto CAreasInteres a duplicar</param> public CAreaInteres(CAreaInteres area) { x = area.x; y = area.y; width = area.width; nombre = area.nombre; ini = area.ini; fin = area.fin; }
private void AddArea(CCuadrado punto, string elemento) { // se incrementa el contador de areas countAreas++; // se cambia el punto obtenido a las coordenadas originales, considerando que el tamaño del pictCore y de la imagen son diferentes CCuadrado corregido = new CCuadrado(punto); corregido = MainForm.CorregirPictBox2Original(corregido, padre.actual.datacuboHigh.widthSeg, pictCore.Height); CAreaInteres area = new CAreaInteres(corregido.x, corregido.y, corregido.width, "Area" + countAreas.ToString(), Convert.ToInt32(numActual.Value), padre.actual.datacuboHigh.dataCube.Count); switch (elemento) { case "core": padre.actual.areasCore.Add(area); // se ordenan los elementos de principio a fin this.padre.actual.areasCore.Sort(delegate(CAreaInteres a, CAreaInteres b) { return a.ini.CompareTo(b.ini); }); // se verifica que no se crucen las areas entre si if (this.padre.actual.areasCore.Count > 1) { // solo se verifica que no hayan cruces si y solo si hay mas de una area agregada a la lista for (int i = 1; i < this.padre.actual.areasCore.Count; i++) { if (this.padre.actual.areasCore[i - 1].fin > this.padre.actual.areasCore[i].ini) this.padre.actual.areasCore[i - 1].fin = this.padre.actual.areasCore[i].ini - 1; } } // se llena el ListBox LlenarListAreas(); // se busca que indice del listbox se debe seleccionar, en funcion del slide en el que se encuentra for (int i = 0; i < this.padre.actual.areasCore.Count; i++) { if ((trackElementos.Value >= this.padre.actual.areasCore[i].ini) & (trackElementos.Value <= this.padre.actual.areasCore[i].fin)) lstAreas.SelectedIndex = i; } // se pintan las areas el pictCore controlPaint = true; pictCore.Invalidate(); // se envia el list de areas de interes a la SelectAreas2Form //padre.selecAreas2Form.GetAreasCore(areasCore, pictCore.Image.Width); break; } }