Advertisement
Guest User

Untitled

a guest
Feb 18th, 2013
188
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 2.83 KB | None | 0 0
  1. // initialize cube array
  2.             points = new Matrix[11, 11, 11];
  3.  
  4.             for (int i = 0; i < 11; i++)
  5.             {
  6.                 for (int j = 0; j < 11; j++)
  7.                 {
  8.                     for (int k = 0; k < 11; k++)
  9.                     {
  10.                         points[i, j, k] = Matrix.CreateTranslation(new Vector3(100, 100, 100));
  11.                     }
  12.                 }
  13.             }
  14.  
  15.             for (int i = 0; i < 11; i++)
  16.             {
  17.                 for (int j = 0; j < 11; j++)
  18.                 {
  19.                     points[i, j, 0] = Matrix.CreateTranslation(new Vector3(i - 5, j - 5, 5));
  20.                     points[i, j, 10] = Matrix.CreateTranslation(new Vector3(i - 5, j - 5, -5));
  21.                 }
  22.             }
  23.  
  24.             for (int j = 0; j < 11; j++)
  25.             {
  26.                 for (int k = 0; k < 11; k++)
  27.                 {
  28.                     points[0, j, k] = Matrix.CreateTranslation(new Vector3(-5, j - 5, k - 5));
  29.                     points[10, j, k] = Matrix.CreateTranslation(new Vector3(5, j - 5, k - 5));
  30.                 }
  31.             }
  32.  
  33.             for (int i = 0; i < 11; i++)
  34.             {
  35.                 for (int k = 0; k < 11; k++)
  36.                 {
  37.                     points[i, 0, k] = Matrix.CreateTranslation(new Vector3(i - 5, -5, k - 5));
  38.                     points[i, 10, k] = Matrix.CreateTranslation(new Vector3(i - 5, 5, k - 5));
  39.                 }
  40.             }
  41.             // end cube array initialization
  42.  
  43.             // create sphere array
  44.             double d;
  45.             double theta;
  46.             double phi;
  47.             double r = 5.5;
  48.  
  49.             spherePoints = new Matrix[11,11,11];
  50.             for (int i = 0; i < 11; i++)
  51.             {
  52.                 for (int j = 0; j < 11; j++)
  53.                 {
  54.                     for (int k = 0; k < 11; k++)
  55.                     {
  56.                         if (points[i, j, k] != Matrix.CreateTranslation(new Vector3(100, 100, 100)))
  57.                         {
  58.                             d = Math.Sqrt(Math.Pow(i, 2) + Math.Pow(j, 2) + Math.Pow(k, 2));
  59.                             theta = Math.Acos(k / d);
  60.                             phi = Math.Atan2(j, i);
  61.  
  62.                             spherePoints[i, j, k] = Matrix.CreateTranslation(new Vector3((float)(r * Math.Sin(theta) * Math.Cos(phi)),
  63.                                                                                         (float)(r * Math.Sin(theta) * Math.Sin(phi)),
  64.                                                                                         (float)(r * Math.Cos(theta))));
  65.                         }
  66.                         else
  67.                             spherePoints[i, j, k] = Matrix.CreateTranslation(new Vector3(100, 100, 100));
  68.                     }
  69.                 }
  70.             }
  71.             // end creation of sphere array
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement