37#ifndef SOMAIO_TRANSFORMATION_AFFINETRANSFORMATION3D_BASE_H
38#define SOMAIO_TRANSFORMATION_AFFINETRANSFORMATION3D_BASE_H
52 class Table :
public std::vector<T>
58 :
std::vector<T>(nitems, 0),
ncols(4) {}
64 Table(
const std::vector<T> & other )
65 :
std::vector<T>( other ),
ncols( 4 )
69 T & operator () (
int x,
int y=0 )
71 return (*
this)[ y*
ncols + x ];
74 T operator () (
int x,
int y=0 )
const
76 return (*
this)[ y*
ncols + x ];
84 this->std::vector<T>::operator = ( other );
123 bool notify_fail =
true );
126 const std::vector<double>& pos )
const;
127 virtual std::vector<float>
130 virtual std::vector<int>
transform(
const std::vector<int> & pos )
const
198 const std::vector<float> & other );
224 virtual std::vector<double>
227 virtual std::vector<float>
230 virtual std::vector<int>
transform(
const std::vector<int> & pos )
const
239 virtual std::vector<double>
241 virtual std::vector<float>
243 virtual std::vector<int>
291 affineTransformation3d1,
293 affineTransformation3d2 );
297 affineTransformation1,
299 affineTransformation2 );
302 operator << (
std::ostream& os,
340 inline std::vector<double>
342 const std::vector<double> & pos )
const
344 std::vector<double> tr = pos;
353 inline std::vector<float>
355 const std::vector<float> & pos )
const
357 std::vector<float> tr = pos;
366 inline std::vector<int>
368 const std::vector<int> & pos )
const
370 std::vector<int> tr = pos;
426 return Point3df( (
float) transformed[0], (
float) transformed[1],
427 (
float) transformed[2] );
439 AffineTransformation3dBase::
440 transformNormalFloat(
float x,
float y,
float z )
const
444 return Point3df( (
float) transformed[0], (
float) transformed[1],
445 (
float) transformed[2] );
450 AffineTransformation3dBase::
451 transformUnitNormal(
double x,
double y,
double z )
const
463 return Point3df( (
float) transformed[0], (
float) transformed[1],
464 (
float) transformed[2] );
476 AffineTransformation3dBase::
477 transformUnitNormal(
float x,
float y,
float z )
const
481 return Point3df( (
float) transformed[0], (
float) transformed[1],
482 (
float) transformed[2] );
AimsVector< float, 3 > Point3df
AimsVector< int16_t, 3 > Point3d
AimsVector< int32_t, 3 > Point3di
AimsVector< T, D > operator-(const AimsVector< T, D > &v1, const AimsVector< T, D > &v2)
AimsVector< double, 3 > Point3dd