63     G4double  CexmcRadialLineWidth( 2.0 );
 
   64     G4double  CexmcRadialLineCapScreenSize( 4.0 );
 
   65     G4double  CexmcMarkerScreenSize( 2.0 );
 
   66     G4double  CexmcICHlLineLineWidth( 1.0 );
 
   67     G4Colour  CexmcDefaultSPColour( 1.0, 1.0, 1.0 );
 
   72     setup( setup ), markTargetCenter( false ), highlightInnerCrystals( false ),
 
   91     if ( markTargetCenter )
 
   93     if ( highlightInnerCrystals )
 
   95     for ( CexmcRadialLines::const_iterator  k( radialLines.begin() );
 
   96                                                 k != radialLines.end(); ++k )
 
  112                                             transform.NetTranslation() );
 
  121                                             const CexmcRadialLine *  rLine )
 
  126     G4Point3D   radialLineEnd( - std::sin( theta ) * std::cos( phi ) * length,
 
  127                                std::sin( theta ) * std::sin( phi ) * length,
 
  128                                std::cos( theta ) * length );
 
  132     line.push_back( radialLineEnd );
 
  135     visAttributes.SetLineWidth( CexmcRadialLineWidth );
 
  145                                             transform.NetTranslation() );
 
  158     G4double  icWidth( calorimeterGeometry.crystalWidth *
 
  159                        ( calorimeterGeometry.nCrystalsInRow - 2 ) / 2 );
 
  160     G4double  icHeight( calorimeterGeometry.crystalHeight *
 
  161                        ( calorimeterGeometry.nCrystalsInColumn - 2 ) / 2 );
 
  162     G4double  icLength( calorimeterGeometry.crystalLength / 2 );
 
  163     icWidth = icWidth < 0 ? 0 : icWidth;
 
  164     icHeight = icHeight < 0 ? 0 : icHeight;
 
  168     visAttributes.SetLineWidth( CexmcICHlLineLineWidth );
 
  169     innerCrystals.SetVisAttributes( visAttributes );
 
  174                                         transformLeft.NetRotation().inverse(),
 
  175                                         transformLeft.NetTranslation() );
 
  179                                         transformRight.NetRotation().inverse(),
 
  180                                         transformRight.NetTranslation() );
 
CLHEP::Hep3Vector G4ThreeVector
 
const G4String CexmcScenePrimitivesDescription("CexmcScenePrimitives")
 
CLHEP::HepRotation G4RotationMatrix
 
void SetFillStyle(FillStyle)
 
void MarkTargetCenter(G4bool on=true)
 
virtual void BeginPrimitives(const G4Transform3D &objectTransformation=G4Transform3D())=0
 
const G4AffineTransform & GetCalorimeterLeftTransform(void) const 
 
virtual void AddPrimitive(const G4Polyline &)=0
 
static constexpr double cm
 
void SetVisAttributes(const G4VisAttributes *)
 
CexmcScenePrimitives(CexmcSetup *setup)
 
const G4AffineTransform & GetCalorimeterRightTransform(void) const 
 
const CalorimeterGeometryData & GetCalorimeterGeometry(void) const 
 
const G4AffineTransform & GetTargetTransform(void) const 
 
virtual void EndPrimitives()=0
 
static constexpr double deg
 
void HighlightInnerCrystals(G4bool=true)
 
void DrawRadialLine(const G4ThreeVector &line)
 
void SetGlobalDescription(const G4String &)
 
void DescribeYourselfTo(G4VGraphicsScene &scene)
 
void SetScreenSize(G4double)