21 #ifndef IMG_ALG_TRANSFORM_ALG_TRANSFORM_HH
22 #define IMG_ALG_TRANSFORM_ALG_TRANSFORM_HH
29 namespace ost {
namespace img {
namespace alg {
36 template <
typename T,
class D>
47 boost::shared_ptr<ImageStateImpl<T,D> > nisi = isi.CloneState(
false);
49 Mat4 imat = tf_.InverseMatrix();
51 if(offset_==Vec3(0.0,0.0,0.0)) {
54 Vec3 vold_norm=Vec3(imat * Vec4(p.
ToVec3()));
55 nisi->Value(it) = isi.CalcIntpolValue(vold_norm);
60 Vec3 vold_norm=Vec3(imat * Vec4(p.
ToVec3()-offset_))+offset_;
61 nisi->Value(it) = isi.CalcIntpolValue(vold_norm);
75 typedef ImageStateConstModOPAlgorithm<TransformFnc>
Transform;
ImageStateConstModOPAlgorithm< TransformFnc > Transform
#define DLLEXPORT_IMG_ALG
bool AtEnd() const
Returns true if iterator has reached end.
boost::shared_ptr< ImageStateBase > ImageStateBasePtr
class encapsulating 1D to 3D point