Coons.h
1 /******************************************************************************
2 
3  (c) 2004-2014 Scientific Computation Research Center,
4  Rensselaer Polytechnic Institute. All rights reserved.
5 
6  The LICENSE-SCOREC file included with this distribution describes the terms
7  of the SCOREC Non-Commercial License this program is distributed under.
8 
9 *******************************************************************************/
10 #ifndef COONSPATCH_H_
11 #define COONSPATCH_H_
12 
13 #include "ParametricCurve.h"
14 #include "ParametricFace.h"
15 
16 class CoonsPatch {
17  public:
18  CoonsPatch(pMeshEnt in_vtx0,
19  pMeshEnt in_vtx1,
20  pMeshEnt in_vtx2,
21  pMeshEnt in_vtx3);
22 
23  virtual ~CoonsPatch() {
24  }
25 
26  int eval(Point2d in_xi, Point3d & out_xyz);
27  int order();
28  int deriv1(Point2d in_xi,
29  Point3d & out_xyz1,
30  Point3d & out_xyz2);
31 
32  private:
33  pMeshEnt m_vert0; // r(0, 0)
34  pMeshEnt m_vert1; // r(1, 0)
35  pMeshEnt m_vert2; // r(1, 1)
36  pMeshEnt m_vert3; // r(0, 1)
37 
38  pCurveGeom m_curve01; // r(u, 0)
39  pCurveGeom m_curve32; // r(u, 1)
40  pCurveGeom m_curve03; // r(0, v)
41  pCurveGeom m_curve12; // r(1, v)
42 };
43 
44 #endif // COONSPATCH_H_
Definition: Coons.h:16