| 336 |
|
return(NULL); |
| 337 |
|
/* else allocate */ |
| 338 |
|
#ifdef DEBUG |
| 339 |
< |
fprintf(stderr, "Building path from (theta,phi) (%.0f,%.0f) ", |
| 339 |
> |
fprintf(stderr, "Building path from (theta,phi) (%.1f,%.1f) ", |
| 340 |
|
get_theta180(from_rbf->invec), |
| 341 |
|
get_phi360(from_rbf->invec)); |
| 342 |
< |
fprintf(stderr, "to (%.0f,%.0f) with %d x %d matrix\n", |
| 342 |
> |
fprintf(stderr, "to (%.1f,%.1f) with %d x %d matrix\n", |
| 343 |
|
get_theta180(to_rbf->invec), |
| 344 |
|
get_phi360(to_rbf->invec), |
| 345 |
|
from_rbf->nrbf, to_rbf->nrbf); |
| 407 |
|
return(vother[im_rev] != NULL); |
| 408 |
|
} |
| 409 |
|
|
| 410 |
< |
/* Find context hull vertex to complete triangle (oriented call) */ |
| 410 |
> |
/* Find convex hull vertex to complete triangle (oriented call) */ |
| 411 |
|
static RBFNODE * |
| 412 |
|
find_chull_vert(const RBFNODE *rbf0, const RBFNODE *rbf1) |
| 413 |
|
{ |
| 428 |
|
if (DOT(vp, vmid) <= FTINY) |
| 429 |
|
continue; /* wrong orientation */ |
| 430 |
|
area2 = .25*DOT(vp,vp); |
| 431 |
< |
VSUB(vp, rbf->invec, rbf0->invec); |
| 431 |
> |
VSUB(vp, rbf->invec, vmid); |
| 432 |
|
dprod = -DOT(vp, vejn); |
| 433 |
|
VSUM(vp, vp, vejn, dprod); /* above guarantees non-zero */ |
| 434 |
|
dprod = DOT(vp, vmid) / VLEN(vp); |