// Start is called before the first frame update void Start() { main = GameObject.Find("MainController").GetComponent <Bresenham>(); }
public void GraficadoraRellenoZ(PictureBox[] pictureBoxes, ComboBox color, ListBox[] listas) { int rango = ((int)mLado * (int)SF); int veri = 0; mGraficosZ = pictureBoxes[0].CreateGraphics(); mGraficosX = pictureBoxes[1].CreateGraphics(); mGraficosY = pictureBoxes[2].CreateGraphics(); PointF[] puntosEntreLineas; DeterminarPuntos(); //Perpspectiva Z Lado Izquierdo PointF[] puntosAC; PointF[] puntosCE; PointF[] puntosIzquierda; puntosAC = Bresenham.ObtenerPuntos(mA, mC, rango); puntosCE = Bresenham.ObtenerPuntos(mC, mE, rango); puntosIzquierda = puntosAC.Concat(puntosCE).ToArray(); //Perpspectiva Z Lado Derecho PointF[] puntosBD; PointF[] puntosDF; PointF[] puntosDerecha; puntosBD = Bresenham.ObtenerPuntos(mB, mD, rango); puntosDF = Bresenham.ObtenerPuntos(mD, mF, rango); puntosDerecha = puntosBD.Concat(puntosDF).ToArray(); veri = puntosDerecha.Length - 1; do { mPen = SeleccionarColor(color); puntosEntreLineas = Bresenham.ObtenerPuntos(puntosIzquierda[veri], puntosDerecha[veri], puntosDerecha.Length); for (int k = puntosDerecha.Length - 1, j = 0; k > 0; k--, j++) { Thread.Sleep(this.velocidad); //Z mGraficosZ.DrawLine(mPen, puntosIzquierda[k], puntosDerecha[k]); listas[0].Items.Add(puntosIzquierda[k].X.ToString()); listas[1].Items.Add(puntosIzquierda[k].Y.ToString()); listas[2].Items.Add(puntosDerecha[k].X.ToString()); listas[3].Items.Add(puntosDerecha[k].Y.ToString()); //Y Point pixel = new Point(); pixel.X = (int)puntosEntreLineas[k].X; pixel.Y = (int)puntosEntreLineas[k].Y; listas[4].Items.Add(puntosIzquierda[k].X.ToString()); listas[5].Items.Add(puntosIzquierda[k].Y.ToString()); listas[6].Items.Add(puntosDerecha[k].X.ToString()); listas[7].Items.Add(puntosDerecha[k].Y.ToString()); listas[12].Items.Add(pixel.X + "," + pixel.Y); Rectangle rect = new Rectangle(pixel, new Size(1, 1)); mGraficosY.DrawRectangle(mPen, rect); } mGraficosX.DrawLine(mPen, puntosIzquierda[veri], puntosDerecha[veri]); listas[8].Items.Add(puntosIzquierda[veri].X.ToString()); listas[9].Items.Add(puntosDerecha[veri].Y.ToString()); listas[10].Items.Add(puntosDerecha[veri].X.ToString()); listas[11].Items.Add(puntosDerecha[veri].Y.ToString()); veri--; } while (veri != 0); /*mGraficosZ.DrawLine(mPen, mA, mB); * mGraficosZ.DrawLine(mPen, mA, mC); * mGraficosZ.DrawLine(mPen, mB, mD); * mGraficosZ.DrawLine(mPen, mC, mE); * mGraficosZ.DrawLine(mPen, mD, mF); * mGraficosZ.DrawLine(mPen, mE, mF);*/ }