UNIVERS  15.3
UNIVERS base processing software API
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
U3dMigrRayShooter Class Reference

#include <u3d_migr_shooter.hpp>

Inheritance diagram for U3dMigrRayShooter:
U3dAbstractRayShooter U3dAbstractRayShooter U3dRayDynCalculator U3dRayDynCalculator U3dRayDynCalculator U3dRayDynCalculator U3dRayTracing U3dRayTracing U3dRayTracing U3dRayTracing U3dMigr U3dMigr

Public Member Functions

 U3dMigrRayShooter (U3dModel *mod3d, URayReflCoefType coeff_type=ZOEPPRITZ)
 
U3dRayrayShoot (U3dPoint startP, double f, double az, U3dCodeAr rCode, bool waySave)
 
U3dBoxgetImageBox ()
 
 U3dMigrRayShooter (U3dModel *mod3d, U3dReflCoefType coeff_type=ZOEPPRITZ)
 
U3dRayrayShoot (U3dPoint startP, double f, double az, U3dCodeAr rCode, bool waySave)
 
U3dBoxgetImageBox ()
 
- Public Member Functions inherited from U3dAbstractRayShooter
 U3dAbstractRayShooter (U3dModel *mod3d, URayReflCoefType coeff_type=ZOEPPRITZ)
 
bool findNextCell (int faceId, int &condId, int &i, int &j, int &filled_cells_num, int &shadow_cells_num, int &conf_type, int debug_level=0)
 
bool findNextCleanCell (int faceId, int &confId, int &resI, int &resJ, int &filled_cells_num, int &shadow_cells_num, int &conf_type, int debug_level=0)
 
bool checkFaceZone (int faceId, int zoneId, int conf, int &conf_type, int &resI, int &recJ)
 
bool coverConf (int confId, int faceId, int i0, int j0, U3dPoint p, U3dCodeAr c, int conf_type)
 
bool coverNhbCCross (int faceId, int ni, int nj, U3dPoint p, U3dCodeAr c, int &resi, int &resj)
 
bool coverNhbC1 (int faceId, int i0, int j0, U3dPoint p, U3dCodeAr c)
 
bool coverNhbC2 (int faceId, int i0, int j0, U3dPoint p, U3dCodeAr c)
 
bool shootNhbC2Cross (int faceId, int i0, int j0, U3dPoint p, U3dCodeAr c, int i_n0, int j_n0, int i_n1, int j_n1)
 
bool coverNhbC3 (int faceId, int i0, int j0, U3dPoint p, U3dCodeAr c, int conf_type)
 
bool coverNhbC4 (int faceId, int i0, int j0, U3dPoint p, U3dCodeAr c)
 
bool coverNhbC5 (int faceId, int i0, int j0, U3dPoint p, U3dCodeAr c)
 
bool coverNhbCSpiral (int faceId, int i0, int j0, U3dPoint p, U3dCodeAr c)
 
int checkConf (int i0, int j0, int faceId)
 
bool checkConf (int confId, int i0, int j0, int faceId, int &conf_type)
 
bool checkConf1 (int i0, int j0, int faceId)
 
bool checkConf2 (int i0, int j0, int faceId)
 
bool checkConf3 (int i0, int j0, int faceId, int &conf_type)
 
bool checkConf4 (int i0, int j0, int faceId)
 
bool checkConf5 (int i0, int j0, int faceId)
 
bool checkConf6 (int i0, int j0, int faceId)
 
bool find2FilledNhbC3 (int faceId, int i0, int j0, int conf_type, int &i_n0, int &j_n0, int &i_n1, int &j_n1)
 
bool find3FilledNhbC4 (int faceId, int i0, int j0, int &i_n0, int &j_n0, int &i_n1, int &j_n1, int &i_n2, int &j_n2)
 
bool find3FilledNhbC5 (int faceId, int i0, int j0, int &i_n0, int &j_n0, int &i_n1, int &j_n1, int &i_n2, int &j_n2)
 
bool calcNhbCPlaneAngles (int faceId, int i0, int j0, int i_n0, int j_n0, int i_n1, int j_n1, int i_n2, int j_n2, float &stF, float &stAz)
 
void printConfCell (int i0, int j0, int faceId, int confId=3)
 
void printCellNhbC (int i0, int j0, int faceId, int nhb_num=7)
 
int checkNhbCell (int faceId, int i0, int j0)
 
int shootNcheckPh1 (int faceId, U3dPoint p, float f, float az, int ni, int nj, U3dCodeAr c, int &resI, int &resJ)
 
bool shootNcheckPh2 (int faceId, U3dPoint p, float f, float az, int i0, int j0, U3dCodeAr c, int &resI, int &resJ)
 
bool findFilledNhbCell (int faceId, int &i, int &j)
 
bool findFilledFaceNhbCell (U3dPoint p, int faceId, U3dCodeAr c, int &resI, int &resJ)
 
bool findCleanNhbCell (int faceId, int &i, int &j, int &filled_cells_num, int &shadow_cells_num)
 
bool isFaceCellClean (int i, int j, int faceId)
 
bool isFaceCellShadowed (int i, int j, int faceId)
 
bool isFaceCellFilled (int i, int j, int faceId)
 
char getCellStatus (int i, int j, int faceId)
 
virtual void getFaceCellIJ (U3dPoint p, int faceId, int &i, int &j)
 
virtual void formFaceActiveZones (int faceId)
 
 U3dAbstractRayShooter (U3dModel *mod3d, U3dReflCoefType coeff_type=ZOEPPRITZ)
 
bool findNextCell (int faceId, int &condId, int &i, int &j, int &filled_cells_num, int &shadow_cells_num, int &conf_type, int debug_level=0)
 
bool findNextCleanCell (int faceId, int &confId, int &resI, int &resJ, int &filled_cells_num, int &shadow_cells_num, int &conf_type, int debug_level=0)
 
bool checkFaceZone (int faceId, int zoneId, int conf, int &conf_type, int &resI, int &recJ)
 
bool coverConf (int confId, int faceId, int i0, int j0, U3dPoint p, U3dCodeAr c, int conf_type)
 
bool coverNhbCCross (int faceId, int ni, int nj, U3dPoint p, U3dCodeAr c, int &resi, int &resj)
 
bool coverNhbC1 (int faceId, int i0, int j0, U3dPoint p, U3dCodeAr c)
 
bool coverNhbC2 (int faceId, int i0, int j0, U3dPoint p, U3dCodeAr c)
 
bool shootNhbC2Cross (int faceId, int i0, int j0, U3dPoint p, U3dCodeAr c, int i_n0, int j_n0, int i_n1, int j_n1)
 
bool coverNhbC3 (int faceId, int i0, int j0, U3dPoint p, U3dCodeAr c, int conf_type)
 
bool coverNhbC4 (int faceId, int i0, int j0, U3dPoint p, U3dCodeAr c)
 
bool coverNhbC5 (int faceId, int i0, int j0, U3dPoint p, U3dCodeAr c)
 
bool coverNhbCSpiral (int faceId, int i0, int j0, U3dPoint p, U3dCodeAr c)
 
int checkConf (int i0, int j0, int faceId)
 
bool checkConf (int confId, int i0, int j0, int faceId, int &conf_type)
 
bool checkConf1 (int i0, int j0, int faceId)
 
bool checkConf2 (int i0, int j0, int faceId)
 
bool checkConf3 (int i0, int j0, int faceId, int &conf_type)
 
bool checkConf4 (int i0, int j0, int faceId)
 
bool checkConf5 (int i0, int j0, int faceId)
 
bool checkConf6 (int i0, int j0, int faceId)
 
bool find2FilledNhbC3 (int faceId, int i0, int j0, int conf_type, int &i_n0, int &j_n0, int &i_n1, int &j_n1)
 
bool find3FilledNhbC4 (int faceId, int i0, int j0, int &i_n0, int &j_n0, int &i_n1, int &j_n1, int &i_n2, int &j_n2)
 
bool find3FilledNhbC5 (int faceId, int i0, int j0, int &i_n0, int &j_n0, int &i_n1, int &j_n1, int &i_n2, int &j_n2)
 
bool calcNhbCPlaneAngles (int faceId, int i0, int j0, int i_n0, int j_n0, int i_n1, int j_n1, int i_n2, int j_n2, float &stF, float &stAz)
 
void printConfCell (int i0, int j0, int faceId, int confId=3)
 
void printCellNhbC (int i0, int j0, int faceId, int nhb_num=7)
 
int checkNhbCell (int faceId, int i0, int j0)
 
