📄 ibgg0.h
字号:
/* last edit: Ilja Schmelzer -------------- 10-JUN-1994 15:08:24.69 */
/************************************************************************/
/* */
/* <<< I B G >>> - Intersection - Based Grid generation package */
/* */
/* Version 1.1 by Ilja Schmelzer schmelzer@iaas-berlin.d400.de */
/* */
/* to be distributed under IBG license conditions (see "readme.ibg") */
/* */
/************************************************************************/
/* <<< IBGG0 >>> - Intersection-Based Geometry
quadtree/octree data structure for grid generation
*/
#ifndef IBGG0_H
#define IBGG0_H
#ifndef IBGG_H
#include "ibgg.h"
#endif
typedef struct{
void (*RefineRegion)(ibgPtObject This, ibgPoint *n,
ibgFloat *length);
ibgPtObject pRefineRegion;
void (*RefineFace)(ibgPtObject This, ibgPoint *nface,
ibgFloat *normal, ibgFloat *tangential);
ibgPtObject pRefineFace;
void (*RefineLine)(ibgPtObject This, ibgPoint *nline,
ibgFloat *normal, ibgFloat *tangential);
ibgPtObject pRefineLine;
void (*RefineNode)(ibgPtObject This, ibgPoint *n,
ibgFloat *length);
ibgPtObject pRefineNode;
ibgBoolean (*RefineEdge) (ibgPtObject This,
ibgPoint *n1, ibgPoint *n2);
ibgPtObject pRefineEdge;
}ibggRefPar;
extern ibGeometry ibGeo; /* current geometry */
extern ibGrid ibgg; /* current grid (==ibgg0.gg) */
extern ibggRefPar ibggRef;
typedef struct _ibGrid00 ibGrid0;
ibGrid0 *ibgg0CoarseGrid(unsigned maxPoint,
unsigned nx, ibgFloat *x, unsigned fx,
unsigned ny, ibgFloat *y, unsigned fy,
unsigned nz, ibgFloat *z, unsigned fz);
ibGrid0 *ibgg0Free(ibGrid0 *g0);
int ibgg0getPoints(ibgPoints *p, ibGrid0 *g);
/* not implemented:
ibGrid0 *ibgg0Copy(ibGrid0 *g0);
*/
int ibgg0RegionOfPoint(ibGrid0 *g0, ibGeometry geom);
void ibgg0SetRefPar(ibggRefPar *ref,
void (*RefineRegion)(ibgPtObject This, ibgPoint *point,
ibgFloat *length),
ibgPtObject pRefineRegion,
void (*RefineFace)(ibgPtObject This, ibgPoint *point,
ibgFloat *normal, ibgFloat *tangential),
ibgPtObject pRefineFace,
void (*RefineLine)(ibgPtObject This, ibgPoint *point,
ibgFloat *normal, ibgFloat *tangential),
ibgPtObject pRefineLine,
void (*RefineNode)(ibgPtObject This, ibgPoint *point,
ibgFloat *length),
ibgPtObject pRefineNode,
ibgBoolean (*RefineEdge) (ibgPtObject This,
ibgPoint *n1, ibgPoint *n2),
ibgPtObject pRefineEdge
);
int ibgg0Refine (ibGrid0 *g0, ibGeometry geom, ibggRefPar *ref);
int ibgg0Boundary (ibGrid0 *g0, ibGeometry geom, ibggRefPar *ref,
unsigned maxpoint);
int ibgg3New(ibGrid0 *g0);
int ibgg0Delaunay(ibGrid0 *g0);
ibGrid *ibgg0Correct(ibGrid0 *gg);
/* internal nonsense */
int g0CAlloc(int max);
int g0NRealloc();
int g0QFree();
int g0BNShift();
#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -