CMS 3D CMS Logo

Public Types | Public Member Functions | Private Attributes

ConformalMappingFit::MappedPoint< T > Class Template Reference

List of all members.

Public Types

typedef Basic2DVector< T > PointXY

Public Member Functions

 MappedPoint ()
 MappedPoint (const T &aU, const T &aV, const T &aWeight, const TkRotation< T > *aRot)
 MappedPoint (const PointXY &point, const T &weight, const TkRotation< T > *aRot)
u () const
PointXY unmap () const
unmappedWeight () const
v () const
weight () const

Private Attributes

const TkRotation< T > * pRot
theU
theV
theW

Detailed Description

template<class T>
class ConformalMappingFit::MappedPoint< T >

Definition at line 44 of file ConformalMappingFit.h.


Member Typedef Documentation

template<class T >
typedef Basic2DVector<T> ConformalMappingFit::MappedPoint< T >::PointXY

Definition at line 46 of file ConformalMappingFit.h.


Constructor & Destructor Documentation

template<class T >
ConformalMappingFit::MappedPoint< T >::MappedPoint ( ) [inline]

Definition at line 47 of file ConformalMappingFit.h.

: theU(0), theV(0), theW(0), pRot(0) { }
template<class T >
ConformalMappingFit::MappedPoint< T >::MappedPoint ( const T &  aU,
const T &  aV,
const T &  aWeight,
const TkRotation< T > *  aRot 
) [inline]

Definition at line 48 of file ConformalMappingFit.h.

      : theU(aU), theV(aV), theW(aWeight), pRot(aRot) { }
template<class T >
ConformalMappingFit::MappedPoint< T >::MappedPoint ( const PointXY point,
const T &  weight,
const TkRotation< T > *  aRot 
) [inline]

Definition at line 51 of file ConformalMappingFit.h.

References Basic2DVector< T >::mag2(), point, ConformalMappingFit::MappedPoint< T >::theU, ConformalMappingFit::MappedPoint< T >::theV, ConformalMappingFit::MappedPoint< T >::theW, Basic3DVector< T >::x(), and Basic3DVector< T >::y().

      : pRot(aRot) {
      T radius2 = point.mag2();
      Basic3DVector<T> rotated = (*pRot) * point;
      theU = rotated.x() / radius2;
      theV = rotated.y() / radius2;
      theW = weight * radius2 * radius2; 
    }

Member Function Documentation

template<class T >
T ConformalMappingFit::MappedPoint< T >::u ( ) const [inline]

Definition at line 60 of file ConformalMappingFit.h.

References ConformalMappingFit::MappedPoint< T >::theU.

{return theU; }
template<class T >
PointXY ConformalMappingFit::MappedPoint< T >::unmap ( ) const [inline]

Definition at line 63 of file ConformalMappingFit.h.

References ConformalMappingFit::MappedPoint< T >::theU, ConformalMappingFit::MappedPoint< T >::theV, tmp, Basic3DVector< T >::x(), and Basic3DVector< T >::y().

                           {
      T invRadius2 = theU*theU+theV*theV;
      Basic3DVector<T> tmp
          = (*pRot).multiplyInverse(Basic2DVector<T>(theU,theV));
      return PointXY(tmp.x()/invRadius2, tmp.y()/invRadius2);
    }
template<class T >
T ConformalMappingFit::MappedPoint< T >::unmappedWeight ( ) const [inline]
template<class T >
T ConformalMappingFit::MappedPoint< T >::v ( ) const [inline]

Definition at line 61 of file ConformalMappingFit.h.

References ConformalMappingFit::MappedPoint< T >::theV.

{return theV; }
template<class T >
T ConformalMappingFit::MappedPoint< T >::weight ( ) const [inline]

Definition at line 62 of file ConformalMappingFit.h.

References ConformalMappingFit::MappedPoint< T >::theW.

{return theW; }

Member Data Documentation

template<class T >
const TkRotation<T>* ConformalMappingFit::MappedPoint< T >::pRot [private]

Definition at line 75 of file ConformalMappingFit.h.

template<class T >
T ConformalMappingFit::MappedPoint< T >::theU [private]
template<class T >
T ConformalMappingFit::MappedPoint< T >::theV [private]
template<class T >
T ConformalMappingFit::MappedPoint< T >::theW [private]