ECCE @ EIC Software
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
FW::Obj Namespace Reference

Classes

struct  VtnCounter
 This is the counter struct for keeping track of the vertices. More...
 
class  ObjPropagationStepsWriter
 
class  ObjSpacePointWriter
 
class  ObjSurfaceWriter
 
class  ObjTrackingGeometryWriter
 

Functions

void writeVTN (std::ofstream &stream, VtnCounter &vtnCounter, double scalor, const Acts::Vector3D &vertex, const std::string &vtntype="v", bool point=false)
 
void constructVerticalFaces (std::ofstream &stream, unsigned int start, const std::vector< unsigned int > &vsides)
 
void writePlanarFace (std::ofstream &stream, VtnCounter &vtnCounter, double scalor, const std::vector< Acts::Vector3D > &vertices, double thickness=0., const std::vector< unsigned int > &vsides={})
 
void writeTube (std::ofstream &stream, VtnCounter &vtnCounter, double scalor, unsigned int nSegments, const Acts::Transform3D &transform, double r, double hZ, double thickness=0.)
 
Acts::Vector3D calculateBezierPoint (double t, const Acts::Vector3D &p0, const Acts::Vector3D &p1, const Acts::Vector3D &p2, const Acts::Vector3D &p3)
 

Function Documentation

Acts::Vector3D FW::Obj::calculateBezierPoint ( double  t,
const Acts::Vector3D p0,
const Acts::Vector3D p1,
const Acts::Vector3D p2,
const Acts::Vector3D p3 
)

Helper method for bezier line interpolation

Parameters
tis the step parameter along the line
p0anker point
p1is p0 + direction
p2is p2 - direction
p3is second anker poit
Returns
the bezier point

Definition at line 176 of file ObjHelper.cpp.

View newest version in sPHENIX GitHub at line 176 of file ObjHelper.cpp

References t, and Acts::UnitConstants::u.

void FW::Obj::constructVerticalFaces ( std::ofstream &  stream,
unsigned int  start,
const std::vector< unsigned int > &  vsides 
)

construct vertical faces this takes a range and constructs faces

Definition at line 39 of file ObjHelper.cpp.

View newest version in sPHENIX GitHub at line 39 of file ObjHelper.cpp

References start().

Referenced by writePlanarFace().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void FW::Obj::writePlanarFace ( std::ofstream &  stream,
VtnCounter &  vtnCounter,
double  scalor,
const std::vector< Acts::Vector3D > &  vertices,
double  thickness = 0.,
const std::vector< unsigned int > &  vsides = {} 
)

This will write a planar face

  • normal is given by cross product
Parameters
streamis the stream where to write to
faceis the face to be written out
cvertexis the current vertex number
thicknessis the (optional) thickness

Definition at line 62 of file ObjHelper.cpp.

View newest version in sPHENIX GitHub at line 62 of file ObjHelper.cpp

References constructVerticalFaces(), n, v, FW::Obj::VtnCounter::vcounter, and writeVTN().

Referenced by FW::Obj::ObjSurfaceWriter::write().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void FW::Obj::writeTube ( std::ofstream &  stream,
VtnCounter &  vtnCounter,
double  scalor,
unsigned int  nSegments,
const Acts::Transform3D transform,
double  r,
double  hZ,
double  thickness = 0. 
)

This will write a cylindrical object

Parameters
streamis the stream where to write to

Definition at line 99 of file ObjHelper.cpp.

View newest version in sPHENIX GitHub at line 99 of file ObjHelper.cpp

References M_PI, phi, t, thickness, FW::Obj::VtnCounter::vcounter, and writeVTN().

Referenced by FW::Obj::ObjSurfaceWriter::write().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void FW::Obj::writeVTN ( std::ofstream &  stream,
VtnCounter &  vtnCounter,
double  scalor,
const Acts::Vector3D vertex,
const std::string &  vtntype = "v",
bool  point = false 
)

This will write a vertex to the fstream

Parameters
streamis the stream where to write to
vertexis the vertex to be written out
cvertexis the current vertex number

Definition at line 13 of file ObjHelper.cpp.

View newest version in sPHENIX GitHub at line 13 of file ObjHelper.cpp

References cp, FW::Obj::VtnCounter::ncounter, FW::Obj::VtnCounter::vcounter, and FW::Obj::VtnCounter::vtcounter.

Referenced by writePlanarFace(), and writeTube().

+ Here is the caller graph for this function: