58 if(zaxis.
cross(theCircleAxis).
mag() > 1.E-6)
60 theDirInPlane = zaxis.
cross(theCircleAxis);
91 if(theCircleAxis.
mag() == 0.)
93 G4Exception(
"G4tgbPlaceParamCircle::G4tgbPlaceParamCircle()",
96 theCircleAxis /= theCircleAxis.
mag();
108 G4cout <<
" G4tgbPlaceParamCircle::G4tgbPlaceParamCircle():" <<
G4endl
111 << theStep <<
G4endl <<
" offset - " << theOffset <<
G4endl
112 <<
" radius - " << theRadius <<
G4endl <<
" circle axis - "
113 << theCircleAxis <<
G4endl <<
" dir in plane - " << theDirInPlane
123 G4double posi = theOffset + copyNo * theStep;
125 origin.
rotate(posi, theCircleAxis);
129 rm.
rotate(-posi, theCircleAxis);
145 G4cout <<
" G4tgbPlaceParamCircle::ComputeTransformation():"
148 <<
" rotation-matrix - " << *pvRm <<
G4endl;
void G4Exception(const char *originOfException, const char *exceptionCode, G4ExceptionSeverity severity, const char *description)
CLHEP::HepRotation G4RotationMatrix
CLHEP::Hep3Vector G4ThreeVector
G4GLOB_DLL std::ostream G4cout
Hep3Vector cross(const Hep3Vector &) const
Hep3Vector & rotate(double, const Hep3Vector &)
HepRotation & rotate(double delta, const Hep3Vector &axis)
const G4RotationMatrix * GetRotation() const
virtual void SetCopyNo(G4int CopyNo)=0
const G4String & GetName() const
void SetTranslation(const G4ThreeVector &v)
void SetRotation(G4RotationMatrix *)
void ComputeTransformation(const G4int copyNo, G4VPhysicalVolume *physVol) const
G4tgbPlaceParamCircle(G4tgrPlaceParameterisation *)
void CheckNExtraData(G4tgrPlaceParameterisation *tgrParam, G4int nWcheck, WLSIZEtype st, const G4String &methodName)
G4RotationMatrix * theRotationMatrix
static G4int GetVerboseLevel()
std::vector< G4double > GetExtraData() const
const G4String & GetParamType() const