int shootNcheckPh1 (int faceId, U3dPoint p, float f, float az, int ni, int nj, U3dCodeAr c, int &resI, int &resJ)
 
bool shootNcheckPh2 (int faceId, U3dPoint p, float f, float az, int i0, int j0, U3dCodeAr c, int &resI, int &resJ)
 
bool findFilledNhbCell (int faceId, int &i, int &j)
 
bool findFilledFaceNhbCell (U3dPoint p, int faceId, U3dCodeAr c, int &resI, int &resJ)
 
bool findCleanNhbCell (int faceId, int &i, int &j, int &filled_cells_num, int &shadow_cells_num)
 
bool isFaceCellClean (int i, int j, int faceId)
 
bool isFaceCellShadowed (int i, int j, int faceId)
 
bool isFaceCellFilled (int i, int j, int faceId)
 
char getCellStatus (int i, int j, int faceId)
 
virtual void getFaceCellIJ (U3dPoint p, int faceId, int &i, int &j)
 
virtual void formFaceActiveZones (int faceId)
 
- Public Member Functions inherited from U3dRayDynCalculator
 U3dRayDynCalculator (U3dModel *mod3d, URayReflCoefType coeff_type=ZOEPPRITZ)
 
double calcRTRCoeff (U3dRay *ray, int debug_level=0)
 
- Public Member Functions inherited from U3dRayTracing
 U3dRayTracing (U3dModel *mod3d)
 
bool snellius (double vin, double teta0, double az, double vout, int rtr, double iAngle, double iAz, double &teta1, double &az1)
 
U3dModelgetModel () const
 
 U3dRayTracing (U3dModel *mod3d)
 
bool snellius (double vin, double teta0, double az, double vout, int rtr, double iAngle, double iAz, double &teta1, double &az1)
 
U3dModelgetModel () const
 

Protected Member Functions

void markCell (ushort i, ushort j, ushort k, double f, double az, double t)
 
void addRayPoint (U3dPoint p0, U3dRayPoint rp1, U3D_WAVE_TYPE wType, double dt)
 
void addRayPoint2D (int ind1_0, int ind2_0, int ind1_cur, int ind2_cur, int ind1_step, int ind2_step, double coord1_step, double coord2_step, double coord1_2_mul, double coord2_1_mul, double coord3_1_mul, double coord3_2_mul, int ind_const, U3dRayPoint rp0, int plane, U3D_WAVE_TYPE wt, double end_time)
 
void setCurrentStartAngles (U3dPoint sp, double f, double az)
 
bool getCellIJK (U3dPoint point, ushort &i, ushort &j, ushort &k)
 
void getCellI (U3dPoint p, ushort &i)
 
void getCellJ (U3dPoint p, ushort &j)
 
void getCellK (U3dPoint p, ushort &k)
 
virtual void calculateImageBox ()
 
int getFaceId (U3dRay *r)
 
int getFaceIMax (int faceId)
 
int getFaceJMax (int faceId)
 
void getFaceCellIJ (U3dRay *r, int faceId, int &i, int &j)
 
void setShadowedFlag (int i, int j, int faceId)
 
float getFaceCellT (int i, int j, int faceId)
 
float getFaceCellStF (int i, int j, int faceId)
 
float getFaceCellStAz (int i, int j, int faceId)
 
MigrInnerCell getFaceCell (int i, int j, int faceId)
 
void markCell (ushort i, ushort j, ushort k, double f, double az, double t)
 
void addRayPoint (U3dPoint p0, U3dRayPoint rp1, U3D_WAVE_TYPE wType, double dt)
 
void addRayPoint2D (int ind1_0, int ind2_0, int ind1_cur, int ind2_cur, int ind1_step, int ind2_step, double coord1_step, double coord2_step, double coord1_2_mul, double coord2_1_mul, double coord3_1_mul, double coord3_2_mul, int ind_const, U3dRayPoint rp0, int plane, U3D_WAVE_TYPE wt, double end_time)
 
void setCurrentStartAngles (U3dPoint sp, double f, double az)
 
bool getCellIJK (U3dPoint point, ushort &i, ushort &j, ushort &k)
 
void getCellI (U3dPoint p, ushort &i)
 
void getCellJ (U3dPoint p, ushort &j)
 
void getCellK (U3dPoint p, ushort &k)
 
virtual void calculateImageBox ()
 
int getFaceId (U3dRay *r)
 
int getFaceIMax (int faceId)
 
