📄 cogenprofile.hxx
字号:
#ifndef cogenprofile_hxx#define cogenprofile_hxx#ifndef cogenoctree_hxx#include "cogenoctree.hxx"#endifclass wzProfileDelaunayGenerator :public wzDelaunayGenerator{ virtual void defineRegionOfCell(int c, cogeometry g); virtual void defineFaceOfCell(int c, cogeometry g); virtual void defineFaceOutside(int c, cogeometry g);public: wzProfileDelaunayGenerator(wzIndex i, wzIndex j) :wzDelaunayGenerator(i,j){}};class CogenProfile :public CogenOctree{ wzIndex nz,ny,nx,np,ixold; wzInteger bz,ez,by,ey,bm,em; wzFloat z0,y0,x0; wzFloat dz,dy,dx; wzInteger sig; wzArray<wzFloat> zz; wzArray<wzFloat> yy; wzArray<wzFloat> xx;public: wzFloat dmmin,materialShiftFactor; wzFloat horizontalFactor; wzFloat zmin,zmax; wzFloat ymin,ymax; wzFloat xmin,xmax; void setRelativeBox(wzIndex yb,wzIndex ye, wzIndex zb,wzIndex ze, wzIndex mb,wzIndex me, wzFloat xminrel,wzFloat xmaxrel); CogenProfile(wzString s); // virtual wzFloat chi(const wzPoint& p) const; virtual wzIndex Point(wzPoint& p0) const; virtual wzIndex Line (cogFlag1& f, const cogLine& s) const; virtual wzIndex Triangle(cogFlag2& f, const cogFlag1& o, const cogTriangle& s) const; virtual wzIndex Tetrahedron(cogFlag3& f, const cogFlag2& o, const cogTetrahedron& s) const; virtual wzIndex BoundaryCondition(cogFlag1& f) const; // virtual wzpoints generatePoints(cogeometry g,wzmetric r,wzchart c) const; virtual wzgrid generateGrid(cogeometry g,wzpoints plist) const; virtual void getMetric(wzMetricData& data, const wzPoint& p) const; virtual void getMetric(wzMetricData& data, const cogFlag1& f) const; virtual void endInitialization();private: void moveMaterialsUp(wzRange& range, wzpoints plist, wzArray<wzFloat>& shift, wzFloat d) const; void moveMaterialsDown(wzRange& range, wzArray<wzPoint>& Point, wzArray<wzFloat>& shift, wzIndex beg, wzFloat *min, wzFloat *xmax) const;};typedef wzProxy<CogenProfile> cogenProfile;#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -