⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 triangulate.h

📁 由TIN生成DEM
💻 H
字号:
//#pragma once#define DTOR 0.01745329252#define ABS(x) ( (x) < 0 ? -(x) : (x) )#define MIN(x,y) ( x < y ? x : y )#define MAX(x,y) ( x < y ? y : x )#define MODULUS(p) (sqrt((p).x * (p).x + (p).y * (p).y + (p).z * (p).z) )#define SIGN(x) ( x < 0 ? -1 : 1 )#define DOTPRODUCT(v1,v2) ( v1.x*v2.x + v1.y*v2.y + v1.z*v2.z )#define INVERTVECTOR(p1) p1.x = -p1.x; p1.y = -p1.y; p1.z = -p1.z#define CROSSPROD(p1,p2,p3) p3.x = p1.y*p2.z - p1.z*p2.y;p3.y = p1.z*p2.x - p1.x*p2.z;p3.z = p1.x*p2.y - p1.y*p2.x#define FALSE 0#define TRUE 1#define EPSILON		0.00000011	   /* small float for vertex closeness	*/#define INFINITY       	1.0E10     /* representation of infinity	*/typedef struct {  double x,y,z;} XYZ;typedef struct TRIANGLE {  unsigned int p1,p2,p3;} TRIANGLE;typedef struct EDGE {  unsigned int p1,p2;} EDGE;typedef struct {  //double a,b,c,d;  XYZ P0,P1,P2,P3;} PLANE;/* Prototypes */extern void GenDEM(char filename[255]);extern int gettriangulation(void);extern void triangulate(int,XYZ *,TRIANGLE *,unsigned int *);extern int intriang(double,double,XYZ,XYZ,XYZ);extern double planepoint(double,double,XYZ,XYZ,XYZ);extern int circumcircle(double,double,double,double,double,double,double,double,double *,double *,double *);extern int whichside(double,double,double,double,double,double);extern void AddFace(XYZ *);/* The maximum number of edges in the edge list */#define EMAX 20000#define  xcells  100#define  ycells  100#define  trimax  65535 

#define HIGH  1
#define RANG  100
extern PLANE   *demGrid;extern int nPlane;

⌨️ 快捷键说明

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