int getFaceJMax (int faceId)
 
void getFaceCellIJ (U3dRay *r, int faceId, int &i, int &j)
 
void setShadowedFlag (int i, int j, int faceId)
 
float getFaceCellT (int i, int j, int faceId)
 
float getFaceCellStF (int i, int j, int faceId)
 
float getFaceCellStAz (int i, int j, int faceId)
 
MigrInnerCell getFaceCell (int i, int j, int faceId)
 
- Protected Member Functions inherited from U3dRayDynCalculator
dcomplex getZoeppritzCoeff (double p1, U3D_WAVE_TYPE wt1, U3D_WAVE_TYPE wt2, bool transfer, double ro1, double vp1, double vs1, double ro2, double vp2, double vs2)
 
dcomplex cdet4 (dcomplex(*L4)[4])
 
U3D_RTR_TYPE getRTRType (U3D_WAVE_TYPE wt0, U3D_WAVE_TYPE wt1)
 
double getApproxCoeff (int rtr_type, double f0, double f1, double vp0, double vs0, double den0, double vp1, double vs1, double den1)
 
double getAkiRichardsCoeff (int rtr_type, double f0, double f1, double vp0, double vs0, double den0, double vp1, double vs1, double den1)
 
double getAkiRichardsRDir (double f, double v0, double den0, double v1, double den1)
 
double getAkiRichardsRPPup (double f0, double vp0, double vs0, double den0, double vp1, double vs1, double den1)
 
double getAkiRichardsRPSup (double f0, double f1, double vp0, double vs0, double den0, double vp1, double vs1, double den1)
 
double getAkiRichardsRPSdown (double f0, double f1, double vp0, double vs0, double den0, double vp1, double vs1, double den1)
 
double getAkiRichardsRPS (double f0, double f1, double vp0, double vs0, double den0, double vp1, double vs1, double den1, bool up=true)
 
double getAkiRichardsRSSup (double f1, double vp0, double vs0, double den0, double vp1, double vs1, double den1)
 
double getAkiRichardsRSPup (double f0, double f1, double vp0, double vs0, double den0, double vp1, double vs1, double den1)
 
double getAkiRichardsRSPdown (double f0, double f1, double vp0, double vs0, double den0, double vp1, double vs1, double den1)
 
double getShueyCoeff (int rtr_type, double f0, double f1, double vp0, double vs0, double den0, double vp1, double vs1, double den1)
 
double getShueyRDir (double f, double v0, double den0, double v1, double den1)
 
double getShueyRPPup (double f0, double vp0, double vs0, double den0, double vp1, double vs1, double den1)
 
double getShueyRPSup (double f0, double f1, double vp0, double vs0, double den0, double vp1, double vs1, double den1)
 
double getShueyRPSdown (double f0, double f1, double vp0, double vs0, double den0, double vp1, double vs1, double den1)
 
double getShueyRSSup (double f1, double vp0, double vs0, double den0, double vp1, double vs1, double den1)
 
double getShueyRSPup (double f0, double f1, double vp0, double vs0, double den0, double vp1, double vs1, double den1)
 
double getShueyRSPdown (double f0, double f1, double vp0, double vs0, double den0, double vp1, double vs1, double den1)
 
double getA (double B, double sigma)
 
double getR0 (double vp0, double vp1, double den0, double den1)
 
double getB (double vp0, double vp1, double R0)
 
double getPoissonsRatio (double vp, double vs)
 
- Protected Member Functions inherited from U3dRayTracing
U3D_STEP_RESULT RayStep (U3dRayPoint &rp, double df, double &dt, double &iAngle, double &iAz, double &iCurvity, int &iBoundNum, U3D_WAVE_TYPE vPS, bool prevInt, bool noIntersect=false)
 
U3D_STEP_RESULT rayStep (U3dRayPoint &rp, double df, double &dt, double &iAngle, double &iAz, double &iCurvity, int &iBoundNum, int &bn1, int &bn2, U3D_WAVE_TYPE vPS, bool prevInt, bool noIntersect=false)
 
bool intersectCellTriangles (const U3dGridCell *cell, U3dPoint p1, U3dPoint p2, U3dPoint &ip, int &iBoundNum, double &iAngle, double &iAz, int debug_level=0)
 
