plastimatch
Loading...
Searching...
No Matches
interpolate.h
Go to the documentation of this file.
1/* -----------------------------------------------------------------------
2 See COPYRIGHT.TXT and LICENSE.TXT for copyright and license information
3 ----------------------------------------------------------------------- */
4#ifndef _interpolate_h_
5#define _interpolate_h_
6
7#include "plmbase_config.h"
8#include "plm_int.h"
9
10class Volume;
11
13 float ma,
14 plm_long dmax,
15 plm_long* maf,
16 plm_long* mar,
17 float* fa1, float* fa2
18);
19
21 const float mijk[3],
22 plm_long mijk_f[3],
23 plm_long mijk_r[3],
24 float li_frac_1[3],
25 float li_frac_2[3],
26 const Volume *moving
27);
28
29/* Compute only fractional components, do not solve for value.
30 Clamping is not done; instead, fractions are set to 0.f if xyz
31 lies outside limits of dim. */
33 plm_long ijk_f[3],
34 float li_frac_1[3],
35 float li_frac_2[3],
36 const float ijk[3],
37 const plm_long dim[3]
38);
39
41 plm_long *ijk_f,
42 float *li_frac_1,
43 float *li_frac_2,
44 const float *ijk,
45 const plm_long *dim
46);
47
49 float f1[3],
50 float f2[3],
51 plm_long mvf,
52 float *m_img,
53 Volume *moving
54);
55
57 float f1[3],
58 float f2[3],
59 float rx,
60 plm_long mvf,
61 float *m_img,
62 Volume *moving
63);
64
66 float f1[3],
67 float f2[3],
68 float ry,
69 plm_long mvf,
70 float *m_img,
71 Volume *moving
72);
73
75 float f1[3],
76 float f2[3],
77 float rz,
78 plm_long mvf,
79 float *m_img,
80 Volume *moving
81);
82#endif
The Volume class represents a three-dimensional volume on a uniform grid. The volume can be located a...
Definition volume.h:38
plm_long dim[3]
Definition volume.h:42
EXTERNC float li_value(float f1[3], float f2[3], plm_long mvf, float *m_img, Volume *moving)
Definition interpolate.cxx:136
EXTERNC float li_value_dy(float f1[3], float f2[3], float ry, plm_long mvf, float *m_img, Volume *moving)
Definition interpolate.cxx:191
EXTERNC void li_clamp_3d(const float mijk[3], plm_long mijk_f[3], plm_long mijk_r[3], float li_frac_1[3], float li_frac_2[3], const Volume *moving)
Definition interpolate.cxx:88
EXTERNC float li_value_dz(float f1[3], float f2[3], float rz, plm_long mvf, float *m_img, Volume *moving)
Definition interpolate.cxx:219
EXTERNC void li_noclamp_3d(plm_long ijk_f[3], float li_frac_1[3], float li_frac_2[3], const float ijk[3], const plm_long dim[3])
Definition interpolate.cxx:106
EXTERNC float li_value_dx(float f1[3], float f2[3], float rx, plm_long mvf, float *m_img, Volume *moving)
Definition interpolate.cxx:163
EXTERNC void li_clamp(float ma, plm_long dmax, plm_long *maf, plm_long *mar, float *fa1, float *fa2)
Definition interpolate.cxx:18
EXTERNC void li_2d(plm_long *ijk_f, float *li_frac_1, float *li_frac_2, const float *ijk, const plm_long *dim)
Definition interpolate.cxx:123
#define PLMBASE_C_API
Definition plmbase_config.h:18