initial upload
This commit is contained in:
63
archive/tetgen2gmsh/data_func.h
Normal file
63
archive/tetgen2gmsh/data_func.h
Normal file
@@ -0,0 +1,63 @@
|
||||
#ifndef _DATA_FUNC_H
|
||||
#define _DATA_FUNC_H
|
||||
#include <fstream>
|
||||
#include <iostream>
|
||||
#include <string.h>
|
||||
#include <sstream>
|
||||
#include <iomanip>
|
||||
#include <ctime>
|
||||
#include <cmath>
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
#include <unistd.h>
|
||||
#define pole_radius 6356752.3
|
||||
#define equator_radius 6378137
|
||||
#define pi 3.1415926535897932384626433832795
|
||||
#define OUTPUT "-o"
|
||||
using namespace std;
|
||||
|
||||
struct vector //<2F><><EFBFBD><EFBFBD>ʸ<EFBFBD><CAB8><EFBFBD>ṹ<EFBFBD><E1B9B9>
|
||||
{
|
||||
double x,y,z;
|
||||
};
|
||||
|
||||
struct vertex //<2F><><EFBFBD>嶥<EFBFBD><E5B6A5><EFBFBD>ṹ<EFBFBD><E1B9B9>
|
||||
{
|
||||
int No;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
vector vt;;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
};
|
||||
|
||||
struct edge
|
||||
{
|
||||
int No;
|
||||
int ver[2];
|
||||
};
|
||||
|
||||
struct face
|
||||
{
|
||||
int No;
|
||||
int ver[3];
|
||||
};
|
||||
|
||||
struct tetra //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ṹ<EFBFBD><E1B9B9>
|
||||
{
|
||||
int No;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
int ver[4];//<2F><>Ӧ<EFBFBD><D3A6><EFBFBD><EFBFBD><EFBFBD>嶥<EFBFBD><E5B6A5><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
};
|
||||
|
||||
struct sphere_point{//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
double phi,thet,radius;
|
||||
};
|
||||
|
||||
double WGS84_r(double lati){//<2F><><EFBFBD><EFBFBD>WGS84<38>ο<EFBFBD><CEBF><EFBFBD><EFBFBD><EFBFBD><EFBFBD>뾶
|
||||
return pole_radius*equator_radius/sqrt(pow(pole_radius,2)*pow(cos((double) lati*pi/180),2)+pow(equator_radius,2)*pow(sin((double) lati*pi/180),2));
|
||||
}
|
||||
|
||||
vector SCS2CCS(sphere_point p1){//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>תֱ<D7AA><D6B1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
vector v;
|
||||
v.x = p1.radius*sin((0.5-p1.thet/180.0)*pi)*cos((2.0+p1.phi/180.0)*pi);
|
||||
v.y = p1.radius*sin((0.5-p1.thet/180.0)*pi)*sin((2.0+p1.phi/180.0)*pi);
|
||||
v.z = p1.radius*cos((0.5-p1.thet/180.0)*pi);
|
||||
return v;
|
||||
}
|
||||
#endif
|
Reference in New Issue
Block a user