Exemplo n.º 1
0
        private void BtnAgregacion_Click(object sender, EventArgs e)
        {
            //Habilitamos drawing bandera que sirve para guardar los puntos
            ControlCanvas.Drawing = true;
            //Creamos una figura_relacion local
            Figura_Agregacion tmp = new Figura_Agregacion();

            //ControlCanvas.Figuras.Figuras.Add(tmp);
            CargarFigura(tmp);
        }
Exemplo n.º 2
0
        static void PointForRelation(object sender, EventArgs e)//cuando drawing esta activado carga las posiciones de los paneles al una lista
        {
            Panel pan = sender as Panel;

            //Figuras.Figuras[0].

            Figura_Relacion rel;

            if (Drawing)
            {
                rel = (Figura_Relacion)Figuras.Figuras.Last();
                Console.WriteLine(rel.FiguraNombre);
                if (!rel.isFull)
                {
                    if (rel.RelIni == null)
                    {
                        rel.RelIni = pan;
                    }
                    else if (rel.RelIni != null && rel.RelFin == null)
                    {
                        rel.RelFin = pan;
                        rel.isFull = true;
                        //rel.RelPuntos.Add(new Point(rel.RelIni.Location.X + rel.RelIni.Size.Width / 2, rel.RelIni.Location.Y + rel.RelIni.Size.Height / 2));
                        //rel.RelPuntos.Add(new Point(rel.RelFin.Location.X + rel.RelFin.Size.Width / 2, rel.RelFin.Location.Y + rel.RelFin.Size.Height / 2));
                    }
                }

                if (rel.isFull)
                {
                    if (rel.FiguraNombre.Substring(0, 3).Equals(TipoRelacion.Gen.ToString()))
                    {
                        Console.WriteLine("Herencia creara");
                        Figura_Generalizacion gen = new Figura_Generalizacion(rel);
                        gen.DibujarFigura();
                        Figuras.Figuras.Add(gen);
                        Figuras.CanvasSize = CanvasPanel.Size;
                        foreach (Control con in gen.Dibujador.RelLines)
                        {
                            CanvasPanel.Controls.Add(con);
                        }
                    }
                    else if (rel.FiguraNombre.Substring(0, 3).Equals(TipoRelacion.Agr.ToString()))
                    {
                        Console.WriteLine("Agregacion creara");
                        Figura_Agregacion gen = new Figura_Agregacion(rel);
                        gen.DibujarFigura();
                        Figuras.Figuras.Add(gen);
                        Figuras.CanvasSize = CanvasPanel.Size;


                        foreach (Control con in gen.Dibujador.RelLines)
                        {
                            CanvasPanel.Controls.Add(con);
                        }
                    }
                    else if (rel.FiguraNombre.Substring(0, 3).Equals(TipoRelacion.Asc.ToString()))
                    {
                        Console.WriteLine("Asociacion creara");
                        Figura_Asociacion gen = new Figura_Asociacion(rel);
                        gen.DibujarFigura();
                        Figuras.Figuras.Add(gen);
                        Figuras.CanvasSize = CanvasPanel.Size;


                        foreach (Control con in gen.Dibujador.RelLines)
                        {
                            CanvasPanel.Controls.Add(con);
                        }
                    }
                    else if (rel.FiguraNombre.Substring(0, 3).Equals(TipoRelacion.Cmp.ToString()))
                    {
                        Console.WriteLine("Generalizacion creara");
                        Figura_Composicion gen = new Figura_Composicion(rel);
                        gen.DibujarFigura();
                        Figuras.Figuras.Add(gen);
                        Figuras.CanvasSize = CanvasPanel.Size;
                        Console.WriteLine(gen.Dibujador.RelLines.Last().Size);

                        foreach (Control con in gen.Dibujador.RelLines)
                        {
                            CanvasPanel.Controls.Add(con);
                        }
                    }

                    //CanvasPanel.Controls.Add(GenArrow);
                    Drawing = false;
                }
            }
        }