/usr/share/netgen/libsrc/meshing/bisect.hpp is in netgen-headers 4.9.13.dfsg-8build2.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100  | #ifndef BISECT
#define BISECT
class BisectionOptions
{
public:
  const char * outfilename;
  const char * mlfilename;
  const char * refinementfilename;
  const char * femcode;
  int maxlevel;
  int usemarkedelements;
  bool refine_hp;
  bool refine_p;
  BisectionOptions ();
};
class ZRefinementOptions
{
public:
  int minref;
  ZRefinementOptions();
};
/*
extern void BisectTets (Mesh &, const CSGeometry *,
			BisectionOptions & opt);
*/
extern void BisectTetsCopyMesh (Mesh &, const class CSGeometry *,
				BisectionOptions & opt);
extern void ZRefinement (Mesh &, const CSGeometry *,
			 ZRefinementOptions & opt);
class Refinement
{
  MeshOptimize2d * optimizer2d;
public:
  Refinement ();
  virtual ~Refinement ();
  
  void Refine (Mesh & mesh) const;
  void Refine (Mesh & mesh);
  void Bisect (Mesh & mesh, class BisectionOptions & opt, Array<double> * quality_loss = NULL);
  void MakeSecondOrder (Mesh & mesh);
  virtual void PointBetween (const Point<3> & p1, const Point<3> & p2, double secpoint, 
			     int surfi, 
			     const PointGeomInfo & gi1, 
			     const PointGeomInfo & gi2,
			     Point<3> & newp, PointGeomInfo & newgi);
  virtual void PointBetween (const Point<3> & p1, const Point<3> & p2, double secpoint,
			     int surfi1, int surfi2, 
			     const EdgePointGeomInfo & ap1, 
			     const EdgePointGeomInfo & ap2,
			     Point<3> & newp, EdgePointGeomInfo & newgi);
  virtual Vec<3> GetTangent (const Point<3> & p, int surfi1, int surfi2,
                             const EdgePointGeomInfo & egi) const;
  virtual Vec<3> GetNormal (const Point<3> & p, int surfi1, 
                            const PointGeomInfo & gi) const;
  virtual void ProjectToSurface (Point<3> & p, int surfi);
  virtual void ProjectToSurface (Point<3> & p, int surfi, const PointGeomInfo & /* gi */)
  {
    ProjectToSurface (p, surfi);
  }
  virtual void ProjectToEdge (Point<3> & p, int surfi1, int surfi2, const EdgePointGeomInfo & egi) const;
  void ValidateSecondOrder (Mesh & mesh);
  void ValidateRefinedMesh (Mesh & mesh, 
			    Array<INDEX_2> & parents);
  MeshOptimize2d * Get2dOptimizer(void)
  {
    return optimizer2d;
  }
  void Set2dOptimizer(MeshOptimize2d * opti)
  {
    optimizer2d = opti;
  }
  
  virtual void LocalizeEdgePoints(Mesh & /* mesh */) const {;}
};
#endif
 |