Document code, and clean up
This commit is contained in:
@@ -19,7 +19,7 @@ void mobius(float *d_surface, int i, int j, int grid_size)
|
||||
d_surface[2] = v * sin(u / 2);
|
||||
}
|
||||
|
||||
void toro(float *d_surface, int i, int j, int grid_size)
|
||||
void torus(float *d_surface, int i, int j, int grid_size)
|
||||
{
|
||||
float u = (2*M_PI) * ((float)i/grid_size );
|
||||
float v = (2*M_PI) * ((float)j/grid_size );
|
||||
@@ -40,51 +40,39 @@ void klein(float *d_surface, int i, int j, int grid_size)
|
||||
//d_surface[2] = sin(v)*sin(u/2);
|
||||
}
|
||||
|
||||
float * generate_surface(int grid_size)
|
||||
float * generate_surface(int grid_size, unsigned char * m)
|
||||
{
|
||||
long size = grid_size*grid_size*2*3*3*2;
|
||||
function_t f = klein;
|
||||
float * d_surface;
|
||||
int k=0;
|
||||
function_t f;
|
||||
int i,j,k=0;
|
||||
long size;
|
||||
|
||||
*m = 3;
|
||||
f = klein;
|
||||
size = grid_size*grid_size*2*3*(*m);
|
||||
|
||||
d_surface = malloc((size+1)*sizeof(float));
|
||||
d_surface[0] = size;
|
||||
|
||||
for (int i = 0; i < grid_size; i++)
|
||||
for( i = 0; i < grid_size; i++)
|
||||
{
|
||||
for (int j = 0; j < grid_size; j++)
|
||||
for( j = 0; j < grid_size; j++)
|
||||
{
|
||||
// triangle 1, front
|
||||
// triangle 1
|
||||
f(&d_surface[k + 1], i, j, grid_size);
|
||||
k+=3;
|
||||
k+=*m;
|
||||
f(&d_surface[k + 1], i + 1, j, grid_size);
|
||||
k+=3;
|
||||
k+=*m;
|
||||
f(&d_surface[k + 1], i + 1, j + 1, grid_size);
|
||||
k+=3;
|
||||
k+=*m;
|
||||
|
||||
// triangle 1, back
|
||||
// triangle 2
|
||||
f(&d_surface[k + 1], i + 1, j + 1, grid_size);
|
||||
k+=3;
|
||||
f(&d_surface[k + 1], i + 1, j, grid_size);
|
||||
k+=3;
|
||||
f(&d_surface[k + 1], i, j, grid_size);
|
||||
k+=3;
|
||||
|
||||
// triangle 2, font
|
||||
f(&d_surface[k + 1], i, j, grid_size);
|
||||
k+=3;
|
||||
k+=*m;
|
||||
f(&d_surface[k + 1], i, j + 1, grid_size);
|
||||
k+=3;
|
||||
f(&d_surface[k + 1], i + 1, j + 1, grid_size);
|
||||
k+=3;
|
||||
|
||||
// triangle 2, back
|
||||
f(&d_surface[k + 1], i + 1, j + 1, grid_size);
|
||||
k+=3;
|
||||
f(&d_surface[k + 1], i, j + 1, grid_size);
|
||||
k+=3;
|
||||
k+=*m;
|
||||
f(&d_surface[k + 1], i, j, grid_size);
|
||||
k+=3;
|
||||
k+=*m;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user