bool processNeighbourCells (const U3dGridCell *cell1, const U3dGridCell *cell2, U3dPoint p1, U3dPoint p2, U3dPoint &ip, int &iBoundNum, double &iAngle, double &iAz, int debug_level=0)
 
double getTime (U3dPoint p0, U3dPoint p1, double v0)
 
bool stepOnRay (U3dRayPoint p1, U3dRayPoint &p2, double df, U3D_WAVE_TYPE vPS, bool prevInt, double &vel)
 
void stepOnChord (double k, double fK, double azK, double df, double vel, U3dRayPoint rp0, U3dRayPoint &rp1)
 
void CalcIntParams (U3dRayPoint p, U3dPoint p0, int rtr, U3dPoint &p1)
 
void calcIntNeighPoints (U3dPoint p_int, double f, double az, U3dPoint &p0, U3dPoint &p1)
 
void getEndPoint (U3dPoint p0, U3dPoint &p1)
 
U3D_STEP_RESULT RayStep (U3dRayPoint &rp, double df, double &dt, double &iAngle, double &iAz, double &iCurvity, int &iBoundNum, U3D_WAVE_TYPE vPS, bool prevInt, bool noIntersect=false)
 
U3D_STEP_RESULT rayStep (U3dRayPoint &rp, double df, double &dt, double &iAngle, double &iAz, double &iCurvity, int &iBoundNum, int &bn1, int &bn2, U3D_WAVE_TYPE vPS, bool prevInt, bool noIntersect=false)
 
bool intersectCellTriangles (const U3dGridCell *cell, U3dPoint p1, U3dPoint p2, U3dPoint &ip, int &iBoundNum, double &iAngle, double &iAz, int debug_level=0)
 
bool processNeighbourCells (const U3dGridCell *cell1, const U3dGridCell *cell2, U3dPoint p1, U3dPoint p2, U3dPoint &ip, int &iBoundNum, double &iAngle, double &iAz, int debug_level=0)
 
double getTime (U3dPoint p0, U3dPoint p1, double v0)
 
bool stepOnRay (U3dRayPoint p1, U3dRayPoint &p2, double df, U3D_WAVE_TYPE vPS, bool prevInt, double &vel)
 
void stepOnChord (double k, double fK, double azK, double df, double vel, U3dRayPoint rp0, U3dRayPoint &rp1)
 
void CalcIntParams (U3dRayPoint p, U3dPoint p0, int rtr, U3dPoint &p1)
 
void calcIntNeighPoints (U3dPoint p_int, double f, double az, U3dPoint &p0, U3dPoint &p1)
 
void getEndPoint (U3dPoint p0, U3dPoint &p1)
 

Protected Attributes

MigrDataCube m_migr_cube
 
U3dBox m_imageBox
 
float m_stepX
 
float m_stepY
 
float m_stepZ
 
ushort m_i_max
 
ushort m_j_max
 
ushort m_k_max
 
double m_curStF
 
double m_curStAz
 
U3dPoint m_curSP
 
- Protected Attributes inherited from U3dRayDynCalculator
URayReflCoefType m_coeff_type
 
- Protected Attributes inherited from U3dRayTracing
U3dModelm_model
 
U3dBoxm_modelBox
 
double dl
 

Additional Inherited Members

- Public Types inherited from U3dAbstractRayShooter
typedef std::vector< ARSFaceZoneARSFaceZonesAr
 
typedef std::vector< ARSFaceZoneARSFaceZonesAr
 
- Public Attributes inherited from U3dAbstractRayShooter
ARSFaceZonesAr m_face_active_zones
 

Detailed Description

Class for 3d velocity model volume ray shooting

Member Function Documentation

void U3dMigrRayShooter::addRayPoint ( U3dPoint  p0,
U3dRayPoint  rp1,
U3D_WAVE_TYPE  wType,
double  dt 
)
protected

Marks the ray-passed cells between points (p0) and (r1)

void U3dMigrRayShooter::addRayPoint ( U3dPoint  p0,
U3dRayPoint  rp1,
U3D_WAVE_TYPE  wType,
double  dt 
)
protected

Marks the ray-passed cells between points (p0) and (r1)

void U3dMigrRayShooter::addRayPoint2D ( int  ind1_0,
int  ind2_0,
int  ind1_cur,
int  ind2_cur,
int  ind1_step,
int  ind2_step,
double  coord1_step,
double  coord2_step,
double  coord1_2_mul,
double  coord2_1_mul,
double  coord3_1_mul,
double  coord3_2_mul,
int  ind_const,
U3dRayPoint  rp0,
int  plane,
U3D_WAVE_TYPE  wt,
double  end_time 
)
protected

Marks the ray-passed cells, located in one plane (in terms of IJK)

void U3dMigrRayShooter::addRayPoint2D ( int  ind1_0,
int  ind2_0,
int  ind1_cur,
int  ind2_cur,
int  ind1_step,
int  ind2_step,
double  coord1_step,
double  coord2_step,
double  coord1_2_mul,
double  coord2_1_mul,
double  coord3_1_mul,
double  coord3_2_mul,
int  ind_const,
U3dRayPoint  rp0,
int  plane,
U3D_WAVE_TYPE  wt,
double  end_time 
)
protected

Marks the ray-passed cells, located in one plane (in terms of IJK)

virtual void U3dMigrRayShooter::calculateImageBox ( )
protectedvirtual

Calculates migration image box

Reimplemented in U3dMigr, and U3dMigr.

virtual void U3dMigrRayShooter::calculateImageBox ( )
protectedvirtual

Calculates migration image box

Reimplemented in U3dMigr, and U3dMigr.

void U3dMigrRayShooter::getCellI ( U3dPoint  p,
ushort &  i 
)
inlineprotected

Returns I-indexes of the cell, containing given point

void U3dMigrRayShooter::getCellI ( U3dPoint  p,
ushort &  i 
)
inlineprotected

Returns I-indexes of the cell, containing given point

bool U3dMigrRayShooter::getCellIJK ( U3dPoint  point,
ushort &  i,
ushort &  j,
ushort &  k 
)
protected

Returns indexes of the cell, containing given point

bool U3dMigrRayShooter::getCellIJK ( U3dPoint  point,
ushort &  i,
ushort &  j,
ushort &  k 
)
protected

Returns indexes of the cell, containing given point

void U3dMigrRayShooter::getCellJ ( U3dPoint  p,
ushort &  j 
)
inlineprotected

Returns J-indexes of the cell, containing given point

void U3dMigrRayShooter::getCellJ ( U3dPoint  p,
ushort &  j 
)
inlineprotected

Returns J-indexes of the cell, containing given point

void U3dMigrRayShooter::getCellK ( U3dPoint  p,
ushort &  k 
)
inlineprotected

Returns K-indexes of the cell, containing given point

void U3dMigrRayShooter::getCellK ( U3dPoint  p,
ushort &  k 
)
inlineprotected

Returns K-indexes of the cell, containing given point

MigrInnerCell U3dMigrRayShooter::getFaceCell ( int  i,
int  j,
int  faceId 
)
protected

Returns cell with current coordinates, belongs any of modelling area faces (UNUSED)

MigrInnerCell U3dMigrRayShooter::getFaceCell ( int  i,
int  j,
int  faceId 
)
protected

Returns cell with current coordinates, belongs any of modelling area faces (UNUSED)

void U3dMigrRayShooter::getFaceCellIJ ( U3dRay r,
int  faceId,
int &  i,
int &  j 
)
protected

For current point belongs to modelling area face this function returns its coordinates

void U3dMigrRayShooter::getFaceCellIJ ( U3dRay r,
int  faceId,
int &  i,
int &  j 
)
protected

For current point belongs to modelling area face this function returns its coordinates

float U3dMigrRayShooter::getFaceCellStAz ( int  i,
int  j,
int  faceId 
)
protectedvirtual

Retruns value of ray start azimuth for current cell on the modelling area face

Reimplemented from U3dAbstractRayShooter.

float U3dMigrRayShooter::getFaceCellStAz ( int  i,
int  j,
int  faceId 
)
protectedvirtual

Retruns value of ray start azimuth for current cell on the modelling area face

Reimplemented from U3dAbstractRayShooter.

float U3dMigrRayShooter::getFaceCellStF ( int  i,
int  j,
int  faceId 
)
protectedvirtual

Retruns value of ray start angle for current cell on the modelling area face

Reimplemented from U3dAbstractRayShooter.

float U3dMigrRayShooter::getFaceCellStF ( int  i,
int  j,
int  faceId 
)
protectedvirtual

Retruns value of ray start angle for current cell on the modelling area face

Reimplemented from U3dAbstractRayShooter.

