OpendTect  6.6
Public Member Functions | Public Attributes | List of all members
Interpolate::PolyReg3D< T > Class Template Reference

Interpolate 3D regularly sampled, using a 3rd order surface. More...

Public Member Functions

 PolyReg3D ()
 
 PolyReg3D (const T *const *const *v)
 
 PolyReg3D (T vm100, T vm101, T vm110, T vm111, T v0m10, T v0m11, T v00m1, T v000, T v001, T v002, T v01m1, T v010, T v011, T v012, T v020, T v021, T v1m10, T v1m11, T v10m1, T v100, T v101, T v102, T v11m1, T v110, T v111, T v112, T v120, T v121, T v200, T v201, T v210, T v211)
 
T apply (float x, float y, float z) const
 
void set (T v000, T v100, T v010, T v110, T v001, T v101, T v011, T v111, T vxym1, T vxzm1, T vyzm1, T vxy1, T vxz1, T vyz1)
 
void set (T vm100, T vm101, T vm110, T vm111, T v0m10, T v0m11, T v00m1, T v000, T v001, T v002, T v01m1, T v010, T v011, T v012, T v020, T v021, T v1m10, T v1m11, T v10m1, T v100, T v101, T v102, T v11m1, T v110, T v111, T v112, T v120, T v121, T v200, T v201, T v210, T v211)
 

Public Attributes

T a_ [14]
 

Detailed Description

template<class T>
class Interpolate::PolyReg3D< T >

Interpolate 3D regularly sampled, using a 3rd order surface.

Current implementation takes the average of the outer squares. In the parameter passing, the z is the fastest dimension.


       ..    ..       Z  Y-dir
  ..  ....  ....  ..  ^ /
  ..  ....  ....  ..  | --> X-dir
       ..    ..

  ^- From here to -^
  x=-1   0      1     2

  

<>

Constructor & Destructor Documentation

◆ PolyReg3D() [1/3]

template<class T >
Interpolate::PolyReg3D< T >::PolyReg3D ( )
inline

◆ PolyReg3D() [2/3]

template<class T >
Interpolate::PolyReg3D< T >::PolyReg3D ( const T *const *const *  v)
inline

◆ PolyReg3D() [3/3]

template<class T >
Interpolate::PolyReg3D< T >::PolyReg3D ( T  vm100,
T  vm101,
T  vm110,
T  vm111,
T  v0m10,
T  v0m11,
T  v00m1,
T  v000,
T  v001,
T  v002,
T  v01m1,
T  v010,
T  v011,
T  v012,
T  v020,
T  v021,
T  v1m10,
T  v1m11,
T  v10m1,
T  v100,
T  v101,
T  v102,
T  v11m1,
T  v110,
T  v111,
T  v112,
T  v120,
T  v121,
T  v200,
T  v201,
T  v210,
T  v211 
)
inline

Member Function Documentation

◆ apply()

template<class T >
T Interpolate::PolyReg3D< T >::apply ( float  x,
float  y,
float  z 
) const
inline

◆ set() [1/2]

template<class T >
void Interpolate::PolyReg3D< T >::set ( T  v000,
T  v100,
T  v010,
T  v110,
T  v001,
T  v101,
T  v011,
T  v111,
T  vxym1,
T  vxzm1,
T  vyzm1,
T  vxy1,
T  vxz1,
T  vyz1 
)
inline

◆ set() [2/2]

template<class T >
void Interpolate::PolyReg3D< T >::set ( T  vm100,
T  vm101,
T  vm110,
T  vm111,
T  v0m10,
T  v0m11,
T  v00m1,
T  v000,
T  v001,
T  v002,
T  v01m1,
T  v010,
T  v011,
T  v012,
T  v020,
T  v021,
T  v1m10,
T  v1m11,
T  v10m1,
T  v100,
T  v101,
T  v102,
T  v11m1,
T  v110,
T  v111,
T  v112,
T  v120,
T  v121,
T  v200,
T  v201,
T  v210,
T  v211 
)
inline

Member Data Documentation

◆ a_

template<class T >
T Interpolate::PolyReg3D< T >::a_[14]

Generated at for the OpendTect seismic interpretation project. Copyright (C): dGB Beheer B.V. 1995-2022