#include <G4AffineTransform.hh>
Definition at line 69 of file G4AffineTransform.hh.
G4AffineTransform::G4AffineTransform | ( | ) | [inline] |
Definition at line 34 of file G4AffineTransform.icc.
Referenced by Inverse(), and operator *().
00035 : rxx(1),rxy(0),rxz(0), 00036 ryx(0),ryy(1),ryz(0), 00037 rzx(0),rzy(0),rzz(1), 00038 tx(0),ty(0),tz(0) 00039 {}
G4AffineTransform::G4AffineTransform | ( | const G4ThreeVector & | tlate | ) | [inline] |
Definition at line 41 of file G4AffineTransform.icc.
00042 : rxx(1),rxy(0),rxz(0), 00043 ryx(0),ryy(1),ryz(0), 00044 rzx(0),rzy(0),rzz(1), 00045 tx(tlate.x()),ty(tlate.y()),tz(tlate.z()) 00046 {}
G4AffineTransform::G4AffineTransform | ( | const G4RotationMatrix & | rot | ) | [inline] |
Definition at line 48 of file G4AffineTransform.icc.
00049 : rxx(rot.xx()),rxy(rot.xy()),rxz(rot.xz()), 00050 ryx(rot.yx()),ryy(rot.yy()),ryz(rot.yz()), 00051 rzx(rot.zx()),rzy(rot.zy()),rzz(rot.zz()), 00052 tx(0),ty(0),tz(0) 00053 {}
G4AffineTransform::G4AffineTransform | ( | const G4RotationMatrix & | rot, | |
const G4ThreeVector & | tlate | |||
) | [inline] |
Definition at line 55 of file G4AffineTransform.icc.
00057 : rxx(rot.xx()),rxy(rot.xy()),rxz(rot.xz()), 00058 ryx(rot.yx()),ryy(rot.yy()),ryz(rot.yz()), 00059 rzx(rot.zx()),rzy(rot.zy()),rzz(rot.zz()), 00060 tx(tlate.x()),ty(tlate.y()),tz(tlate.z()) 00061 {}
G4AffineTransform::G4AffineTransform | ( | const G4RotationMatrix * | rot, | |
const G4ThreeVector & | tlate | |||
) | [inline] |
Definition at line 63 of file G4AffineTransform.icc.
00065 : tx(tlate.x()),ty(tlate.y()),tz(tlate.z()) 00066 { 00067 if (rot) 00068 { 00069 rxx=rot->xx();rxy=rot->xy();rxz=rot->xz(); 00070 ryx=rot->yx();ryy=rot->yy();ryz=rot->yz(); 00071 rzx=rot->zx();rzy=rot->zy();rzz=rot->zz(); 00072 } 00073 else 00074 { 00075 rxx=1; rxy=0; rxz=0; 00076 ryx=0; ryy=1; ryz=0; 00077 rzx=0; rzy=0; rzz=1; 00078 } 00079 }
void G4AffineTransform::ApplyAxisTransform | ( | G4ThreeVector & | axis | ) | const [inline] |
Definition at line 222 of file G4AffineTransform.icc.
00223 { 00224 G4double x = axis.x()*rxx + axis.y()*ryx + axis.z()*rzx; 00225 G4double y = axis.x()*rxy + axis.y()*ryy + axis.z()*rzy; 00226 G4double z = axis.x()*rxz + axis.y()*ryz + axis.z()*rzz; 00227 00228 axis.setX(x); 00229 axis.setY(y); 00230 axis.setZ(z); 00231 }
void G4AffineTransform::ApplyPointTransform | ( | G4ThreeVector & | vec | ) | const [inline] |
Definition at line 210 of file G4AffineTransform.icc.
Referenced by G4TessellatedSolid::CalculateExtent(), G4PolyconeSide::CalculateExtent(), G4Hype::CalculateExtent(), G4EllipticalTube::CalculateExtent(), and G4EllipticalCone::CalculateExtent().
00211 { 00212 G4double x = vec.x()*rxx + vec.y()*ryx + vec.z()*rzx + tx; 00213 G4double y = vec.x()*rxy + vec.y()*ryy + vec.z()*rzy + ty; 00214 G4double z = vec.x()*rxz + vec.y()*ryz + vec.z()*rzz + tz; 00215 00216 vec.setX(x); 00217 vec.setY(y); 00218 vec.setZ(z); 00219 }
G4AffineTransform G4AffineTransform::Inverse | ( | ) | const [inline] |
Definition at line 234 of file G4AffineTransform.icc.
References G4AffineTransform().
Referenced by G4VTwistedFaceted::CalculateExtent(), G4Tubs::CalculateExtent(), G4Trd::CalculateExtent(), G4Torus::CalculateExtent(), G4Sphere::CalculateExtent(), G4Para::CalculateExtent(), G4GenericTrap::CalculateExtent(), G4Ellipsoid::CalculateExtent(), G4CutTubs::CalculateExtent(), G4Cons::CalculateExtent(), G4BREPSolid::CalculateExtent(), G4Box::CalculateExtent(), G4PVPlacement::CheckOverlaps(), G4PVParameterised::CheckOverlaps(), G4ReplicaNavigation::ComputeStep(), G4RegularNavigation::ComputeStep(), G4Navigator::ComputeStep(), G4RegularNavigation::ComputeStepSkippingEqualMaterials(), G4Navigator::CreateGRSSolid(), G4ITNavigator::CreateGRSSolid(), G4Navigator::CreateGRSVolume(), G4ITNavigator::CreateGRSVolume(), G4DisplacedSolid::G4DisplacedSolid(), G4TouchableHistory::G4TouchableHistory(), G4Navigator::GetLocalToGlobalTransform(), G4ITNavigator::GetLocalToGlobalTransform(), G4Navigator::NetRotation(), G4ITNavigator::NetRotation(), G4Navigator::NetTranslation(), G4ITNavigator::NetTranslation(), and G4TouchableHistory::UpdateYourself().
00235 { 00236 return G4AffineTransform( rxx, ryx, rzx, 00237 rxy, ryy, rzy, 00238 rxz, ryz, rzz, 00239 00240 -tx*rxx - ty*rxy - tz*rxz, 00241 -tx*ryx - ty*ryy - tz*ryz, 00242 -tx*rzx - ty*rzy - tz*rzz ); 00243 }
G4AffineTransform & G4AffineTransform::InverseProduct | ( | const G4AffineTransform & | tf1, | |
const G4AffineTransform & | tf2 | |||
) | [inline] |
Definition at line 167 of file G4AffineTransform.icc.
References rxx, rxy, rxz, ryx, ryy, ryz, rzx, rzy, rzz, tx, ty, and tz.
Referenced by G4NavigationLevelRep::G4NavigationLevelRep().
00169 { 00170 G4double itf2tx = - tf2.tx*tf2.rxx - tf2.ty*tf2.rxy - tf2.tz*tf2.rxz; 00171 G4double itf2ty = - tf2.tx*tf2.ryx - tf2.ty*tf2.ryy - tf2.tz*tf2.ryz; 00172 G4double itf2tz = - tf2.tx*tf2.rzx - tf2.ty*tf2.rzy - tf2.tz*tf2.rzz; 00173 00174 rxx=tf1.rxx*tf2.rxx+tf1.rxy*tf2.rxy+tf1.rxz*tf2.rxz; 00175 rxy=tf1.rxx*tf2.ryx+tf1.rxy*tf2.ryy+tf1.rxz*tf2.ryz; 00176 rxz=tf1.rxx*tf2.rzx+tf1.rxy*tf2.rzy+tf1.rxz*tf2.rzz; 00177 00178 ryx=tf1.ryx*tf2.rxx+tf1.ryy*tf2.rxy+tf1.ryz*tf2.rxz; 00179 ryy=tf1.ryx*tf2.ryx+tf1.ryy*tf2.ryy+tf1.ryz*tf2.ryz; 00180 ryz=tf1.ryx*tf2.rzx+tf1.ryy*tf2.rzy+tf1.ryz*tf2.rzz; 00181 00182 rzx=tf1.rzx*tf2.rxx+tf1.rzy*tf2.rxy+tf1.rzz*tf2.rxz; 00183 rzy=tf1.rzx*tf2.ryx+tf1.rzy*tf2.ryy+tf1.rzz*tf2.ryz; 00184 rzz=tf1.rzx*tf2.rzx+tf1.rzy*tf2.rzy+tf1.rzz*tf2.rzz; 00185 00186 tx=tf1.tx*tf2.rxx+tf1.ty*tf2.rxy+tf1.tz*tf2.rxz+itf2tx; 00187 ty=tf1.tx*tf2.ryx+tf1.ty*tf2.ryy+tf1.tz*tf2.ryz+itf2ty; 00188 tz=tf1.tx*tf2.rzx+tf1.ty*tf2.rzy+tf1.tz*tf2.rzz+itf2tz; 00189 00190 return *this; 00191 }
G4AffineTransform & G4AffineTransform::Invert | ( | ) | [inline] |
Definition at line 246 of file G4AffineTransform.icc.
Referenced by G4DisplacedSolid::G4DisplacedSolid(), G4ReflectedSolid::G4ReflectedSolid(), and G4VXTRenergyLoss::PostStepDoIt().
00247 { 00248 G4double v1 = -tx*rxx - ty*rxy - tz*rxz; 00249 G4double v2 = -tx*ryx - ty*ryy - tz*ryz; 00250 G4double v3 = -tx*rzx - ty*rzy - tz*rzz; 00251 00252 tx=v1; ty=v2; tz=v3; 00253 00254 G4double tmp1=ryx; ryx=rxy; rxy=tmp1; 00255 G4double tmp2=rzx; rzx=rxz; rxz=tmp2; 00256 G4double tmp3=rzy; rzy=ryz; ryz=tmp3; 00257 00258 return *this; 00259 00260 }
G4bool G4AffineTransform::IsRotated | ( | ) | const [inline] |
Definition at line 353 of file G4AffineTransform.icc.
Referenced by G4VTwistedFaceted::CalculateExtent(), G4Tubs::CalculateExtent(), G4Trd::CalculateExtent(), G4Trap::CalculateExtent(), G4Torus::CalculateExtent(), G4Tet::CalculateExtent(), G4Paraboloid::CalculateExtent(), G4Para::CalculateExtent(), G4GenericTrap::CalculateExtent(), G4Ellipsoid::CalculateExtent(), G4CutTubs::CalculateExtent(), G4Cons::CalculateExtent(), G4BREPSolid::CalculateExtent(), G4Box::CalculateExtent(), G4Navigator::ComputeLocalAxis(), and G4ITNavigator::ComputeLocalAxis().
G4bool G4AffineTransform::IsTranslated | ( | ) | const [inline] |
G4RotationMatrix G4AffineTransform::NetRotation | ( | ) | const [inline] |
Definition at line 364 of file G4AffineTransform.icc.
Referenced by G4ReflectedSolid::CalculateExtent(), G4Paraboloid::CalculateExtent(), G4DrawVoxels::DrawVoxels(), G4ErrorCylSurfaceTarget::Dump(), G4ReflectedSolid::GetFrameRotation(), G4DisplacedSolid::GetFrameRotation(), G4VIntersectionLocator::GetGlobalSurfaceNormal(), G4ReflectedSolid::GetObjectRotation(), G4DisplacedSolid::GetObjectRotation(), G4TouchableHistory::GetRotation(), G4ReflectedSolid::StreamInfo(), and G4DisplacedSolid::StreamInfo().
00364 { 00365 G4RotationMatrix mat; 00366 return mat.rotateAxes(G4ThreeVector(rxx,ryx,rzx), 00367 G4ThreeVector(rxy,ryy,rzy), 00368 G4ThreeVector(rxz,ryz,rzz)); 00369 }
G4ThreeVector G4AffineTransform::NetTranslation | ( | ) | const [inline] |
Definition at line 372 of file G4AffineTransform.icc.
Referenced by G4AdjointCrossSurfChecker::AddaSphericalSurfaceWithCenterAtTheCenterOfAVolume(), G4VTwistedFaceted::CalculateExtent(), G4Tubs::CalculateExtent(), G4Trd::CalculateExtent(), G4Trap::CalculateExtent(), G4Torus::CalculateExtent(), G4Tet::CalculateExtent(), G4Sphere::CalculateExtent(), G4ReflectedSolid::CalculateExtent(), G4Paraboloid::CalculateExtent(), G4Para::CalculateExtent(), G4Orb::CalculateExtent(), G4GenericTrap::CalculateExtent(), G4Ellipsoid::CalculateExtent(), G4CutTubs::CalculateExtent(), G4Cons::CalculateExtent(), G4BREPSolid::CalculateExtent(), G4Box::CalculateExtent(), G4DrawVoxels::DrawVoxels(), G4ErrorCylSurfaceTarget::Dump(), G4ReflectedSolid::GetFrameTranslation(), G4DisplacedSolid::GetFrameTranslation(), G4VIntersectionLocator::GetGlobalSurfaceNormal(), G4ReflectedSolid::GetObjectTranslation(), G4DisplacedSolid::GetObjectTranslation(), G4ErrorCylSurfaceTarget::GetTangentPlane(), G4TouchableHistory::GetTranslation(), G4ReflectedSolid::StreamInfo(), and G4DisplacedSolid::StreamInfo().
00373 { 00374 return G4ThreeVector(tx,ty,tz); 00375 }
G4AffineTransform G4AffineTransform::operator * | ( | const G4AffineTransform & | tf | ) | const [inline] |
Definition at line 94 of file G4AffineTransform.icc.
References G4AffineTransform(), rxx, rxy, rxz, ryx, ryy, ryz, rzx, rzy, rzz, tx, ty, and tz.
00095 { 00096 return G4AffineTransform( 00097 rxx*tf.rxx+rxy*tf.ryx+rxz*tf.rzx, 00098 rxx*tf.rxy+rxy*tf.ryy+rxz*tf.rzy, 00099 rxx*tf.rxz+rxy*tf.ryz+rxz*tf.rzz, 00100 00101 ryx*tf.rxx+ryy*tf.ryx+ryz*tf.rzx, 00102 ryx*tf.rxy+ryy*tf.ryy+ryz*tf.rzy, 00103 ryx*tf.rxz+ryy*tf.ryz+ryz*tf.rzz, 00104 00105 rzx*tf.rxx+rzy*tf.ryx+rzz*tf.rzx, 00106 rzx*tf.rxy+rzy*tf.ryy+rzz*tf.rzy, 00107 rzx*tf.rxz+rzy*tf.ryz+rzz*tf.rzz, 00108 00109 tx*tf.rxx+ty*tf.ryx+tz*tf.rzx+tf.tx, 00110 tx*tf.rxy+ty*tf.ryy+tz*tf.rzy+tf.ty, 00111 tx*tf.rxz+ty*tf.ryz+tz*tf.rzz+tf.tz); 00112 }
G4AffineTransform & G4AffineTransform::operator *= | ( | const G4AffineTransform & | tf | ) | [inline] |
Definition at line 115 of file G4AffineTransform.icc.
References rxx, rxy, rxz, ryx, ryy, ryz, rzx, rzy, rzz, tx, ty, and tz.
00116 { 00117 // Use temporaries for `in place' compound transform computation 00118 00119 G4double nrxx=rxx*tf.rxx+rxy*tf.ryx+rxz*tf.rzx; 00120 G4double nrxy=rxx*tf.rxy+rxy*tf.ryy+rxz*tf.rzy; 00121 G4double nrxz=rxx*tf.rxz+rxy*tf.ryz+rxz*tf.rzz; 00122 00123 G4double nryx=ryx*tf.rxx+ryy*tf.ryx+ryz*tf.rzx; 00124 G4double nryy=ryx*tf.rxy+ryy*tf.ryy+ryz*tf.rzy; 00125 G4double nryz=ryx*tf.rxz+ryy*tf.ryz+ryz*tf.rzz; 00126 00127 G4double nrzx=rzx*tf.rxx+rzy*tf.ryx+rzz*tf.rzx; 00128 G4double nrzy=rzx*tf.rxy+rzy*tf.ryy+rzz*tf.rzy; 00129 G4double nrzz=rzx*tf.rxz+rzy*tf.ryz+rzz*tf.rzz; 00130 00131 G4double ntx=tx*tf.rxx+ty*tf.ryx+tz*tf.rzx+tf.tx; 00132 G4double nty=tx*tf.rxy+ty*tf.ryy+tz*tf.rzy+tf.ty; 00133 G4double ntz=tx*tf.rxz+ty*tf.ryz+tz*tf.rzz+tf.tz; 00134 00135 tx=ntx; ty=nty; tz=ntz; 00136 rxx=nrxx; rxy=nrxy; rxz=nrxz; 00137 ryx=nryx; ryy=nryy; ryz=nryz; 00138 rzx=nrzx; rzy=nrzy; rzz=nrzz; 00139 00140 return *this; 00141 }
G4bool G4AffineTransform::operator!= | ( | const G4AffineTransform & | tf | ) | const [inline] |
Definition at line 291 of file G4AffineTransform.icc.
References rxx, rxy, rxz, ryx, ryy, ryz, rzx, rzy, rzz, tx, ty, and tz.
00292 { 00293 return (tx!=tf.tx||ty!=tf.ty||tz!=tf.tz|| 00294 rxx!=tf.rxx||rxy!=tf.rxy||rxz!=tf.rxz|| 00295 ryx!=tf.ryx||ryy!=tf.ryy||ryz!=tf.ryz|| 00296 rzx!=tf.rzx||rzy!=tf.rzy||rzz!=tf.rzz) ? true : false; 00297 }
G4AffineTransform & G4AffineTransform::operator+= | ( | const G4ThreeVector & | tlate | ) | [inline] |
Definition at line 263 of file G4AffineTransform.icc.
00264 { 00265 tx += tlate.x(); 00266 ty += tlate.y(); 00267 tz += tlate.z(); 00268 00269 return *this; 00270 }
G4AffineTransform & G4AffineTransform::operator-= | ( | const G4ThreeVector & | tlate | ) | [inline] |
Definition at line 273 of file G4AffineTransform.icc.
00274 { 00275 tx -= tlate.x(); 00276 ty -= tlate.y(); 00277 tz -= tlate.z(); 00278 00279 return *this; 00280 }
G4bool G4AffineTransform::operator== | ( | const G4AffineTransform & | tf | ) | const [inline] |
Definition at line 283 of file G4AffineTransform.icc.
References rxx, rxy, rxz, ryx, ryy, ryz, rzx, rzy, rzz, tx, ty, and tz.
00284 { 00285 return (tx==tf.tx&&ty==tf.ty&&tz==tf.tz&& 00286 rxx==tf.rxx&&rxy==tf.rxy&&rxz==tf.rxz&& 00287 ryx==tf.ryx&&ryy==tf.ryy&&ryz==tf.ryz&& 00288 rzx==tf.rzx&&rzy==tf.rzy&&rzz==tf.rzz) ? true : false; 00289 }
Definition at line 300 of file G4AffineTransform.icc.
00301 { 00302 G4double v = 0.0; 00303 switch(n) 00304 { 00305 case 0: 00306 v=rxx; 00307 break; 00308 case 1: 00309 v=rxy; 00310 break; 00311 case 2: 00312 v=rxz; 00313 break; 00314 case 4: 00315 v=ryx; 00316 break; 00317 case 5: 00318 v=ryy; 00319 break; 00320 case 6: 00321 v=ryz; 00322 break; 00323 case 8: 00324 v=rzx; 00325 break; 00326 case 9: 00327 v=rzy; 00328 break; 00329 case 10: 00330 v=rzz; 00331 break; 00332 case 12: 00333 v=tx; 00334 break; 00335 case 13: 00336 v=ty; 00337 break; 00338 case 14: 00339 v=tz; 00340 break; 00341 case 3: 00342 case 7: 00343 case 11: 00344 break; 00345 case 15: 00346 v=1.0; 00347 break; 00348 } 00349 return v; 00350 }
G4AffineTransform & G4AffineTransform::Product | ( | const G4AffineTransform & | tf1, | |
const G4AffineTransform & | tf2 | |||
) | [inline] |
Definition at line 144 of file G4AffineTransform.icc.
References rxx, rxy, rxz, ryx, ryy, ryz, rzx, rzy, rzz, tx, ty, and tz.
Referenced by G4DisplacedSolid::CalculateExtent().
00146 { 00147 rxx=tf1.rxx*tf2.rxx + tf1.rxy*tf2.ryx + tf1.rxz*tf2.rzx; 00148 rxy=tf1.rxx*tf2.rxy + tf1.rxy*tf2.ryy + tf1.rxz*tf2.rzy; 00149 rxz=tf1.rxx*tf2.rxz + tf1.rxy*tf2.ryz + tf1.rxz*tf2.rzz; 00150 00151 ryx=tf1.ryx*tf2.rxx + tf1.ryy*tf2.ryx + tf1.ryz*tf2.rzx; 00152 ryy=tf1.ryx*tf2.rxy + tf1.ryy*tf2.ryy + tf1.ryz*tf2.rzy; 00153 ryz=tf1.ryx*tf2.rxz + tf1.ryy*tf2.ryz + tf1.ryz*tf2.rzz; 00154 00155 rzx=tf1.rzx*tf2.rxx + tf1.rzy*tf2.ryx + tf1.rzz*tf2.rzx; 00156 rzy=tf1.rzx*tf2.rxy + tf1.rzy*tf2.ryy + tf1.rzz*tf2.rzy; 00157 rzz=tf1.rzx*tf2.rxz + tf1.rzy*tf2.ryz + tf1.rzz*tf2.rzz; 00158 00159 tx=tf1.tx*tf2.rxx + tf1.ty*tf2.ryx + tf1.tz*tf2.rzx + tf2.tx; 00160 ty=tf1.tx*tf2.rxy + tf1.ty*tf2.ryy + tf1.tz*tf2.rzy + tf2.ty; 00161 tz=tf1.tx*tf2.rxz + tf1.ty*tf2.ryz + tf1.tz*tf2.rzz + tf2.tz; 00162 00163 return *this; 00164 }
void G4AffineTransform::SetNetRotation | ( | const G4RotationMatrix & | rot | ) | [inline] |
Definition at line 378 of file G4AffineTransform.icc.
Referenced by G4ReflectedSolid::SetFrameRotation(), G4DisplacedSolid::SetFrameRotation(), G4ReflectedSolid::SetObjectRotation(), and G4DisplacedSolid::SetObjectRotation().
00379 { 00380 rxx=rot.xx(); 00381 rxy=rot.xy(); 00382 rxz=rot.xz(); 00383 ryx=rot.yx(); 00384 ryy=rot.yy(); 00385 ryz=rot.yz(); 00386 rzx=rot.zx(); 00387 rzy=rot.zy(); 00388 rzz=rot.zz(); 00389 }
void G4AffineTransform::SetNetTranslation | ( | const G4ThreeVector & | tlate | ) | [inline] |
Definition at line 392 of file G4AffineTransform.icc.
Referenced by G4ReflectedSolid::SetFrameTranslation(), G4DisplacedSolid::SetFrameTranslation(), G4ReflectedSolid::SetObjectTranslation(), and G4DisplacedSolid::SetObjectTranslation().
G4ThreeVector G4AffineTransform::TransformAxis | ( | const G4ThreeVector & | axis | ) | const [inline] |
Definition at line 202 of file G4AffineTransform.icc.
Referenced by G4RayTrajectory::AppendStep(), G4PolyPhiFace::CalculateExtent(), G4PolyhedraSide::CalculateExtent(), G4PolyconeSide::CalculateExtent(), G4Hype::CalculateExtent(), G4EllipticalTube::CalculateExtent(), G4EllipticalCone::CalculateExtent(), G4AuxiliaryNavServices::CheckPointExiting(), G4AuxiliaryNavServices::CheckPointOnSurface(), G4Navigator::ComputeLocalAxis(), G4ITNavigator::ComputeLocalAxis(), G4ReplicaNavigation::ComputeStep(), G4RegularNavigation::ComputeStep(), G4Navigator::ComputeStep(), G4DisplacedSolid::DistanceToIn(), G4DisplacedSolid::DistanceToOut(), G4AdjointPosOnPhysVolGenerator::GenerateAPositionOnTheExtSurfaceOfThePhysicalVolume(), G4ErrorCylSurfaceTarget::GetDistanceFromPoint(), G4Navigator::GetGlobalExitNormal(), G4ITNavigator::GetGlobalExitNormal(), G4VIntersectionLocator::GetGlobalSurfaceNormal(), G4RegularNavigation::LevelLocate(), G4Navigator::LocateGlobalPointAndSetup(), G4ITNavigator::LocateGlobalPointAndSetup(), G4VXTRenergyLoss::PostStepDoIt(), G4FastTrack::SetCurrentTrack(), and G4DisplacedSolid::SurfaceNormal().
00203 { 00204 return G4ThreeVector( axis.x()*rxx + axis.y()*ryx + axis.z()*rzx, 00205 axis.x()*rxy + axis.y()*ryy + axis.z()*rzy, 00206 axis.x()*rxz + axis.y()*ryz + axis.z()*rzz ); 00207 }
G4ThreeVector G4AffineTransform::TransformPoint | ( | const G4ThreeVector & | vec | ) | const [inline] |
Definition at line 194 of file G4AffineTransform.icc.
Referenced by G4ReplicaNavigation::BackLocate(), G4VTwistedFaceted::CalculateExtent(), G4TwistedTubs::CalculateExtent(), G4Tubs::CalculateExtent(), G4Trd::CalculateExtent(), G4Torus::CalculateExtent(), G4Tet::CalculateExtent(), G4Sphere::CalculateExtent(), G4PolyPhiFace::CalculateExtent(), G4Para::CalculateExtent(), G4Hype::CalculateExtent(), G4GenericTrap::CalculateExtent(), G4Ellipsoid::CalculateExtent(), G4CutTubs::CalculateExtent(), G4Cons::CalculateExtent(), G4BREPSolid::CalculateExtent(), G4Box::CalculateExtent(), G4PVPlacement::CheckOverlaps(), G4PVParameterised::CheckOverlaps(), G4Navigator::ComputeLocalPoint(), G4ITNavigator::ComputeLocalPoint(), G4ReplicaNavigation::ComputeSafety(), G4ReplicaNavigation::ComputeStep(), G4RegularNavigation::ComputeStep(), G4RegularNavigation::ComputeStepSkippingEqualMaterials(), G4VTwistedFaceted::CreateRotatedVertices(), G4Tubs::CreateRotatedVertices(), G4Trd::CreateRotatedVertices(), G4Trap::CreateRotatedVertices(), G4Tet::CreateRotatedVertices(), G4Para::CreateRotatedVertices(), G4Ellipsoid::CreateRotatedVertices(), G4CutTubs::CreateRotatedVertices(), G4BREPSolid::CreateRotatedVertices(), G4Box::CreateRotatedVertices(), G4DisplacedSolid::DistanceToIn(), G4DisplacedSolid::DistanceToOut(), G4AdjointPosOnPhysVolGenerator::GenerateAPositionOnTheExtSurfaceOfThePhysicalVolume(), G4ErrorCylSurfaceTarget::GetDistanceFromPoint(), G4Navigator::GetLocalExitNormal(), G4ITNavigator::GetLocalExitNormal(), G4Navigator::GetLocalExitNormalAndCheck(), G4ITNavigator::GetLocalExitNormalAndCheck(), G4DisplacedSolid::GetPointOnSurface(), G4ErrorCylSurfaceTarget::GetTangentPlane(), G4DisplacedSolid::Inside(), G4VoxelNavigation::LevelLocate(), G4RegularNavigation::LevelLocate(), G4ParameterisedNavigation::LevelLocate(), G4NormalNavigation::LevelLocate(), G4Navigator::LocateGlobalPointAndSetup(), G4ITNavigator::LocateGlobalPointAndSetup(), G4VXTRenergyLoss::PostStepDoIt(), G4FastTrack::SetCurrentTrack(), and G4DisplacedSolid::SurfaceNormal().
00195 { 00196 return G4ThreeVector( vec.x()*rxx + vec.y()*ryx + vec.z()*rzx + tx, 00197 vec.x()*rxy + vec.y()*ryy + vec.z()*rzy + ty, 00198 vec.x()*rxz + vec.y()*ryz + vec.z()*rzz + tz ); 00199 }