cogencomposite.hxx

来自「有限元学习研究用源代码(老外的),供科研人员参考」· HXX 代码 · 共 70 行

HXX
70
字号
#ifndef cogencomposite_hxx
#define cogencomposite_hxx

#ifndef cogenerator_hxx
#include "cogenerator.hxx"
#endif

#ifndef cogpair_hxx
#include "cogpair.hxx"
#endif
/*
class  cogPairToSegment{
public:
        virtual cogSegment operator()(cogSegment,cogSegment)=0;
};
*/

class CogenComposite
  :public Cogenerator,
   protected Cogeometry,
   public wzRange
{
  wzRegion	defaultRegion;
  wzFace	defaultFace;
  cogPairToSegment* region;
  cogPairToSegment* face;
public:
  wzArray<cogenerator>	generator;
  virtual cogenComposite	cogencomposite() const;
  wzIndex 	add(cogenerator gen);
  wzIndex 	add(cogeometry  geo);
  void 		remove(wzIndex gen);
  wzIndex	Point(wzPoint& p0) const;
  //  wzIndex	Line (cogFlag1& f, const cogLine& s) const;
  wzIndex 	BoundaryCondition(cogFlag1& f) const;
  wzpoints	generatePoints(cogeometry g,wzmetric r,wzchart c) const;
  virtual cogeometry	geometry() const {return (CogenComposite*)this;}
  CogenComposite(cogPairToSegment *r, cogPairToSegment *f);
  ~CogenComposite();
};

class CogenUnion
  :public CogenComposite
{
public:
  CogenUnion();
};
class CogenIntersection
  :public CogenComposite
{
public:
  CogenIntersection();
};
class CogenSplit
  :public CogenComposite
{
public:
  CogenSplit(cogRegion r);
};
class CogenOverlay
  :public CogenComposite
{
public:
  CogenOverlay(cogRegion r);
};

typedef wzProxy<CogenComposite> cogenComposite;

#endif

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?