DD4hep  1.28.0
Detector Description Toolkit for High Energy Physics
Classes | Namespaces | Typedefs | Functions
Shapes.h File Reference
#include <DD4hep/Handle.h>
#include <DD4hep/Objects.h>
#include <DD4hep/DD4hepUnits.h>
#include <vector>
#include <TGeoCone.h>
#include <TGeoPgon.h>
#include <TGeoPcon.h>
#include <TGeoArb8.h>
#include <TGeoTrd1.h>
#include <TGeoTrd2.h>
#include <TGeoTube.h>
#include <TGeoEltu.h>
#include <TGeoXtru.h>
#include <TGeoHype.h>
#include <TGeoTorus.h>
#include <TGeoSphere.h>
#include <TGeoHalfSpace.h>
#include <TGeoParaboloid.h>
#include <TGeoScaledShape.h>
#include <TGeoCompositeShape.h>
#include <TGeoShapeAssembly.h>
#include <TGeoPara.h>
#include <TGeoTessellated.h>

Go to the source code of this file.

Classes

class  dd4hep::Solid_type< T >
 Base class for Solid (shape) objects. More...
 
class  dd4hep::ShapelessSolid
 Class describing a shape-less solid shape. More...
 
class  dd4hep::Scale
 Class describing a Scale shape. More...
 
class  dd4hep::Box
 Class describing a box shape. More...
 
class  dd4hep::HalfSpace
 Class describing half-space. More...
 
class  dd4hep::Cone
 Class describing a cone shape. More...
 
class  dd4hep::Polycone
 Class describing a Polycone shape. More...
 
class  dd4hep::ConeSegment
 Class describing a cone segment shape. More...
 
class  dd4hep::Tube
 Class describing a tube shape of a section of a tube. More...
 
class  dd4hep::CutTube
 Class describing a tube shape of a section of a cut tube segment. More...
 
class  dd4hep::TruncatedTube
 Class describing a truncated tube shape (CMS'ism) More...
 
class  dd4hep::EllipticalTube
 Class describing a twisted tube shape. More...
 
class  dd4hep::TwistedTube
 Class describing a twisted tube shape. More...
 
class  dd4hep::Trap
 Class describing a trap shape. More...
 
class  dd4hep::PseudoTrap
 Class describing a pseudo trap shape (CMS'ism) More...
 
class  dd4hep::Trd1
 Class describing a Trd1 shape. More...
 
class  dd4hep::Trd2
 Class describing a Trd2 shape. More...
 
class  dd4hep::Torus
 Class describing a Torus shape. More...
 
class  dd4hep::Sphere
 Class describing a sphere shape. More...
 
class  dd4hep::Paraboloid
 Class describing a Paraboloid shape. More...
 
class  dd4hep::Hyperboloid
 Class describing a Hyperboloid shape. More...
 
class  dd4hep::PolyhedraRegular
 Class describing a regular polyhedron shape. More...
 
class  dd4hep::Polyhedra
 Class describing a regular polyhedron shape. More...
 
class  dd4hep::ExtrudedPolygon
 Class describing a extruded polygon shape. More...
 
class  dd4hep::EightPointSolid
 Class describing an arbitray solid defined by 8 vertices. More...
 
class  dd4hep::TessellatedSolid
 Class describing a tessellated shape. More...
 
class  dd4hep::BooleanSolid
 Base class describing boolean (=union,intersection,subtraction) solids. More...
 
class  dd4hep::SubtractionSolid
 Class describing boolean subtraction solid. More...
 
class  dd4hep::UnionSolid
 Class describing boolean union solid. More...
 
class  dd4hep::IntersectionSolid
 Class describing boolean intersection solid. More...
 

Namespaces

 dd4hep
 Namespace for the AIDA detector description toolkit.
 
 dd4hep::detail
 DD4hep internal namespace.
 

Typedefs

typedef Solid_type< TGeoShape > dd4hep::Solid
 
typedef Trd2 dd4hep::Trapezoid
 Shortcut name definition. More...
 

Functions

std::string dd4hep::toStringSolid (const TGeoShape *shape, int precision=2)
 Pretty print of solid attributes. More...
 
std::string dd4hep::toStringMesh (const TGeoShape *shape, int precision=2)
 Output mesh vertices to string. More...
 
std::string dd4hep::get_shape_tag (const TGeoShape *shape)
 Retrieve tag name from shape type. More...
 
std::vector< double > dd4hep::get_shape_dimensions (TGeoShape *shape)
 Access Shape dimension parameters (As in TGeo, but angles in radians rather than degrees) More...
 
void dd4hep::set_shape_dimensions (TGeoShape *shape, const std::vector< double > &params)
 Set the shape dimensions (As for the TGeo shape, but angles in rad rather than degrees) More...
 
template<typename SOLID >
bool dd4hep::isInstance (const Handle< TGeoShape > &solid)
 Type check of various shapes. Result like dynamic_cast. Compare with python's isinstance(obj,type) More...
 
template<typename SOLID >
bool dd4hep::isA (const Handle< TGeoShape > &solid)
 Type check of various shapes. Do not allow for polymorphism. Types must match exactly. More...
 
template<typename SOLID >
std::vector< double > dd4hep::dimensions (const Handle< TGeoShape > &solid)
 Access Shape dimension parameters (As in TGeo, but angles in radians rather than degrees) More...
 
template<typename SOLID >
void dd4hep::set_dimensions (SOLID solid, const std::vector< double > &params)
 Set the shape dimensions. As for the TGeo shape, but angles in rad rather than degrees. More...
 
std::vector< double > dd4hep::detail::_make_vector (const double *values, size_t length)
 
template<typename SOLID >
std::vector< double > dd4hep::detail::_extract_vector (const SOLID *solid, double(SOLID::*extract)(Int_t) const, Int_t(SOLID::*len)() const)
 
template<typename SOLID >
std::vector< double > dd4hep::detail::zPlaneZ (const SOLID *solid)
 
template<typename SOLID >
std::vector< double > dd4hep::detail::zPlaneRmin (const SOLID *solid)
 
template<typename SOLID >
std::vector< double > dd4hep::detail::zPlaneRmax (const SOLID *solid)