CrvTri3.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 MESHADAPT_CRVTRI3_H
11 #define MESHADAPT_CRVTRI3_H
12 
13 #include "CrvFace.h"
14 
17 class CrvTri3 : public CrvFace {
18  public:
21  CrvTri3(pMeshFace in_face);
22 
25  CrvTri3(VtxPtrVec in_vert_vec);
26 
29  virtual ~CrvTri3() { }
30 
31  int eval(double u, double v, double * pos);
32  int eval_deriv1(double u, double v, Point3d&, Point3d&);
34  int v_data_size() const {
35  return 3;
36  }
37  std::string v_tag_name() const {
38  return std::string("crv_tri_3_data_tag");
39  }
40 
41  protected:
44  virtual void calc_face_ctrl_pts();
45 };
46 #endif//MESHADAPT_CRVTRI3_H
int eval(double u, double v, double *pos)
evaluate w.r.t. the barycentric/area coordinates
Definition: CrvTri3.cc:82
CrvTri3(pMeshFace in_face)
public constructor 1
Definition: CrvTri3.cc:23
abstract class representing curved mesh face
Definition: CrvFace.h:32
virtual void calc_face_ctrl_pts()
calculates the 10th Bezier control point associated with the face
Definition: CrvTri3.cc:101
int v_data_size() const
one face node for cubic triangular faces
Definition: CrvTri3.h:34
virtual ~CrvTri3()
dtor
Definition: CrvTri3.h:29
Curved triangular face of geometric order 3.
Definition: CrvTri3.h:17