Struct Acts::TGeoSurfaceConverter

struct TGeoSurfaceConverter

Helper struct to convert TGeoShapes into Surface or Volume Bounds.

Public Static Functions

static std::tuple<std::shared_ptr<const CylinderBounds>, const Transform3, double> cylinderComponents(const TGeoShape &tgShape, const Double_t *rotation, const Double_t *translation, const std::string &axes, double scalor = 10.) noexcept(false)

Convert a TGeoShape into cylinder surface components.

Parameters
  • tgShape – The TGeoShape

  • rotation – The rotation matrix as Double_t* from root

  • translation – The translation vector as Double_t* from root

  • axes – The axes definition

  • scalor – The unit scalor between TGeo and Acts

Returns

tuple of DiscBounds, Trasnform, thickness

static std::tuple<std::shared_ptr<const DiscBounds>, const Transform3, double> discComponents(const TGeoShape &tgShape, const Double_t *rotation, const Double_t *translation, const std::string &axes, double scalor = 10.) noexcept(false)

Convert a TGeoShape into disk surface components.

Parameters
  • tgShape – The TGeoShape

  • rotation – The rotation matrix as Double_t* from root

  • translation – The translation vector as Double_t* from root

  • axes – The axes definition

  • scalor – The unit scalor between TGeo and Acts

Returns

tuple of DiscBounds, Trasnform, thickness

static std::tuple<std::shared_ptr<const PlanarBounds>, const Transform3, double> planeComponents(const TGeoShape &tgShape, const Double_t *rotation, const Double_t *translation, const std::string &axes, double scalor = 10.) noexcept(false)

Convert a TGeoShape into plane surface components.

Parameters
  • tgShape – The TGeoShape

  • rotation – The rotation matrix as Double_t* from root

  • translation – The translation as a Double_t*

  • axes – The axes definition

  • scalor – The unit scalor between TGeo and Acts

Returns

tuple of PlanarBounds, Trasnform, thickness

static inline double toRadian(double degree)

Transalte TGeo degree [0, 360) to radian.

  • will correct to [-pi,pi)

Parameters

degree – The input in degree

Returns

angle in radians

static std::shared_ptr<Surface> toSurface(const TGeoShape &tgShape, const TGeoMatrix &tgMatrix, const std::string &axes, double scalor = 10.) noexcept(false)

Convert a TGeoShape to a Surface.

Parameters
  • tgShape – The TGeoShape

  • tgMatrix – The matrix representing the tranbsform

  • axes – The axes definition

  • scalor – The unit scalor between TGeo and Acts

Returns

shared pointer to a surface