Statistiques
| Révision :

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
}