4 #ifndef __u3d_raytr_defines_hpp
5 #define __u3d_raytr_defines_hpp
7 #define U3D_RAY_ANGLE_CHORD_STEP 0.01
8 #define U3D_RAY_LINE_CHORD_STEP 50.0
9 #define U3D_MIN_RAY_LINE_STEP 0.5
11 #define U3D_SEISMIC_TIME_MULTIPLIER 1000.0
13 #define U3D_NHB_CONF_NUM 6
16 #define U3D_RAY_STEP_ERROR_MESSAGE
20 #define dcomplex complex<double>
22 #include <u3d_model_defines.hpp>
29 const double PI_2 = M_PI*2.;
37 enum U3D_STEP_RESULT { U3D_STEP_DONE, U3D_OUT_OF_MODEL, U3D_BOUND_INTERSECTION,
38 U3D_WELL_INTERSECTION, U3D_STEP_ERROR, U3D_UPGOING_WAVE,
39 U3D_COMPLEX_CELL, U3D_NO_PARAMS };
56 typedef vector<U3dCodeItem> U3dCodeAr;
63 bool analyseRayCode(U3dCodeAr code,
int ciId,
int &type);
66 void analyseAngles(
double &f,
double &az);
69 string printRayType(
int ray_id);
85 typedef vector<U3dRayPoint> U3dRayPointsAr;
107 typedef vector<U3dRayIntSt> U3dRayIntStAr;
121 typedef vector<U3dRayWIntSt> U3dRayWIntStAr;
127 enum U3dReflCoefType {
int bNum2
Definition: u3d_raytr_defines.hpp:83
U3dPoint point
Definition: u3d_raytr_defines.hpp:85
double iAngle
Definition: u3d_raytr_defines.hpp:92
int bNum
Definition: u3d_raytr_defines.hpp:35
double t
Definition: u3d_raytr_defines.hpp:69
double az1
Definition: u3d_raytr_defines.hpp:89
int boundNum
Definition: u3d_raytr_defines.hpp:84
Definition: u3d_raytr_defines.hpp:81
double az
Definition: u3d_raytr_defines.hpp:68
Definition: u3d_point.hpp:16
double az2
Definition: u3d_raytr_defines.hpp:91
Definition: u3d_raytr_defines.hpp:65
bool trFlag
Definition: u3d_raytr_defines.hpp:37
Definition: u3d_raytr_defines.hpp:103
double f2
Definition: u3d_raytr_defines.hpp:90
double f1
Definition: u3d_raytr_defines.hpp:88
double f
Definition: u3d_raytr_defines.hpp:67
U3dPoint p
Definition: u3d_raytr_defines.hpp:66
double iAz
Definition: u3d_raytr_defines.hpp:93
U3D_WAVE_TYPE wType
Definition: u3d_raytr_defines.hpp:36
Definition: u3d_raytr_defines.hpp:33