float U3dMigrRayShooter::getFaceCellT ( int  i,
int  j,
int  faceId 
)
protectedvirtual

Retruns Time value for current cell on the modelling area face

Reimplemented from U3dAbstractRayShooter.

float U3dMigrRayShooter::getFaceCellT ( int  i,
int  j,
int  faceId 
)
protectedvirtual

Retruns Time value for current cell on the modelling area face

Reimplemented from U3dAbstractRayShooter.

int U3dMigrRayShooter::getFaceId ( U3dRay r)
protectedvirtual

For point belongs model area face this function returns face Id

Reimplemented from U3dAbstractRayShooter.

int U3dMigrRayShooter::getFaceId ( U3dRay r)
protectedvirtual

For point belongs model area face this function returns face Id

Reimplemented from U3dAbstractRayShooter.

int U3dMigrRayShooter::getFaceIMax ( int  faceId)
protectedvirtual

Retruns maximal i-index for current modelling area face

Reimplemented from U3dAbstractRayShooter.

int U3dMigrRayShooter::getFaceIMax ( int  faceId)
protectedvirtual

Retruns maximal i-index for current modelling area face

Reimplemented from U3dAbstractRayShooter.

int U3dMigrRayShooter::getFaceJMax ( int  faceId)
protectedvirtual

Retruns maximal j-index for current modelling area face

Reimplemented from U3dAbstractRayShooter.

int U3dMigrRayShooter::getFaceJMax ( int  faceId)
protectedvirtual

Retruns maximal j-index for current modelling area face

Reimplemented from U3dAbstractRayShooter.

void U3dMigrRayShooter::markCell ( ushort  i,
ushort  j,
ushort  k,
double  f,
double  az,
double  t 
)
protected

Fills ray angle and path time fields in respective migration-cell structure

void U3dMigrRayShooter::markCell ( ushort  i,
ushort  j,
ushort  k,
double  f,
double  az,
double  t 
)
protected

Fills ray angle and path time fields in respective migration-cell structure

U3dRay* U3dMigrRayShooter::rayShoot ( U3dPoint  startP,
double  f,
double  az,
U3dCodeAr  rCode,
bool  waySave 
)
virtual

Ray-shooting procedure; the ray marks (see procedure markCell) each passed cell of migration grid

Reimplemented from U3dRayTracing.

U3dRay* U3dMigrRayShooter::rayShoot ( U3dPoint  startP,
double  f,
double  az,
U3dCodeAr  rCode,
bool  waySave 
)
virtual

Ray-shooting procedure; the ray marks (see procedure markCell) each passed cell of migration grid

Reimplemented from U3dRayTracing.

void U3dMigrRayShooter::setCurrentStartAngles ( U3dPoint  sp,
double  f,
double  az 
)
protected

Remember start parameters of current shooted ray

void U3dMigrRayShooter::setCurrentStartAngles ( U3dPoint  sp,
double  f,
double  az 
)
protected

Remember start parameters of current shooted ray

void U3dMigrRayShooter::setShadowedFlag ( int  i,
int  j,
int  faceId 
)
protectedvirtual

Sets shadowed flag for current cell on the modelling area face

Reimplemented from U3dAbstractRayShooter.

void U3dMigrRayShooter::setShadowedFlag ( int  i,
int  j,
int  faceId 
)
protectedvirtual

Sets shadowed flag for current cell on the modelling area face

Reimplemented from U3dAbstractRayShooter.

Member Data Documentation

U3dPoint U3dMigrRayShooter::m_curSP
protected

start point of current shooted ray

double U3dMigrRayShooter::m_curStAz
protected

start azimuth of current shooted ray

double U3dMigrRayShooter::m_curStF
protected

start angle of current shooted ray

ushort U3dMigrRayShooter::m_i_max
protected

maximal X-index of migration cell

ushort U3dMigrRayShooter::m_j_max
protected

maximal Y-index of migration cell

ushort U3dMigrRayShooter::m_k_max
protected

maximal Z-index of migration cell

MigrDataCube U3dMigrRayShooter::m_migr_cube
protected

3d array of migration cells - migration cube

float U3dMigrRayShooter::m_stepX
protected

migration cell X-size (meters)

float U3dMigrRayShooter::m_stepY
protected

migration cell Y-size (meters)

float U3dMigrRayShooter::m_stepZ
protected

migration cell Z-size (meters)


The documentation for this class was generated from the following files: