BfldHandyMath Class Reference

List of all members.

Public Member Functions

 BfldHandyMath (void)

Static Public Member Functions

static double Det (double a11, double a12, double a13, double a21, double a22, double a23, double a31, double a32, double a33)
static double Det (const TVector3 &v1, const TVector3 &v2, const TVector3 &v3)
static bool IsCCW (const TVector3 &v1, const TVector3 &v2, const TVector3 &v3)
static bool IsInWedge (const TVector3 &v, const TVector3 &v1, const TVector3 &v2, const TVector3 &v3)
static bool IsInTri (const TVector3 &v, const TVector3 &v1, const TVector3 &v2, const TVector3 &v3)

Detailed Description

Definition at line 36 of file BFLInterpolation.cxx.


Constructor & Destructor Documentation

BfldHandyMath::BfldHandyMath ( void   )  [inline]

Definition at line 38 of file BFLInterpolation.cxx.

00038                       {
00039   }


Member Function Documentation

static double BfldHandyMath::Det ( const TVector3 &  v1,
const TVector3 &  v2,
const TVector3 &  v3 
) [inline, static]

Definition at line 48 of file BFLInterpolation.cxx.

00049                                        {
00050     return Det(v1.X(),v1.Y(),v1.Z(),
00051                v2.X(),v2.Y(),v2.Z(),
00052                v3.X(),v3.Y(),v3.Z());
00053   }

static double BfldHandyMath::Det ( double  a11,
double  a12,
double  a13,
double  a21,
double  a22,
double  a23,
double  a31,
double  a32,
double  a33 
) [inline, static]

Definition at line 41 of file BFLInterpolation.cxx.

Referenced by BFLInterpolation::PlanarInterpolation().

00043                                                      {
00044     return a11 * a22 * a33 - a11 * a23 * a32 - a12 * a21 * a33
00045       + a12 * a23 * a31 + a13 * a21 * a32 - a13 * a22 * a31;
00046   }

static bool BfldHandyMath::IsCCW ( const TVector3 &  v1,
const TVector3 &  v2,
const TVector3 &  v3 
) [inline, static]

Definition at line 58 of file BFLInterpolation.cxx.

00059                                         { 
00060     return (v2.X() - v1.X()) * (v3.Y() - v1.Y())
00061       - (v2.Y() - v1.Y()) * (v3.X() - v1.X())  > 0;
00062   }

static bool BfldHandyMath::IsInTri ( const TVector3 &  v,
const TVector3 &  v1,
const TVector3 &  v2,
const TVector3 &  v3 
) [inline, static]

Definition at line 76 of file BFLInterpolation.cxx.

Referenced by BFLInterpolation::PlanarInterpolation().

00077                                                              {
00078     bool flag1 = IsCCW(v2,v1,v3),
00079       flag2 = IsCCW(v2,v1,v),
00080       flag3 = IsCCW(v1,v3,v),
00081       flag4 = IsCCW(v2,v,v3);
00082     return ((flag1 && flag2 && flag3 && flag4)
00083             || (!flag1 && !flag2 && !flag3 && !flag4));
00084 
00085   }

static bool BfldHandyMath::IsInWedge ( const TVector3 &  v,
const TVector3 &  v1,
const TVector3 &  v2,
const TVector3 &  v3 
) [inline, static]

Definition at line 68 of file BFLInterpolation.cxx.

Referenced by BFLInterpolation::PlanarInterpolation().

00069                                                                {
00070     bool flag1 = IsCCW(v2,v1,v3),
00071       flag2 = IsCCW(v2,v1,v),
00072       flag3 = IsCCW(v1,v3,v);
00073     return ((flag1 && flag2 && flag3) || (!flag1 && !flag2 && !flag3));
00074   }


The documentation for this class was generated from the following file:

Generated on 25 Apr 2018 for loon by  doxygen 1.6.1