Defines | |
#define | TEND_CMD(name, info) unrrduCmd tend_##name##Cmd = { #name, info, tend_##name##Main } |
#define | USAGE(info) |
#define | JUSTPARSE() |
#define | PARSE() |
#define | VEC_SIZE 3 |
Functions | |
void | _tenQball (const double b, const int gradcount, const double svals[], const double grads[], double qvals[]) |
void | _tenSegsamp2 (const int gradcount, const double qvals[], const double grads[], const double qpoints[], unsigned int seg[], double dists[]) |
void | _tenCalcdists (const int centcount, const double centroid[6], const int gradcount, const double qpoints[], double dists[]) |
void | _tenInitcent2 (const int gradcount, const double qvals[], const double grads[], double centroids[6]) |
int | _tenCalccent2 (const int gradcount, const double qpoints[], const double dists[], double centroid[6], unsigned int seg[]) |
void | _tenSeg2weights (const int gradcount, const int seg[], const int segcount, double weights[]) |
void | _tenQvals2points (const int gradcount, const double qvals[], const double grads[], double qpoints[]) |
double | _tenPldist (const double point[], const double line[]) |
void | twoTensFunc (double *p, double *x, int m, int n, void *data) |
void | formTensor2D (double ten[7], double lam1, double lam3, double phi) |
void | tenQGLInterpTwoEvalK (double oeval[3], const double evalA[3], const double evalB[3], const double tt) |
void | tenQGLInterpTwoEvalR (double oeval[3], const double evalA[3], const double evalB[3], const double tt) |
void | tenQGLInterpTwoEvec (double oevec[9], const double evecA[9], const double evecB[9], double tt) |
void | tenQGLInterpTwo (double oten[7], const double tenA[7], const double tenB[7], int ptype, double aa, tenInterpParm *tip) |
int | _tenQGLInterpNEval (double evalOut[3], const double *evalIn, const double *wght, unsigned int NN, int ptype, tenInterpParm *tip) |
int | _tenQGLInterpNEvec (double evecOut[9], const double *evecIn, const double *wght, unsigned int NN, tenInterpParm *tip) |
int | tenQGLInterpN (double tenOut[7], const double *tenIn, const double *wght, unsigned int NN, int ptype, tenInterpParm *tip) |
#define JUSTPARSE | ( | ) |
Value:
if ((pret=hestParse(hopt, argc, argv, &perr, hparm))) { \ if (1 == pret) { \ fprintf(stderr, "%s: %s\n", me, perr); free(perr); \ hestUsage(stderr, hopt, me, hparm); \ airMopError(mop); \ return 2; \ } else { \ /* ... like tears ... in rain. Time ... to die. */ \ exit(1); \ } \ }
#define PARSE | ( | ) |
Value:
JUSTPARSE(); \ if (4 == nin->dim \ && 6 == nin->axis[0].size \ && nrrdTypeBlock != nin->type) { \ ptrdiff_t min[4], max[4]; \ Nrrd *ntmp; \ /* create a confidence channel by padding on 1s */ \ min[0] = -1; min[1] = min[2] = min[3] = 0; \ max[0] = nin->axis[0].size-1; \ max[1] = nin->axis[1].size-1; \ max[2] = nin->axis[2].size-1; \ max[3] = nin->axis[3].size-1; \ ntmp = nrrdNew(); \ if (nrrdPad_nva(ntmp, nin, min, max, nrrdBoundaryPad, 1.0) \ || nrrdCopy(nin, ntmp)) { \ char *err; \ airMopAdd(mop, err = biffGetDone(NRRD), airFree, airMopAlways); \ fprintf(stderr, "%s: can't pad 6-comp tensor:\n%s", me, err); \ airMopError(mop); \ nrrdNuke(ntmp); \ return 2; \ } \ nrrdNuke(ntmp); \ }
#define USAGE | ( | info | ) |
Value:
if (!argc) { \ hestInfo(stdout, me, (info), hparm); \ hestUsage(stdout, hopt, me, hparm); \ hestGlossary(stdout, hopt, hparm); \ airMopError(mop); \ return 2; \ }
#define VEC_SIZE 3 |
int _tenCalccent2 | ( | const int | gradcount, | |
const double | qpoints[], | |||
const double | dists[], | |||
double | centroid[6], | |||
unsigned int | seg[] | |||
) |
void _tenCalcdists | ( | const int | centcount, | |
const double | centroid[6], | |||
const int | gradcount, | |||
const double | qpoints[], | |||
double | dists[] | |||
) |
void _tenInitcent2 | ( | const int | gradcount, | |
const double | qvals[], | |||
const double | grads[], | |||
double | centroids[6] | |||
) |
double _tenPldist | ( | const double | point[], | |
const double | line[] | |||
) |
void _tenQball | ( | const double | b, | |
const int | gradcount, | |||
const double | svals[], | |||
const double | grads[], | |||
double | qvals[] | |||
) |
int _tenQGLInterpNEval | ( | double | evalOut[3], | |
const double * | evalIn, | |||
const double * | wght, | |||
unsigned int | NN, | |||
int | ptype, | |||
tenInterpParm * | tip | |||
) |
int _tenQGLInterpNEvec | ( | double | evecOut[9], | |
const double * | evecIn, | |||
const double * | wght, | |||
unsigned int | NN, | |||
tenInterpParm * | tip | |||
) |
void _tenQvals2points | ( | const int | gradcount, | |
const double | qvals[], | |||
const double | grads[], | |||
double | qpoints[] | |||
) |
void _tenSeg2weights | ( | const int | gradcount, | |
const int | seg[], | |||
const int | segcount, | |||
double | weights[] | |||
) |
void _tenSegsamp2 | ( | const int | gradcount, | |
const double | qvals[], | |||
const double | grads[], | |||
const double | qpoints[], | |||
unsigned int | seg[], | |||
double | dists[] | |||
) |
void formTensor2D | ( | double | ten[7], | |
double | lam1, | |||
double | lam3, | |||
double | phi | |||
) |
int tenQGLInterpN | ( | double | tenOut[7], | |
const double * | tenIn, | |||
const double * | wght, | |||
unsigned int | NN, | |||
int | ptype, | |||
tenInterpParm * | tip | |||
) |
void tenQGLInterpTwo | ( | double | oten[7], | |
const double | tenA[7], | |||
const double | tenB[7], | |||
int | ptype, | |||
double | aa, | |||
tenInterpParm * | tip | |||
) |
void tenQGLInterpTwoEvalK | ( | double | oeval[3], | |
const double | evalA[3], | |||
const double | evalB[3], | |||
const double | tt | |||
) |
void tenQGLInterpTwoEvalR | ( | double | oeval[3], | |
const double | evalA[3], | |||
const double | evalB[3], | |||
const double | tt | |||
) |
void tenQGLInterpTwoEvec | ( | double | oevec[9], | |
const double | evecA[9], | |||
const double | evecB[9], | |||
double | tt | |||
) |
void twoTensFunc | ( | double * | p, | |
double * | x, | |||
int | m, | |||
int | n, | |||
void * | data | |||
) |