示例#1
0
文件: Base.cs 项目: jucadimon/g3D
    public void dibujarPunto(double xi, double yi, double zi, float r)
    {
        //dibujar cualquier punto 3D - inicio
        punto3D punto1   = new punto3D(xi, yi, zi);                   //punto inicial
        punto2D puntoini = new punto2D(punto1.X, punto1.Y, punto1.Z); //punto inicial a graficar

        grafico.DrawEllipse(lapiz, puntoini.xr, puntoini.yr, r, r);
        //dibujar cualquier punto 3D - fin

        //grafico.DrawString("P(x:" + xi + ",y:" + yi + ",z:" + zi + ")", letra, rrelleno, puntoini.xr, puntoini.yr);
    }
示例#2
0
文件: Base.cs 项目: jucadimon/g3D
    public void dibujarLinea(punto3D punto1, punto3D punto2)
    {
        //dibujar cualquier linea 3D - inicio
        //punto3D punto1 = new punto3D(xi, yi, zi);//punto inicial
        //punto3D punto2 = new punto3D(xf, yf, zf);//punto final
        punto2D puntoini = new punto2D(punto1.X, punto1.Y, punto1.Z);                //punto inicial a graficar
        punto2D puntofin = new punto2D(punto2.X, punto2.Y, punto2.Z);                //punto final a graficar

        grafico.DrawLine(lapiz, puntoini.xr, puntoini.yr, puntofin.xr, puntofin.yr); //dibujar la linea
        //dibujar cualquier linea 3D - fin

        //grafico.DrawString("P(x:" + xi + ",y:" + yi + ",z:" + zi + ")", letra, rrelleno, puntoini.xr, puntoini.yr);
        //grafico.DrawString("P(x:" + xf + ",y:" + yf + ",z:" + zf + ")", letra, rrelleno, puntofin.xr, puntofin.yr);
    }
示例#3
0
文件: Base.cs 项目: jucadimon/g3D
    public void dibujarPlanoCuadrado()
    {
        // metodo 1
        punto3D p1 = new punto3D(100, 100, 150);
        punto3D p2 = new punto3D(200, 100, 150);
        punto3D p3 = new punto3D(200, 200, 150);
        punto3D p4 = new punto3D(100, 200, 150);

        dibujarLinea(p1, p2);
        dibujarLinea(p2, p3);
        dibujarLinea(p3, p4);
        dibujarLinea(p4, p1);
        // metodo 2
        dibujarLinea(p1.X, p1.Y, p1.Z, p2.X, p2.Y, p2.Z);
        dibujarLinea(p2.X, p2.Y, p2.Z, p3.X, p3.Y, p3.Z);
        dibujarLinea(p3.X, p3.Y, p3.Z, p4.X, p4.Y, p4.Z);
        dibujarLinea(p4.X, p4.Y, p4.Z, p1.X, p1.Y, p1.Z);

        // dibujar el relleno
        punto2D pun1 = new punto2D(p1.X, p1.Y, p1.Z);
        punto2D pun2 = new punto2D(p2.X, p2.Y, p2.Z);
        punto2D pun3 = new punto2D(p3.X, p3.Y, p3.Z);
        punto2D pun4 = new punto2D(p4.X, p4.Y, p4.Z);
        // Create solid brush.
        SolidBrush blueBrush = new SolidBrush(Color.FromArgb(150, 23, 56, 78));
        // Color.FromArgb(127, 23, 56, 78) 127=transparencia, 23=rojo, 56=verde, 78=azul;
        // todos los valores comprendidos entre 0 y 255, (0, 255)
        // Color.Blue

        // Create points that define polygon.
        PointF point1 = new PointF(pun1.xr, pun1.yr);
        PointF point2 = new PointF(pun2.xr, pun2.yr);
        PointF point3 = new PointF(pun3.xr, pun3.yr);
        PointF point4 = new PointF(pun4.xr, pun4.yr);

        PointF[] curvePoints = { point1, point2, point3, point4 };

        // Define fill mode.
        FillMode newFillMode = FillMode.Winding;     // FillMode.Alternate y FillMode.Winding

        // Fill polygon to screen.
        grafico.FillPolygon(blueBrush, curvePoints, newFillMode);
    }
示例#4
0
文件: Base.cs 项目: jucadimon/g3D
 public punto2D(punto3D punto)
 {
     this.Xr = (float)(punto.Y - punto.X * (Math.Sqrt(2) / 2));
     this.Yr = (float)(punto.Z - punto.X * (Math.Sqrt(2) / 2));
 }
    static void Main()
    {
        Console.WriteLine("_________________________________2016_________________________________________\n");
        Console.WriteLine("__________________________TRANSITO Y TRANSPORTES______________________________\n");
        Console.WriteLine("______________________________________________________________________________\n");


        //
        double numal;

        numal = NumeroAleatorio(0, 11);
        Console.WriteLine("aleatorio:" + numal + "\n");
        //
        for (int i = 1; i <= 5; i++)
        {
            //mostar un punto2D
            punto2D punto = new punto2D(Math.Round(NumeroAleatorio(0, 1) + NumeroAleatorio(1, 10), 3), NumeroAleatorio(0, 1));
            Console.WriteLine("Punto2D ({0}) => x{1}: " + punto.x + " y{2}: " + punto.y, i, i, i);
            comodin.AppendLine("Punto2D ({" + i + "}) => x{" + i + "}: " + punto.x + " y{" + i + "}: " + punto.y);
            System.Threading.Thread.Sleep(100); //añadimos esta linea para pausar por "n" miliegundos y asi tener
            // mas aletoriedad en el resultado.
        }
        Console.WriteLine("\n");
        //mostar un punto2D
        punto2D p1 = new punto2D(NumeroAleatorio(1, 10), Math.Round(NumeroAleatorio(0, 1) + NumeroAleatorio(10, 20), 3));

        Console.WriteLine("mi punto2D => x: " + p1.x + " y: " + p1.y + "\n");
        Console.WriteLine("\n");
        //
        for (int i = 1; i <= 15; i++)
        {
            //mostar un punto3D
            punto3D punto = new punto3D(Math.Round(NumeroAleatorio(0, 1) + NumeroAleatorio(0, 15), 3), Math.Round(NumeroAleatorio(0, 1) + NumeroAleatorio(0, 100), 3), Math.Round(NumeroAleatorio(0, 1) + NumeroAleatorio(0, 900), 3));
            Console.WriteLine("Punto3D ({0}) => x{1}: " + punto.x + " y{2}: " + punto.y + " z{3}: " + punto.z, i, i, i, i);
            System.Threading.Thread.Sleep(100);
        }
        Console.WriteLine("\n");
        //agregar lineas al documento de exportacion:
        comodin.AppendLine("puntos 2D:");
        comodin.AppendLine("\n");
        comodin.AppendLine("mi punto2D => x: " + p1.x + " y: " + p1.y + "\n");
        Exportar();
        //informacion que da el sistema:
        Console.WriteLine("Nombre de usuario: {0}", Environment.UserName);
        Console.WriteLine("Directorio actual: {0}", Environment.CurrentDirectory);

        //empezamos:
        int teh = 2, pcm = 5;//damos valores iniciales
        int rel;

        rel = (teh * 60 / pcm);
        double[] periodos = new double[rel];//creamos un vector que alamcene los datos del aforo en cada
        //periodo de conteo durante el tiempo de estudio del aforo

        for (int i = 0; i < rel; i++)//agregamos una muestra aleatoria
        {
            periodos[i] = NumeroAleatorio(150, 300);
            System.Threading.Thread.Sleep(100);
        }

        for (int i = 0; i < rel; i++)//mostramos los datos del aforo
        {
            Console.WriteLine("N° vehiculos periodo {0} = {1}", i + 1, periodos[i]);
        }

        Console.ReadLine();
    }
示例#6
0
 public punto2D(punto3D punto)
 {
     xr = (float)(punto.Y + punto.X * (Math.Sqrt(2) / 2));
     yr = (float)(punto.Z + punto.X * (Math.Sqrt(2) / 2));
 }