示例#1
0
        private void cmdDraw_Click(object sender, EventArgs e)
        {
            int nX, nY, nZ;

            nX = int.Parse(txtX.Text);
            nY = int.Parse(txtY.Text);
            nZ = -int.Parse(txtZ.Text);

            int nTam = 360;
            int lnNX = 0;
            int lnNY = 0;

            for (int r = 0; r <= nTam; r = r + 50)
            {
                for (int i = 0; i <= nTam; i++)
                {
                    double DegInRad = 0;

                    DegInRad = i * (Math.PI / 180);

                    lnNX = Convert.ToInt32(Math.Round(0 + ((Math.Cos(DegInRad) * 20)), 0));
                    lnNY = Convert.ToInt32(Math.Round(0 + ((Math.Sin(DegInRad) * 20)), 0));
                    Pixel3D oPixel = new Pixel3D(oPen.ToArgb(), lnNX, lnNY, 0).Rotate(0, r);

                    oMatriz.Add(new Pixel3D(Color.Red.ToArgb(), oPixel.nX + nX, oPixel.nY + nY, oPixel.nZ + nZ));
                }
            }
            for (int r = 0; r <= nTam; r = r + 50)
            {
                for (int i = 0; i <= nTam; i++)
                {
                    double DegInRad = 0;

                    DegInRad = i * (Math.PI / 180);

                    lnNX = Convert.ToInt32(Math.Round(0 + ((Math.Cos(DegInRad) * 20)), 0));
                    lnNY = Convert.ToInt32(Math.Round(0 + ((Math.Sin(DegInRad) * 20)), 0));
                    Pixel3D oPixel = new Pixel3D(oPen.ToArgb(), lnNX, lnNY, 0).Rotate(r, 0);

                    oMatriz.Add(new Pixel3D(Color.Red.ToArgb(), oPixel.nX + nX, oPixel.nY + nY, oPixel.nZ + nZ));
                }
            }
            //Random random = new Random();
            //for (int r = 0; r <= 500; r++)
            //{

            //    oMatriz.Add(new Pixel3D(Color.White.ToArgb(), random.Next(400), random.Next(400), -random.Next(400)));
            //    oMatriz.Add(new Pixel3D(Color.White.ToArgb(), random.Next(400), -random.Next(400), random.Next(400)));
            //    oMatriz.Add(new Pixel3D(Color.White.ToArgb(), -random.Next(400), random.Next(400), random.Next(400)));

            //    oMatriz.Add(new Pixel3D(Color.White.ToArgb(), -random.Next(400), random.Next(400), random.Next(400)));
            //    oMatriz.Add(new Pixel3D(Color.White.ToArgb(), random.Next(400), -random.Next(400), random.Next(400)));
            //    oMatriz.Add(new Pixel3D(Color.White.ToArgb(), random.Next(400), random.Next(400), -random.Next(400)));

            //    oMatriz.Add(new Pixel3D(Color.White.ToArgb(), -random.Next(400), random.Next(400), -random.Next(400)));
            //    oMatriz.Add(new Pixel3D(Color.White.ToArgb(), -random.Next(400), -random.Next(400), random.Next(400)));
            //    oMatriz.Add(new Pixel3D(Color.White.ToArgb(), random.Next(400), -random.Next(400), -random.Next(400)));
            //}
        }
        public Pixel To2D()
        {
            Pixel3D oRetorno = CalcCoordenadas();

            return(new Pixel(nCor, oRetorno.nX, oRetorno.nY));
        }