root / bin / compute_cell_walls.cpp @ 1
Historique | Voir | Annoter | Télécharger (912 octet)
1 |
#include <math.h> |
---|---|
2 |
#include "constants.h" |
3 |
#include "compute_cell_walls.h" |
4 |
#include <stdio.h> |
5 |
|
6 |
/* this function computes the list of the indices of the wall of each cell */
|
7 |
|
8 |
void compute_cell_walls(double *vertices, int *cells_vertices, int *vertices_number_in_each_cell, |
9 |
int cell_number, int *cell_walls, int *wall_vertices, int wall_number){ |
10 |
|
11 |
int i,j,k,previous;
|
12 |
|
13 |
for (i=0;i<cell_number;i++){ |
14 |
for (j=vertices_number_in_each_cell[i];j<vertices_number_in_each_cell[i+1];j++){ previous=j-1; if (j==vertices_number_in_each_cell[i]){previous=vertices_number_in_each_cell[i+1]-1;} |
15 |
for (k=0;k<wall_number;k++){ |
16 |
if ((cells_vertices[previous]==wall_vertices[2*k] && cells_vertices[j]==wall_vertices[2*k+1]) || (cells_vertices[previous]==wall_vertices[2*k+1] && cells_vertices[j]==wall_vertices[2*k])){ |
17 |
cell_walls[j]=k; |
18 |
} |
19 |
} |
20 |
} |
21 |
} |
22 |
|
23 |
} |