void tmr_Tick(object sender, EventArgs e)
 {
     //after 3 sec stop the timer
     tmr.Stop();
     //display mainform
     MainForm mf = new MainForm();
     mf.Show();
     //hide this form
     this.Hide();
 }
Exemple #2
0
        /// <summary>
        /// Se inicia la seleccion de areas para los elementos HIGH
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void btnAreasHigh_Click(object sender, EventArgs e)
        {
            // se verifica primero que primero se hallan segmentado correctamente los elementos HIGH y LOW
            if (!padre.actual.segmentacionDone)
            {
                MessageBox.Show("No es posible realizar la seleccion de areas de interes para los elementos.\n\nRealize primero la segmentacion de los elementos HIGH.", "Error al iniciar la seleccion de areas", MessageBoxButtons.OK, MessageBoxIcon.Error);
                return;
            }
            else
            {
                // se ha realizado la segmentacion de los slide, se puede proceder a realizar la seleccion de areas
                if(!padre.abiertoSelectAreasForm)
                {
                    this.padre.selecAreasForm = new SelectAreasForm();
                    this.padre.selecAreasForm.Text = "SELECCION DE AREAS";
                    this.padre.selecAreasForm.label4.Text = "SELECCION DE AREAS";

                    this.padre.selecAreasForm.MdiParent = this.MdiParent;
                    this.padre.selecAreasForm.padre = this.padre;

                    this.padre.abiertoSelectAreasForm = true;
                    this.padre.selecAreasForm.Show();

                    // segunda ventana

                    this.padre.selecAreas2Form = new SelectAreas2Form();
                    this.padre.selecAreas2Form.Text = "SELECCION DE AREAS";
                    this.padre.selecAreas2Form.label4.Text = "SELECCION DE AREAS";

                    this.padre.selecAreas2Form.padre = this.padre;

                    this.padre.abiertoSelectAreas2Form = true;
                    this.padre.selecAreas2Form.Show();

                    if (Screen.AllScreens.Length > 1)
                    {
                        this.padre.selecAreas2Form.Location = new Point(Screen.AllScreens[1].WorkingArea.X + Screen.AllScreens[1].WorkingArea.Width / 2 - padre.selecAreas2Form.Width / 2, Screen.AllScreens[1].WorkingArea.Y + Screen.AllScreens[1].WorkingArea.Height / 2 - padre.selecAreas2Form.Height / 2);
                    }

                    this.padre.selecAreasForm.Select();

                }
                else
                {
                    this.padre.selecAreasForm.Select();
                }
            }
        }
Exemple #3
0
        private void btnSegHigh_Click(object sender, EventArgs e)
        {
            if (!padre.abiertoSegmentacionForm)
            {
                this.padre.segmentacionForm = new SegmentacionForm();
                this.padre.segmentacionForm.Text = "SEGMENTACION";
                this.padre.segmentacionForm.lblTitulo.Text = "SEGMENTACION";

                this.padre.segmentacionForm.MdiParent = this.MdiParent;
                this.padre.segmentacionForm.padre = this.padre;

                this.padre.abiertoSegmentacionForm = true;
                this.padre.segmentacionForm.Show();
            }
            else
            {
                this.padre.segmentacionForm.Select();
            }
        }
Exemple #4
0
        private void btnCurvas_Click(object sender, EventArgs e)
        {
            if (!padre.abiertoCurvasForm)
            {
                this.padre.curvasForm = new CurvasForm();
                this.padre.curvasForm.Text = "ESTIMACION PROPIEDADES PETROFISICAS";
                this.padre.curvasForm.lblTitulo.Text = "ESTIMACION PROPIEDADES PETROFISICAS";

                this.padre.curvasForm.MdiParent = this.MdiParent;
                this.padre.curvasForm.padre = this.padre;

                this.padre.ShowWaiting("Espere mientras se estiman las curvas de propiedades");
                this.padre.curvasForm.Estimar();
                this.padre.CloseWaiting();

                this.padre.abiertoCurvasForm = true;
                this.padre.curvasForm.Show();
            }
            else
            {
                this.padre.curvasForm.Select();
            }
        }
        private void btnPreview_Click(object sender, EventArgs e)
        {
            // si los dicom contienen informacion de phantoms entonces se busca que hallan 4 elementos
            // si los dicom no contienen informacion de phantoms entonces se busca solo 1 elemento

            if (padre.actual.phantomEnDicom)
            {
                // los dicom contienen informacion de phantom

                if (elementosScreen.Count < 4)
                {
                    MessageBox.Show("No se han seleccionado todos los elementos del slide.\n\nNo se puede proceder a previsualizar.", "Error al previsualizar!", MessageBoxButtons.OK, MessageBoxIcon.Error);
                    return;
                }
                else if (elementosScreen.Count > 4)
                {
                    MessageBox.Show("Se han seleccionado demasiados elementos en el slide.\n\nNo se puede proceder a previsualizar.", "Error al previsualizar!", MessageBoxButtons.OK, MessageBoxIcon.Error);
                    return;
                }

                this.padre.previewSegForm = new PreviewSegForm();
                this.padre.abiertoPreviewSegForm = true;
                this.padre.previewSegForm.padre = this.padre;

                // se cortan las imagenes y se envian a PreviewSegForm

                // se prepara un List de Bitmap
                List<Bitmap> cortes = new List<Bitmap>();

                // primero se hace una copia del List elementosScreen con las coordenadas corregidas
                List<CCuadrado> tempElementos = new List<CCuadrado>();
                for (int i = 0; i < elementosScreen.Count; i++)
                {
                    CCuadrado temp = new CCuadrado(elementosScreen[i]);
                    tempElementos.Add(MainForm.CorregirPictBox2Original(temp, pictElemento.Image.Height, pictElemento.Height));
                }

                // se ordena el tempElementos de radio mas grande a mas pequeño para sacar el CORE
                // se ordenan segun el tamano del lado de cuadrado, de mas grande a mas pequeno, y se toma el Core como el elemento mas grande
                tempElementos.Sort(delegate(CCuadrado x, CCuadrado y)
                {
                    return y.width.CompareTo(x.width);
                });

                Bitmap aEnviar = new Bitmap(pictElemento.Image);
                cortes.Add(MainForm.CropCirle(aEnviar, tempElementos[0]));
                padre.previewSegForm.core = cortes[0];
                tempElementos.RemoveAt(0);

                // se ordenan de izquierda a derecha
                // se ordenan segun la coordenada X, de izquierda a derecha. Los phantom P1 P2 y P3 se ordenan de izquierda a derecha
                tempElementos.Sort(delegate(CCuadrado x, CCuadrado y)
                {
                    return x.x.CompareTo(y.x);
                });
                for (int i = 0; i < tempElementos.Count; i++)
                {
                    cortes.Add(MainForm.CropCirle(aEnviar, tempElementos[i]));
                }
                padre.previewSegForm.p1 = cortes[1];
                padre.previewSegForm.p2 = cortes[2];
                padre.previewSegForm.p3 = cortes[3];

                // se invoca como un cuadro de dialogo modal, no MDIchild
                this.padre.previewSegForm.ShowDialog();
            }
            else
            {
                // los dicom no contienen informacion de dicom

                if (elementosScreen.Count < 1)
                {
                    MessageBox.Show("No se han seleccionado un elemento core.\n\nNo se puede proceder a previsualizar.", "Error al previsualizar!", MessageBoxButtons.OK, MessageBoxIcon.Error);
                    return;
                }
                else if (elementosScreen.Count > 1)
                {
                    MessageBox.Show("Se han seleccionado demasiados elementos en el slide.\n\nNo se puede proceder a previsualizar.", "Error al previsualizar!", MessageBoxButtons.OK, MessageBoxIcon.Error);
                    return;
                }

                this.padre.previewSegForm = new PreviewSegForm();
                this.padre.abiertoPreviewSegForm = true;
                this.padre.previewSegForm.padre = this.padre;

                // se cortan las imagenes y se envian a PreviewSegForm

                // se prepara un List de Bitmap
                List<Bitmap> cortes = new List<Bitmap>();

                // primero se hace una copia del List elementosScreen con las coordenadas corregidas
                List<CCuadrado> tempElementos = new List<CCuadrado>();
                for (int i = 0; i < elementosScreen.Count; i++)
                {
                    CCuadrado temp = new CCuadrado(elementosScreen[i]);
                    tempElementos.Add(MainForm.CorregirPictBox2Original(temp, pictElemento.Image.Height, pictElemento.Height));
                }

                Bitmap aEnviar = new Bitmap(pictElemento.Image);
                cortes.Add(MainForm.CropCirle(aEnviar, tempElementos[0]));
                padre.previewSegForm.core = cortes[0];
                tempElementos.RemoveAt(0);

                padre.previewSegForm.p1 = null;
                padre.previewSegForm.p2 = null;
                padre.previewSegForm.p3 = null;

                // se invoca como un cuadro de dialogo modal, no MDIchild
                this.padre.previewSegForm.grpPhantoms.Visible = false;
                this.padre.previewSegForm.ShowDialog();
            }
        }