📄 parameterization.c
字号:
#include "parameterization.h"void add_to_parameter_tab ( struct parameterization_tab_t *tab_p, struct coord_z3_t *cell_id, const struct mesh_t *m, double length) { long int l; struct parameterization_t *p; if (tab_p->nb % tab_p->blockminsize == 0) { /* allocate new block */ tab_p->tab = (struct parameterization_t *) realloc (tab_p->tab, (tab_p->nb + tab_p->blockminsize) * sizeof(struct parameterization_t)); assert(tab_p->tab); } l = linearize_cell_id (cell_id, m); p = tab_p->tab + tab_p->nb; p->parameter_id = l; p->length = length; tab_p->nb++;}struct parameterization_tab_t * new_parameterization () { struct parameterization_tab_t *parametrization; parametrization = (struct parameterization_tab_t *) malloc (sizeof(struct parameterization_tab_t)); parametrization->tab = NULL; parametrization->nb = 0; parametrization->blockminsize = 50; return (parametrization);}void free_parameterization (struct parameterization_tab_t *parameterization) { free(parameterization->tab); free(parameterization);}int cmp_parameterization (const void *a, const void *b){ const struct parameterization_t *aa = (const struct parameterization_t *) a; const struct parameterization_t *bb = (const struct parameterization_t *) b; if ( aa->parameter_id < bb->parameter_id) { return (-1); } return (1);}void dump_parameterization (FILE *fd, struct parameterization_tab_t *p, long int rayid) { long int l; qsort (p->tab, p->nb, sizeof(struct parameterization_t), cmp_parameterization); fprintf(fd, "%ld %d\n", rayid, p->nb); for (l=0; l<p->nb; l++) { fprintf(fd, "%ld %f ", (p->tab[l]).parameter_id, (p->tab[l]).length ); } fprintf(fd, "\n");}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -