EIC Software
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
3d.h File Reference
#include <TVector3.h>
#include <TRotation.h>
+ Include dependency graph for 3d.h:
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  t_3d_line
 
class  t_3d_plane
 

Macros

#define _X_   0
 
#define _Y_   1
 
#define _Z_   2
 
#define _PARALLEL_   1
 
#define _COINSIDE_   2
 
#define _BELONG_   3
 
#define VZERO(vec)   ((vec).SetXYZ(0.0, 0.0, 0.0))
 

Functions

int cross_p_l (const t_3d_plane *pl, const t_3d_line *ll, TVector3 &crs)
 
double point_to_line_dist (TVector3 &xx, t_3d_line *ll, TVector3 &bridge)
 
double point_to_plane_dist (TVector3 &xx, t_3d_plane *pl)
 
int build_plane_from_point_and_line (TVector3 &xx, t_3d_line *ll, t_3d_plane *pl)
 
int cross_l_l (const t_3d_line *l1, const t_3d_line *l2, t_3d_line *crs, double *rx, double *theta, double tt[])
 
double line_to_line_dist (t_3d_line *l1, t_3d_line *l2)
 
int deparametrize_straight_line (t_3d_line *line, double z, double S[4])
 

Macro Definition Documentation

#define _BELONG_   3

Definition at line 22 of file 3d.h.

View newest version in sPHENIX GitHub at line 22 of file 3d.h

Referenced by build_plane_from_point_and_line(), and cross_p_l().

#define _COINSIDE_   2

Definition at line 21 of file 3d.h.

View newest version in sPHENIX GitHub at line 21 of file 3d.h

#define _PARALLEL_   1

Definition at line 20 of file 3d.h.

View newest version in sPHENIX GitHub at line 20 of file 3d.h

Referenced by cross_l_l(), and cross_p_l().

#define VZERO (   vec)    ((vec).SetXYZ(0.0, 0.0, 0.0))

Definition at line 25 of file 3d.h.

View newest version in sPHENIX GitHub at line 25 of file 3d.h

Referenced by cross_l_l(), cross_p_l(), TrKalmanNode::GetMagneticField(), RungeKuttaRequest::kk(), t_3d_line::t_3d_line(), and t_3d_plane::t_3d_plane().

Function Documentation

int build_plane_from_point_and_line ( TVector3 &  xx,
t_3d_line ll,
t_3d_plane pl 
)

Definition at line 166 of file 3d.cxx.

View newest version in sPHENIX GitHub at line 166 of file 3d.cxx

References _BELONG_, t_3d_line::nx, t_3d_plane::nx, t_3d_line::x, and t_3d_plane::x.

int cross_l_l ( const t_3d_line l1,
const t_3d_line l2,
t_3d_line crs,
double *  rx,
double *  theta,
double  tt[] 
)

Definition at line 25 of file 3d.cxx.

View newest version in sPHENIX GitHub at line 25 of file 3d.cxx

References _PARALLEL_, _Z_, c, configureMap::config, t_3d_line::nx, rad2deg, SQR, t1, t2, VZERO, and t_3d_line::x.

Referenced by line_to_line_dist().

+ Here is the caller graph for this function:

int cross_p_l ( const t_3d_plane pl,
const t_3d_line ll,
TVector3 &  crs 
)

Definition at line 104 of file 3d.cxx.

View newest version in sPHENIX GitHub at line 104 of file 3d.cxx

References _BELONG_, _PARALLEL_, c, configureMap::config, t_3d_line::nx, t_3d_plane::nx, VZERO, t_3d_line::x, and t_3d_plane::x.

Referenced by deparametrize_straight_line(), FwdHoughTree::MappingCall(), and SensitiveVolume::TrackToHitDistance().

+ Here is the caller graph for this function:

int deparametrize_straight_line ( t_3d_line line,
double  z,
double  S[4] 
)

Definition at line 254 of file 3d.cxx.

View newest version in sPHENIX GitHub at line 254 of file 3d.cxx

References _X_, _Y_, _Z_, cross_p_l(), and t_3d_line::nx.

+ Here is the call graph for this function:

double line_to_line_dist ( t_3d_line l1,
t_3d_line l2 
)

Definition at line 225 of file 3d.cxx.

View newest version in sPHENIX GitHub at line 225 of file 3d.cxx

References cross_l_l().

+ Here is the call graph for this function:

double point_to_line_dist ( TVector3 &  xx,
t_3d_line ll,
TVector3 &  bridge 
)

Definition at line 195 of file 3d.cxx.

View newest version in sPHENIX GitHub at line 195 of file 3d.cxx

References t_3d_line::nx, and t_3d_line::x.

double point_to_plane_dist ( TVector3 &  xx,
t_3d_plane pl 
)

Definition at line 214 of file 3d.cxx.

View newest version in sPHENIX GitHub at line 214 of file 3d.cxx

References t_3d_plane::nx, and t_3d_plane::x.