Changeset 1346 for trunk/source/visualization/modeling/src
- Timestamp:
- Dec 22, 2010, 11:33:38 AM (14 years ago)
- Location:
- trunk/source/visualization/modeling/src
- Files:
-
- 33 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/source/visualization/modeling/src/CVS/Entries
r1337 r1346 1 /G4AttFilterUtils.cc/1.4/ Thu Sep 30 06:17:46 2010//2 /G4AxesModel.cc/1.6/Thu Sep 30 06:17:46 2010//3 /G4BoundingSphereScene.cc/1.11/Thu Sep 30 06:17:46 2010//4 /G4DigiFilterFactories.cc/1.1/ Thu Sep 30 06:17:46 2010//5 /G4DigiModel.cc/1.1/ Thu Sep 30 06:17:46 2010//6 /G4FlavoredParallelWorldModel.cc/1.7/Thu Sep 30 06:17:46 2010//7 /G4HitFilterFactories.cc/1.2/ Thu Sep 30 06:17:46 2010//8 /G4HitsModel.cc/1.18/T hu Sep 30 06:17:46 2010//9 /G4LogicalVolumeModel.cc/1.14/ Thu Sep 30 06:17:46 2010//10 /G4ModelingParameters.cc/1.16/T hu Sep 30 06:17:46 2010//11 /G4NullModel.cc/1.9/Thu Sep 30 06:17:46 2010//12 /G4PSHitsModel.cc/1.4/ Thu Sep 30 06:17:46 2010//13 /G4PhysicalVolumeMassScene.cc/1.7/ Thu Sep 30 06:17:46 2010//14 /G4PhysicalVolumeModel.cc/1.6 7/Thu Sep 30 06:17:46 2010//15 /G4PhysicalVolumeSearchScene.cc/1.14/ Thu Sep 30 06:17:46 2010//16 /G4ScaleModel.cc/1.4/Thu Sep 30 06:17:46 2010//17 /G4TextModel.cc/1.7/Thu Sep 30 06:17:47 2010//18 /G4TrajectoriesModel.cc/1.25/T hu Sep 30 06:17:47 2010//19 /G4TrajectoryChargeFilter.cc/1.4/ Thu Sep 30 06:17:47 2010//20 /G4TrajectoryDrawByAttribute.cc/1.5/ Thu Sep 30 06:17:47 2010//21 /G4TrajectoryDrawByCharge.cc/1.10/ Thu Sep 30 06:17:47 2010//22 /G4TrajectoryDrawByOriginVolume.cc/1.6/ Thu Sep 30 06:17:47 2010//23 /G4TrajectoryDrawByParticleID.cc/1.11/T hu Sep 30 06:17:47 2010//24 /G4TrajectoryDrawerUtils.cc/1.1 4/Thu Sep 30 06:17:47 2010//25 /G4TrajectoryFilterFactories.cc/1.5/T hu Sep 30 06:17:47 2010//26 /G4TrajectoryGenericDrawer.cc/1.3/T hu Sep 30 06:17:47 2010//27 /G4TrajectoryModelFactories.cc/1.7/T hu Sep 30 06:17:48 2010//28 /G4TrajectoryOriginVolumeFilter.cc/1.3/ Thu Sep 30 06:17:48 2010//29 /G4TrajectoryParticleFilter.cc/1.3/ Thu Sep 30 06:17:48 2010//30 /G4VModel.cc/1.14/ Thu Sep 30 06:17:48 2010//31 /G4VTrajectoryModel.cc/1.3/Thu Sep 30 06:17:49 2010//32 /G4VisTrajContext.cc/1.6/T hu Sep 30 06:17:49 2010//1 /G4AttFilterUtils.cc/1.4/Wed Dec 13 15:50:06 2006//Tgeant4-09-04-ref-00 2 /G4AxesModel.cc/1.6/Thu Jun 29 21:32:38 2006//Tgeant4-09-04-ref-00 3 /G4BoundingSphereScene.cc/1.11/Thu Jun 29 21:32:40 2006//Tgeant4-09-04-ref-00 4 /G4DigiFilterFactories.cc/1.1/Sun May 30 11:24:30 2010//Tgeant4-09-04-ref-00 5 /G4DigiModel.cc/1.1/Sun May 30 11:24:30 2010//Tgeant4-09-04-ref-00 6 /G4FlavoredParallelWorldModel.cc/1.7/Thu Jun 29 21:32:42 2006//Tgeant4-09-04-ref-00 7 /G4HitFilterFactories.cc/1.2/Sun May 30 11:24:03 2010//Tgeant4-09-04-ref-00 8 /G4HitsModel.cc/1.18/Tue Nov 14 14:42:08 2006//Tgeant4-09-04-ref-00 9 /G4LogicalVolumeModel.cc/1.14/Wed Nov 1 10:28:42 2006//Tgeant4-09-04-ref-00 10 /G4ModelingParameters.cc/1.16/Tue May 11 11:13:35 2010//Tgeant4-09-04-ref-00 11 /G4NullModel.cc/1.9/Thu Jun 29 21:32:50 2006//Tgeant4-09-04-ref-00 12 /G4PSHitsModel.cc/1.4/Wed Nov 4 12:44:39 2009//Tgeant4-09-04-ref-00 13 /G4PhysicalVolumeMassScene.cc/1.7/Mon Nov 6 09:24:13 2006//Tgeant4-09-04-ref-00 14 /G4PhysicalVolumeModel.cc/1.68/Fri Nov 5 15:19:29 2010//Tgeant4-09-04-ref-00 15 /G4PhysicalVolumeSearchScene.cc/1.14/Sun Jul 27 10:49:24 2008//Tgeant4-09-04-ref-00 16 /G4ScaleModel.cc/1.4/Thu Jun 29 21:32:58 2006//Tgeant4-09-04-ref-00 17 /G4TextModel.cc/1.7/Thu Jun 29 21:33:00 2006//Tgeant4-09-04-ref-00 18 /G4TrajectoriesModel.cc/1.25/Tue May 11 11:21:52 2010//Tgeant4-09-04-ref-00 19 /G4TrajectoryChargeFilter.cc/1.4/Fri Aug 25 19:44:14 2006//Tgeant4-09-04-ref-00 20 /G4TrajectoryDrawByAttribute.cc/1.5/Fri May 28 02:00:59 2010//Tgeant4-09-04-ref-00 21 /G4TrajectoryDrawByCharge.cc/1.10/Fri May 28 02:00:59 2010//Tgeant4-09-04-ref-00 22 /G4TrajectoryDrawByOriginVolume.cc/1.6/Fri May 28 02:00:59 2010//Tgeant4-09-04-ref-00 23 /G4TrajectoryDrawByParticleID.cc/1.11/Tue Jun 1 21:17:41 2010//Tgeant4-09-04-ref-00 24 /G4TrajectoryDrawerUtils.cc/1.15/dummy timestamp from new-entry//Tgeant4-09-04-ref-00 25 /G4TrajectoryFilterFactories.cc/1.5/Tue Sep 12 18:53:03 2006//Tgeant4-09-04-ref-00 26 /G4TrajectoryGenericDrawer.cc/1.3/Tue May 11 11:31:31 2010//Tgeant4-09-04-ref-00 27 /G4TrajectoryModelFactories.cc/1.7/Tue Sep 12 18:53:03 2006//Tgeant4-09-04-ref-00 28 /G4TrajectoryOriginVolumeFilter.cc/1.3/Fri Aug 25 19:44:14 2006//Tgeant4-09-04-ref-00 29 /G4TrajectoryParticleFilter.cc/1.3/Fri Aug 25 19:44:14 2006//Tgeant4-09-04-ref-00 30 /G4VModel.cc/1.14/Wed Nov 1 10:33:00 2006//Tgeant4-09-04-ref-00 31 /G4VTrajectoryModel.cc/1.3/Thu Jun 29 21:33:26 2006//Tgeant4-09-04-ref-00 32 /G4VisTrajContext.cc/1.6/Tue Feb 24 12:00:56 2009//Tgeant4-09-04-ref-00 33 33 D -
trunk/source/visualization/modeling/src/CVS/Tag
r1331 r1346 1 Ngeant4-09-04- beta-011 Ngeant4-09-04-ref-00 -
trunk/source/visualization/modeling/src/G4AttFilterUtils.cc
r1337 r1346 25 25 // 26 26 // $Id: G4AttFilterUtils.cc,v 1.4 2006/12/13 15:50:06 gunter Exp $ 27 // GEANT4 tag $Name: geant4-09-04-beta-01$27 // GEANT4 tag $Name: $ 28 28 // 29 29 // Visualisation attribute filter utility functions. -
trunk/source/visualization/modeling/src/G4AxesModel.cc
r1337 r1346 26 26 // 27 27 // $Id: G4AxesModel.cc,v 1.6 2006/06/29 21:32:38 gunter Exp $ 28 // GEANT4 tag $Name: geant4-09-04-beta-01$28 // GEANT4 tag $Name: $ 29 29 // 30 30 // -
trunk/source/visualization/modeling/src/G4BoundingSphereScene.cc
r1337 r1346 26 26 // 27 27 // $Id: G4BoundingSphereScene.cc,v 1.11 2006/06/29 21:32:40 gunter Exp $ 28 // GEANT4 tag $Name: geant4-09-04-beta-01$28 // GEANT4 tag $Name: $ 29 29 // 30 30 // -
trunk/source/visualization/modeling/src/G4DigiFilterFactories.cc
r1337 r1346 25 25 // 26 26 /// $Id: G4DigiFilterFactories.cc,v 1.1 2010/05/30 11:24:30 allison Exp $ 27 // GEANT4 tag $Name: geant4-09-04-beta-01$27 // GEANT4 tag $Name: $ 28 28 // 29 29 // -
trunk/source/visualization/modeling/src/G4DigiModel.cc
r1337 r1346 26 26 // 27 27 // $Id: G4DigiModel.cc,v 1.1 2010/05/30 11:24:30 allison Exp $ 28 // GEANT4 tag $Name: geant4-09-04-beta-01$28 // GEANT4 tag $Name: $ 29 29 // 30 30 // -
trunk/source/visualization/modeling/src/G4FlavoredParallelWorldModel.cc
r1337 r1346 26 26 // 27 27 // $Id: G4FlavoredParallelWorldModel.cc,v 1.7 2006/06/29 21:32:42 gunter Exp $ 28 // GEANT4 tag $Name: geant4-09-04-beta-01$28 // GEANT4 tag $Name: $ 29 29 // 30 30 // P. Mora de Freitas et M.Verderi - 19 June 1998. -
trunk/source/visualization/modeling/src/G4HitFilterFactories.cc
r1337 r1346 25 25 // 26 26 /// $Id: G4HitFilterFactories.cc,v 1.2 2010/05/30 11:24:03 allison Exp $ 27 // GEANT4 tag $Name: geant4-09-04-beta-01$27 // GEANT4 tag $Name: $ 28 28 // 29 29 // -
trunk/source/visualization/modeling/src/G4HitsModel.cc
r1337 r1346 26 26 // 27 27 // $Id: G4HitsModel.cc,v 1.18 2006/11/14 14:42:08 allison Exp $ 28 // GEANT4 tag $Name: geant4-09-04-beta-01$28 // GEANT4 tag $Name: $ 29 29 // 30 30 // -
trunk/source/visualization/modeling/src/G4LogicalVolumeModel.cc
r1337 r1346 26 26 // 27 27 // $Id: G4LogicalVolumeModel.cc,v 1.14 2006/11/01 10:28:42 allison Exp $ 28 // GEANT4 tag $Name: geant4-09-04-beta-01$28 // GEANT4 tag $Name: $ 29 29 // 30 30 // -
trunk/source/visualization/modeling/src/G4ModelingParameters.cc
r1337 r1346 26 26 // 27 27 // $Id: G4ModelingParameters.cc,v 1.16 2010/05/11 11:13:35 allison Exp $ 28 // GEANT4 tag $Name: geant4-09-04-beta-01$28 // GEANT4 tag $Name: $ 29 29 // 30 30 // -
trunk/source/visualization/modeling/src/G4NullModel.cc
r1337 r1346 26 26 // 27 27 // $Id: G4NullModel.cc,v 1.9 2006/06/29 21:32:50 gunter Exp $ 28 // GEANT4 tag $Name: geant4-09-04-beta-01$28 // GEANT4 tag $Name: $ 29 29 // 30 30 // -
trunk/source/visualization/modeling/src/G4PSHitsModel.cc
r1337 r1346 26 26 // 27 27 // $Id: G4PSHitsModel.cc,v 1.4 2009/11/04 12:44:39 allison Exp $ 28 // GEANT4 tag $Name: geant4-09-04-beta-01$28 // GEANT4 tag $Name: $ 29 29 // 30 30 // -
trunk/source/visualization/modeling/src/G4PhysicalVolumeMassScene.cc
r1337 r1346 26 26 // 27 27 // $Id: G4PhysicalVolumeMassScene.cc,v 1.7 2006/11/06 09:24:13 allison Exp $ 28 // GEANT4 tag $Name: geant4-09-04-beta-01$28 // GEANT4 tag $Name: $ 29 29 // 30 30 // -
trunk/source/visualization/modeling/src/G4PhysicalVolumeModel.cc
r1337 r1346 25 25 // 26 26 // 27 // $Id: G4PhysicalVolumeModel.cc,v 1.6 7 2010/05/11 11:16:51allison Exp $28 // GEANT4 tag $Name: geant4-09-04-beta-01$27 // $Id: G4PhysicalVolumeModel.cc,v 1.68 2010/11/05 15:19:29 allison Exp $ 28 // GEANT4 tag $Name: $ 29 29 // 30 30 // … … 475 475 if (daughtersToBeDrawn) { 476 476 for (G4int iDaughter = 0; iDaughter < nDaughters; iDaughter++) { 477 G4VPhysicalVolume* pVPV = pLV -> GetDaughter (iDaughter); 477 // Store daughter pVPV in local variable ready for recursion... 478 G4VPhysicalVolume* pDaughterVPV = pLV -> GetDaughter (iDaughter); 478 479 // Descend the geometry structure recursively... 479 480 fCurrentDepth++; 480 481 VisitGeometryAndGetVisReps 481 (p VPV, requestedDepth - 1, theNewAT, sceneHandler);482 (pDaughterVPV, requestedDepth - 1, theNewAT, sceneHandler); 482 483 fCurrentDepth--; 483 484 } -
trunk/source/visualization/modeling/src/G4PhysicalVolumeSearchScene.cc
r1337 r1346 26 26 // 27 27 // $Id: G4PhysicalVolumeSearchScene.cc,v 1.14 2008/07/27 10:49:24 allison Exp $ 28 // GEANT4 tag $Name: geant4-09-04-beta-01$28 // GEANT4 tag $Name: $ 29 29 // 30 30 // -
trunk/source/visualization/modeling/src/G4ScaleModel.cc
r1337 r1346 26 26 // 27 27 // $Id: G4ScaleModel.cc,v 1.4 2006/06/29 21:32:58 gunter Exp $ 28 // GEANT4 tag $Name: geant4-09-04-beta-01$28 // GEANT4 tag $Name: $ 29 29 // 30 30 // -
trunk/source/visualization/modeling/src/G4TextModel.cc
r1337 r1346 26 26 // 27 27 // $Id: G4TextModel.cc,v 1.7 2006/06/29 21:33:00 gunter Exp $ 28 // GEANT4 tag $Name: geant4-09-04-beta-01$28 // GEANT4 tag $Name: $ 29 29 // 30 30 // -
trunk/source/visualization/modeling/src/G4TrajectoriesModel.cc
r1337 r1346 26 26 // 27 27 // $Id: G4TrajectoriesModel.cc,v 1.25 2010/05/11 11:21:52 allison Exp $ 28 // GEANT4 tag $Name: geant4-09-04-beta-01$28 // GEANT4 tag $Name: $ 29 29 // 30 30 // -
trunk/source/visualization/modeling/src/G4TrajectoryChargeFilter.cc
r1337 r1346 25 25 // 26 26 // $Id: G4TrajectoryChargeFilter.cc,v 1.4 2006/08/25 19:44:14 tinslay Exp $ 27 // GEANT4 tag $Name: geant4-09-04-beta-01$27 // GEANT4 tag $Name: $ 28 28 // 29 29 // Filter trajectories according to charge. Only registered -
trunk/source/visualization/modeling/src/G4TrajectoryDrawByAttribute.cc
r1337 r1346 25 25 // 26 26 // $Id: G4TrajectoryDrawByAttribute.cc,v 1.5 2010/05/28 02:00:59 allison Exp $ 27 // GEANT4 tag $Name: geant4-09-04-beta-01$27 // GEANT4 tag $Name: $ 28 28 // 29 29 // Jane Tinslay August 2006 -
trunk/source/visualization/modeling/src/G4TrajectoryDrawByCharge.cc
r1337 r1346 25 25 // 26 26 // $Id: G4TrajectoryDrawByCharge.cc,v 1.10 2010/05/28 02:00:59 allison Exp $ 27 // GEANT4 tag $Name: geant4-09-04-beta-01$27 // GEANT4 tag $Name: $ 28 28 // 29 29 // Jane Tinslay, John Allison, Joseph Perl November 2005 -
trunk/source/visualization/modeling/src/G4TrajectoryDrawByOriginVolume.cc
r1337 r1346 25 25 // 26 26 // $Id: G4TrajectoryDrawByOriginVolume.cc,v 1.6 2010/05/28 02:00:59 allison Exp $ 27 // GEANT4 tag $Name: geant4-09-04-beta-01$27 // GEANT4 tag $Name: $ 28 28 // 29 29 // Jane Tinslay March 2006 -
trunk/source/visualization/modeling/src/G4TrajectoryDrawByParticleID.cc
r1337 r1346 25 25 // 26 26 // $Id: G4TrajectoryDrawByParticleID.cc,v 1.11 2010/06/01 21:17:41 allison Exp $ 27 // GEANT4 tag $Name: geant4-09-04-beta-01$27 // GEANT4 tag $Name: $ 28 28 // 29 29 // Jane Tinslay, John Allison, Joseph Perl November 2005 -
trunk/source/visualization/modeling/src/G4TrajectoryDrawerUtils.cc
r1337 r1346 24 24 // ******************************************************************** 25 25 // 26 // $Id: G4TrajectoryDrawerUtils.cc,v 1.1 4 2010/05/11 11:58:18allison Exp $27 // GEANT4 tag $Name: geant4-09-04-beta-01$26 // $Id: G4TrajectoryDrawerUtils.cc,v 1.15 2010/11/14 22:13:55 allison Exp $ 27 // GEANT4 tag $Name: $ 28 28 // 29 29 // Jane Tinslay, John Allison, Joseph Perl November 2005 … … 45 45 46 46 47 void GetPoints(const G4VTrajectory& traj, G4Polyline& trajectoryLine, 48 G4Polymarker& auxiliaryPoints, G4Polymarker& stepPoints) 49 { 47 void GetPoints(const G4VTrajectory& traj, 48 G4Polyline& trajectoryLine, 49 G4Polymarker& auxiliaryPoints, 50 G4Polymarker& stepPoints) 51 { 52 // Keep positions. Don't store unless first or different. 53 std::vector<G4ThreeVector> positions; 54 50 55 for (G4int i=0; i<traj.GetPointEntries(); i++) { 56 51 57 G4VTrajectoryPoint* aTrajectoryPoint = traj.GetPoint(i); 52 53 const std::vector<G4ThreeVector>* auxiliaries 54 = aTrajectoryPoint->GetAuxiliaryPoints(); 55 56 if (0 != auxiliaries) { 57 for (size_t iAux=0; iAux<auxiliaries->size(); ++iAux) { 58 const G4ThreeVector pos((*auxiliaries)[iAux]); 59 if (trajectoryLine.size() >0) { 60 if (pos != trajectoryLine[trajectoryLine.size()-1]) { 61 trajectoryLine.push_back(pos); 62 auxiliaryPoints.push_back(pos); 63 } 64 } else { 65 trajectoryLine.push_back(pos); 66 auxiliaryPoints.push_back(pos); 67 } 68 } 69 } 70 const G4ThreeVector pos(aTrajectoryPoint->GetPosition()); 71 if (trajectoryLine.size() >0) { 72 if (pos != trajectoryLine[trajectoryLine.size()-1]) { 73 trajectoryLine.push_back(pos); 74 stepPoints.push_back(pos); 75 } 76 } else { 77 trajectoryLine.push_back(pos); 78 stepPoints.push_back(pos); 79 } 80 } 58 const G4ThreeVector& trajectoryPointPosition = 59 aTrajectoryPoint->GetPosition(); 60 61 // Only store if first or if different 62 if (positions.size() == 0 || 63 trajectoryPointPosition != positions[positions.size()-1]) { 64 65 const std::vector<G4ThreeVector>* auxiliaries 66 = aTrajectoryPoint->GetAuxiliaryPoints(); 67 if (0 != auxiliaries) { 68 for (size_t iAux=0; iAux<auxiliaries->size(); ++iAux) { 69 const G4ThreeVector& auxPointPosition = (*auxiliaries)[iAux]; 70 if (positions.size() == 0 || 71 auxPointPosition != positions[positions.size()-1]) { 72 // Only store if first or if different 73 positions.push_back(trajectoryPointPosition); 74 trajectoryLine.push_back(auxPointPosition); 75 auxiliaryPoints.push_back(auxPointPosition); 76 } 77 } 78 } 79 80 positions.push_back(trajectoryPointPosition); 81 trajectoryLine.push_back(trajectoryPointPosition); 82 stepPoints.push_back(trajectoryPointPosition); 83 } 84 } 81 85 } 82 86 … … 157 161 // invalid. 158 162 163 // Memory for last trajectory point position for auxiliary point 164 // algorithm. There are no auxiliary points for the first 165 // trajectory point, so its initial value is immaterial. 159 166 G4ThreeVector lastTrajectoryPointPosition; 167 168 // Keep positions. Don't store unless first or different. 169 std::vector<G4ThreeVector> positions; 170 160 171 for (G4int i=0; i<traj.GetPointEntries(); i++) { 172 161 173 G4VTrajectoryPoint* aTrajectoryPoint = traj.GetPoint(i); 162 163 // Pre- and Post-Point times from the trajectory point... 164 G4double trajectoryPointPreTime = -std::numeric_limits<double>::max(); 165 G4double trajectoryPointPostTime = std::numeric_limits<double>::max(); 166 std::vector<G4AttValue>* trajectoryPointAttValues = 167 aTrajectoryPoint->CreateAttValues(); 168 if (!trajectoryPointAttValues) { 169 G4cout << "G4TrajectoryDrawerUtils::GetTimes: no att values." 170 << G4endl; 171 return; 172 } else { 173 G4bool foundPreTime = false, foundPostTime = false; 174 for (std::vector<G4AttValue>::iterator i = 175 trajectoryPointAttValues->begin(); 176 i != trajectoryPointAttValues->end(); ++i) { 177 if (i->GetName() == "PreT") { 178 trajectoryPointPreTime = 179 G4UIcommand::ConvertToDimensionedDouble(i->GetValue()); 180 foundPreTime = true; 181 } 182 if (i->GetName() == "PostT") { 183 trajectoryPointPostTime = 184 G4UIcommand::ConvertToDimensionedDouble(i->GetValue()); 185 foundPostTime = true; 186 } 187 } 188 if (!foundPreTime || !foundPostTime) { 189 static G4bool warnedTimesNotFound = false; 190 if (!warnedTimesNotFound) { 191 G4cout << 192 "WARNING: G4TrajectoryDrawerUtils::GetTimes: times not found." 193 << G4endl; 194 warnedTimesNotFound = true; 174 const G4ThreeVector& trajectoryPointPosition = 175 aTrajectoryPoint->GetPosition(); 176 177 // Only store if first or if different 178 if (positions.size() == 0 || 179 trajectoryPointPosition != positions[positions.size()-1]) { 180 181 // Pre- and Post-Point times from the trajectory point... 182 G4double trajectoryPointPreTime = -std::numeric_limits<double>::max(); 183 G4double trajectoryPointPostTime = std::numeric_limits<double>::max(); 184 std::vector<G4AttValue>* trajectoryPointAttValues = 185 aTrajectoryPoint->CreateAttValues(); 186 if (!trajectoryPointAttValues) { 187 G4cout << "G4TrajectoryDrawerUtils::GetTimes: no att values." 188 << G4endl; 189 return; 190 } else { 191 G4bool foundPreTime = false, foundPostTime = false; 192 for (std::vector<G4AttValue>::iterator i = 193 trajectoryPointAttValues->begin(); 194 i != trajectoryPointAttValues->end(); ++i) { 195 if (i->GetName() == "PreT") { 196 trajectoryPointPreTime = 197 G4UIcommand::ConvertToDimensionedDouble(i->GetValue()); 198 foundPreTime = true; 199 } 200 if (i->GetName() == "PostT") { 201 trajectoryPointPostTime = 202 G4UIcommand::ConvertToDimensionedDouble(i->GetValue()); 203 foundPostTime = true; 204 } 195 205 } 196 return; 206 if (!foundPreTime || !foundPostTime) { 207 static G4bool warnedTimesNotFound = false; 208 if (!warnedTimesNotFound) { 209 G4cout << 210 "WARNING: G4TrajectoryDrawerUtils::GetTimes: times not found." 211 << G4endl; 212 warnedTimesNotFound = true; 213 } 214 return; 215 } 197 216 } 198 } 199 200 const G4ThreeVector& trajectoryPointPosition = 201 aTrajectoryPoint->GetPosition(); 202 203 const std::vector<G4ThreeVector>* auxiliaries 204 = aTrajectoryPoint->GetAuxiliaryPoints(); 205 206 if (0 != auxiliaries) { 207 for (size_t iAux=0; iAux<auxiliaries->size(); ++iAux) { 208 // Interpolate time for auxiliary points... 209 const G4ThreeVector pos((*auxiliaries)[iAux]); 210 G4double s1 = (pos - lastTrajectoryPointPosition).mag(); 211 G4double s2 = (trajectoryPointPosition - pos).mag(); 212 G4double t = trajectoryPointPreTime + 213 (trajectoryPointPostTime - trajectoryPointPreTime) * 214 (s1 / (s1 + s2)); 215 trajectoryLineTimes.push_back(t); 216 auxiliaryPointTimes.push_back(t); 217 218 const std::vector<G4ThreeVector>* auxiliaries 219 = aTrajectoryPoint->GetAuxiliaryPoints(); 220 if (0 != auxiliaries) { 221 for (size_t iAux=0; iAux<auxiliaries->size(); ++iAux) { 222 // Interpolate time for auxiliary points... 223 const G4ThreeVector& auxPointPosition = (*auxiliaries)[iAux]; 224 G4double s1 = (auxPointPosition - lastTrajectoryPointPosition).mag(); 225 G4double s2 = (trajectoryPointPosition - auxPointPosition).mag(); 226 G4double t = trajectoryPointPreTime + 227 (trajectoryPointPostTime - trajectoryPointPreTime) * 228 (s1 / (s1 + s2)); 229 // Only store if first or if different 230 if (positions.size() == 0 || 231 auxPointPosition != positions[positions.size()-1]) { 232 positions.push_back(trajectoryPointPosition); 233 trajectoryLineTimes.push_back(t); 234 auxiliaryPointTimes.push_back(t); 235 } 236 } 217 237 } 218 } 219 220 trajectoryLineTimes.push_back(trajectoryPointPostTime); 221 stepPointTimes.push_back(trajectoryPointPostTime); 222 223 lastTrajectoryPointPosition = trajectoryPointPosition; 238 239 positions.push_back(trajectoryPointPosition); 240 trajectoryLineTimes.push_back(trajectoryPointPostTime); 241 stepPointTimes.push_back(trajectoryPointPostTime); 242 243 lastTrajectoryPointPosition = trajectoryPointPosition; 244 } 224 245 } 225 246 } … … 270 291 { 271 292 // Draw without time slice information 293 #ifdef G4DEBUG_VIS_MODELING 294 printf("G4TrajetoryDrawerUtils::DrawWithoutTime vvvvv\n"); 295 #endif 272 296 273 297 G4VVisManager* pVVisManager = G4VVisManager::GetConcreteInstance(); … … 305 329 pVVisManager->Draw(stepPoints); 306 330 } 331 #ifdef G4DEBUG_VIS_MODELING 332 printf("G4TrajetoryDrawerUtils::DrawWithoutTime ^^^^^\n"); 333 #endif 307 334 } 308 335 -
trunk/source/visualization/modeling/src/G4TrajectoryFilterFactories.cc
r1337 r1346 25 25 // 26 26 /// $Id: G4TrajectoryFilterFactories.cc,v 1.5 2006/09/12 18:53:03 tinslay Exp $ 27 // GEANT4 tag $Name: geant4-09-04-beta-01$27 // GEANT4 tag $Name: $ 28 28 // 29 29 // -
trunk/source/visualization/modeling/src/G4TrajectoryGenericDrawer.cc
r1337 r1346 25 25 // 26 26 // $Id: G4TrajectoryGenericDrawer.cc,v 1.3 2010/05/11 11:31:31 allison Exp $ 27 // GEANT4 tag $Name: geant4-09-04-beta-01$27 // GEANT4 tag $Name: $ 28 28 // 29 29 // Jane Tinslay May 2006 -
trunk/source/visualization/modeling/src/G4TrajectoryModelFactories.cc
r1337 r1346 25 25 // 26 26 // $Id: G4TrajectoryModelFactories.cc,v 1.7 2006/09/12 18:53:03 tinslay Exp $ 27 // GEANT4 tag $Name: geant4-09-04-beta-01$27 // GEANT4 tag $Name: $ 28 28 // 29 29 // Jane Tinslay, John Allison, Joseph Perl October 2005 -
trunk/source/visualization/modeling/src/G4TrajectoryOriginVolumeFilter.cc
r1337 r1346 25 25 // 26 26 // $Id: G4TrajectoryOriginVolumeFilter.cc,v 1.3 2006/08/25 19:44:14 tinslay Exp $ 27 // GEANT4 tag $Name: geant4-09-04-beta-01$27 // GEANT4 tag $Name: $ 28 28 // 29 29 // Filter trajectories according to volume name. Only registered -
trunk/source/visualization/modeling/src/G4TrajectoryParticleFilter.cc
r1337 r1346 25 25 // 26 26 // $Id: G4TrajectoryParticleFilter.cc,v 1.3 2006/08/25 19:44:14 tinslay Exp $ 27 // GEANT4 tag $Name: geant4-09-04-beta-01$27 // GEANT4 tag $Name: $ 28 28 // 29 29 // Filter trajectories according to particle type. Only registered -
trunk/source/visualization/modeling/src/G4VModel.cc
r1337 r1346 26 26 // 27 27 // $Id: G4VModel.cc,v 1.14 2006/11/01 10:33:00 allison Exp $ 28 // GEANT4 tag $Name: geant4-09-04-beta-01$28 // GEANT4 tag $Name: $ 29 29 // 30 30 // -
trunk/source/visualization/modeling/src/G4VTrajectoryModel.cc
r1337 r1346 25 25 // 26 26 // $Id: G4VTrajectoryModel.cc,v 1.3 2006/06/29 21:33:26 gunter Exp $ 27 // GEANT4 tag $Name: geant4-09-04-beta-01$27 // GEANT4 tag $Name: $ 28 28 // 29 29 // Jane Tinslay May 2006
Note: See TracChangeset
for help on using the changeset viewer.