Import Geant4 4.0.0 source tree
This commit is contained in:
@@ -1,4 +1,4 @@
|
||||
$Id: History,v 1.32 2001/05/25 13:38:51 johna Exp $
|
||||
$Id: History,v 1.37 2001/09/10 10:27:18 johna Exp $
|
||||
-------------------------------------------------------------------
|
||||
|
||||
=========================================================
|
||||
@@ -17,6 +17,24 @@ committal in the CVS repository !
|
||||
* Reverse chronological order (last date on top), please *
|
||||
----------------------------------------------------------
|
||||
|
||||
10th September 2001 John Allison (greps-V03-02-04)
|
||||
- Added G4Scale::GuidanceString.
|
||||
|
||||
20th August 2001 John Allison (greps-V03-02-03)
|
||||
- Made typedef's public in G4Point3DList.hh and G4Polyline.hh.
|
||||
|
||||
14th August 2001 John Allison (greps-V03-02-02)
|
||||
- Coworks with vis-V03-02-11 and intercoms-V03-02-03.
|
||||
- Added G4Polyline::transform.
|
||||
- Fixed pedantic warnings in G4NURBS.
|
||||
|
||||
24th July May 2001 John Allison (greps-V03-02-01)
|
||||
- Improvements to comments and layout in G4VisExtent.
|
||||
- Cosmetic improvements to G4Scale, small change of interface.
|
||||
|
||||
21st July May 2001 John Allison (greps-V03-02-00)
|
||||
- Added G4Scale.
|
||||
|
||||
25th May 2001 John Allison (greps-V03-01-02)
|
||||
- Added GetSurfaceArea() and GetVolume() to HepPolyhedron (Evgeni).
|
||||
- Bug fix in BooleanProcessor.src (Guy, Evgeni).
|
||||
|
||||
@@ -21,8 +21,8 @@
|
||||
// ********************************************************************
|
||||
//
|
||||
//
|
||||
// $Id: G4Circle.hh,v 1.5.2.1 2001/06/28 19:10:08 gunter Exp $
|
||||
// GEANT4 tag $Name: $
|
||||
// $Id: G4Circle.hh,v 1.6 2001/07/11 10:01:01 gunter Exp $
|
||||
// GEANT4 tag $Name: geant4-04-00 $
|
||||
//
|
||||
//
|
||||
// John Allison 17/11/96.
|
||||
|
||||
@@ -21,8 +21,8 @@
|
||||
// ********************************************************************
|
||||
//
|
||||
//
|
||||
// $Id: G4Color.hh,v 1.3.4.1 2001/06/28 19:10:08 gunter Exp $
|
||||
// GEANT4 tag $Name: $
|
||||
// $Id: G4Color.hh,v 1.4 2001/07/11 10:01:01 gunter Exp $
|
||||
// GEANT4 tag $Name: geant4-04-00 $
|
||||
//
|
||||
//
|
||||
// John Allison 20th October 1996
|
||||
|
||||
@@ -21,8 +21,8 @@
|
||||
// ********************************************************************
|
||||
//
|
||||
//
|
||||
// $Id: G4Colour.hh,v 1.5.4.1 2001/06/28 19:10:08 gunter Exp $
|
||||
// GEANT4 tag $Name: $
|
||||
// $Id: G4Colour.hh,v 1.6 2001/07/11 10:01:01 gunter Exp $
|
||||
// GEANT4 tag $Name: geant4-04-00 $
|
||||
//
|
||||
//
|
||||
// John Allison 20th October 1996
|
||||
|
||||
@@ -21,8 +21,8 @@
|
||||
// ********************************************************************
|
||||
//
|
||||
//
|
||||
// $Id: G4NURBS.hh,v 1.5.4.1 2001/06/28 19:10:08 gunter Exp $
|
||||
// GEANT4 tag $Name: $
|
||||
// $Id: G4NURBS.hh,v 1.6 2001/07/11 10:01:01 gunter Exp $
|
||||
// GEANT4 tag $Name: geant4-04-00 $
|
||||
//
|
||||
// Olivier Crumeyrolle 12 September 1996
|
||||
|
||||
|
||||
@@ -21,8 +21,8 @@
|
||||
// ********************************************************************
|
||||
//
|
||||
//
|
||||
// $Id: G4NURBSbox.hh,v 1.5.4.1 2001/06/28 19:10:08 gunter Exp $
|
||||
// GEANT4 tag $Name: $
|
||||
// $Id: G4NURBSbox.hh,v 1.6 2001/07/11 10:01:01 gunter Exp $
|
||||
// GEANT4 tag $Name: geant4-04-00 $
|
||||
//
|
||||
//
|
||||
// Olivier Crumeyrolle 12 September 1996
|
||||
|
||||
@@ -21,8 +21,8 @@
|
||||
// ********************************************************************
|
||||
//
|
||||
//
|
||||
// $Id: G4NURBScylinder.hh,v 1.5.4.1 2001/06/28 19:10:08 gunter Exp $
|
||||
// GEANT4 tag $Name: $
|
||||
// $Id: G4NURBScylinder.hh,v 1.6 2001/07/11 10:01:02 gunter Exp $
|
||||
// GEANT4 tag $Name: geant4-04-00 $
|
||||
//
|
||||
//
|
||||
// Olivier Crumeyrolle 12 September 1996
|
||||
|
||||
@@ -21,8 +21,8 @@
|
||||
// ********************************************************************
|
||||
//
|
||||
//
|
||||
// $Id: G4NURBShexahedron.hh,v 1.5.4.1 2001/06/28 19:10:08 gunter Exp $
|
||||
// GEANT4 tag $Name: $
|
||||
// $Id: G4NURBShexahedron.hh,v 1.6 2001/07/11 10:01:02 gunter Exp $
|
||||
// GEANT4 tag $Name: geant4-04-00 $
|
||||
//
|
||||
// Hexa hedron builder prototype
|
||||
// OC 17 9 96
|
||||
|
||||
@@ -21,8 +21,8 @@
|
||||
// ********************************************************************
|
||||
//
|
||||
//
|
||||
// $Id: G4NURBStube.hh,v 1.5.4.1 2001/06/28 19:10:08 gunter Exp $
|
||||
// GEANT4 tag $Name: $
|
||||
// $Id: G4NURBStube.hh,v 1.6 2001/07/11 10:01:02 gunter Exp $
|
||||
// GEANT4 tag $Name: geant4-04-00 $
|
||||
//
|
||||
//
|
||||
// Olivier Crumeyrolle 12 September 1996
|
||||
|
||||
@@ -21,8 +21,8 @@
|
||||
// ********************************************************************
|
||||
//
|
||||
//
|
||||
// $Id: G4NURBStubesector.hh,v 1.4.4.1 2001/06/28 19:10:08 gunter Exp $
|
||||
// GEANT4 tag $Name: $
|
||||
// $Id: G4NURBStubesector.hh,v 1.5 2001/07/11 10:01:02 gunter Exp $
|
||||
// GEANT4 tag $Name: geant4-04-00 $
|
||||
//
|
||||
//
|
||||
// Olivier Crumeyrolle 12 September 1996
|
||||
|
||||
@@ -21,8 +21,8 @@
|
||||
// ********************************************************************
|
||||
//
|
||||
//
|
||||
// $Id: G4PlacedPolyhedron.hh,v 1.8.2.1 2001/06/28 19:10:08 gunter Exp $
|
||||
// GEANT4 tag $Name: $
|
||||
// $Id: G4PlacedPolyhedron.hh,v 1.9 2001/07/11 10:01:02 gunter Exp $
|
||||
// GEANT4 tag $Name: geant4-04-00 $
|
||||
|
||||
|
||||
// Class Description:
|
||||
|
||||
@@ -21,8 +21,8 @@
|
||||
// ********************************************************************
|
||||
//
|
||||
//
|
||||
// $Id: G4Point3DList.hh,v 1.7.2.1 2001/06/28 19:10:09 gunter Exp $
|
||||
// GEANT4 tag $Name: $
|
||||
// $Id: G4Point3DList.hh,v 1.10 2001/08/20 23:28:42 johna Exp $
|
||||
// GEANT4 tag $Name: geant4-04-00 $
|
||||
//
|
||||
//
|
||||
// John Allison July 1995
|
||||
@@ -39,11 +39,13 @@
|
||||
#include "g4std/iostream"
|
||||
|
||||
class G4Point3DList: public G4std::vector<G4Point3D> {
|
||||
|
||||
friend G4std::ostream& operator << (G4std::ostream& os, const G4Point3DList& points);
|
||||
|
||||
|
||||
friend G4std::ostream& operator << (G4std::ostream& os, const G4Point3DList& points);
|
||||
|
||||
public:
|
||||
|
||||
typedef G4std::vector<G4Point3D>::iterator iterator;
|
||||
|
||||
virtual ~G4Point3DList();
|
||||
|
||||
};
|
||||
|
||||
@@ -21,8 +21,8 @@
|
||||
// ********************************************************************
|
||||
//
|
||||
//
|
||||
// $Id: G4Polyhedron.hh,v 1.9.2.1 2001/06/28 19:10:09 gunter Exp $
|
||||
// GEANT4 tag $Name: $
|
||||
// $Id: G4Polyhedron.hh,v 1.10 2001/07/11 10:01:02 gunter Exp $
|
||||
// GEANT4 tag $Name: geant4-04-00 $
|
||||
|
||||
#ifndef G4POLYHEDRON_HH
|
||||
#define G4POLYHEDRON_HH
|
||||
|
||||
@@ -21,8 +21,8 @@
|
||||
// ********************************************************************
|
||||
//
|
||||
//
|
||||
// $Id: G4Polyline.hh,v 1.6.2.1 2001/06/28 19:10:09 gunter Exp $
|
||||
// GEANT4 tag $Name: $
|
||||
// $Id: G4Polyline.hh,v 1.9 2001/08/20 23:28:43 johna Exp $
|
||||
// GEANT4 tag $Name: geant4-04-00 $
|
||||
//
|
||||
//
|
||||
// John Allison July 1995
|
||||
@@ -40,17 +40,23 @@
|
||||
#include "G4VVisPrim.hh"
|
||||
#include "G4Point3DList.hh"
|
||||
|
||||
#include "G4Transform3D.hh"
|
||||
|
||||
class G4Polyline: public G4VVisPrim, public G4Point3DList {
|
||||
|
||||
friend G4std::ostream& operator << (G4std::ostream& os, const G4Polyline& line);
|
||||
|
||||
public: // With description
|
||||
|
||||
typedef G4Point3DList::iterator iterator;
|
||||
|
||||
G4Polyline ();
|
||||
G4Polyline (const G4VVisPrim& prim);
|
||||
virtual ~G4Polyline ();
|
||||
virtual G4Visible& operator = (const G4Visible& right);
|
||||
virtual G4VVisPrim& operator = (const G4VVisPrim& right);
|
||||
virtual G4Polyline& operator = (const G4Polyline& right);
|
||||
G4Polyline& transform (const G4Transform3D&);
|
||||
};
|
||||
|
||||
#endif
|
||||
|
||||
@@ -21,8 +21,8 @@
|
||||
// ********************************************************************
|
||||
//
|
||||
//
|
||||
// $Id: G4Polymarker.hh,v 1.6.2.1 2001/06/28 19:10:09 gunter Exp $
|
||||
// GEANT4 tag $Name: $
|
||||
// $Id: G4Polymarker.hh,v 1.7 2001/07/11 10:01:03 gunter Exp $
|
||||
// GEANT4 tag $Name: geant4-04-00 $
|
||||
//
|
||||
//
|
||||
// John Allison November 1996
|
||||
|
||||
@@ -21,8 +21,8 @@
|
||||
// ********************************************************************
|
||||
//
|
||||
//
|
||||
// $Id: G4Polymarker.icc,v 1.2.4.1 2001/06/28 19:10:09 gunter Exp $
|
||||
// GEANT4 tag $Name: $
|
||||
// $Id: G4Polymarker.icc,v 1.3 2001/07/11 10:01:03 gunter Exp $
|
||||
// GEANT4 tag $Name: geant4-04-00 $
|
||||
//
|
||||
//
|
||||
// John Allison November 1996
|
||||
|
||||
@@ -0,0 +1,90 @@
|
||||
//
|
||||
// ********************************************************************
|
||||
// * DISCLAIMER *
|
||||
// * *
|
||||
// * The following disclaimer summarizes all the specific disclaimers *
|
||||
// * of contributors to this software. The specific disclaimers,which *
|
||||
// * govern, are listed with their locations in: *
|
||||
// * http://cern.ch/geant4/license *
|
||||
// * *
|
||||
// * Neither the authors of this software system, nor their employing *
|
||||
// * institutes,nor the agencies providing financial support for this *
|
||||
// * work make any representation or warranty, express or implied, *
|
||||
// * regarding this software system or assume any liability for its *
|
||||
// * use. *
|
||||
// * *
|
||||
// * This code implementation is the intellectual property of the *
|
||||
// * GEANT4 collaboration. *
|
||||
// * By copying, distributing or modifying the Program (or any work *
|
||||
// * based on the Program) you indicate your acceptance of this *
|
||||
// * statement, and all its terms. *
|
||||
// ********************************************************************
|
||||
//
|
||||
//
|
||||
// $Id: G4Scale.hh,v 1.3 2001/09/10 10:28:24 johna Exp $
|
||||
// GEANT4 tag $Name: geant4-04-00 $
|
||||
//
|
||||
//
|
||||
// John Allison 21st July 2001.
|
||||
|
||||
#ifndef G4SCALE_HH
|
||||
#define G4SCALE_HH
|
||||
|
||||
#include "G4VMarker.hh"
|
||||
#include "globals.hh"
|
||||
|
||||
class G4Scale: public G4VMarker {
|
||||
|
||||
public: // With description
|
||||
|
||||
enum Direction {x, y, z};
|
||||
|
||||
G4Scale (G4double length, const G4String& annotation = "",
|
||||
Direction direction = x,
|
||||
G4bool autoPlacing = true,
|
||||
G4double xmid = 0., G4double ymid = 0., G4double zmid = 0.);
|
||||
// This creates a representation of annotated line in the specified
|
||||
// direction with tick marks at the end. If autoPlacing is true it
|
||||
// is required to be centred at the front, right, bottom corner of
|
||||
// the world space, comfortably outside the existing bounding
|
||||
// box/sphere so that existing objects do not obscure it. Otherwise
|
||||
// it is required to be drawn with mid-point at (xmid, ymid, zmid).
|
||||
//
|
||||
// The auto placing algorithm might be:
|
||||
// x = xmin + (1 + comfort) * (xmax - xmin)
|
||||
// y = ymin - comfort * (ymax - ymin)
|
||||
// z = zmin + (1 + comfort) * (zmax - zmin)
|
||||
// if direction == x then (x - length,y,z) to (x,y,z)
|
||||
// if direction == y then (x,y,z) to (x,y + length,z)
|
||||
// if direction == z then (x,y,z - length) to (x,y,z)
|
||||
|
||||
// Uses compiler-generated copy constructor.
|
||||
|
||||
virtual ~G4Scale ();
|
||||
|
||||
virtual G4Visible& operator = (const G4Visible& from);
|
||||
virtual G4VVisPrim& operator = (const G4VVisPrim& from);
|
||||
virtual G4VMarker& operator = (const G4VMarker& from);
|
||||
virtual G4Scale& operator = (const G4Scale& from);
|
||||
|
||||
G4double GetLength() const;
|
||||
const G4String& GetAnnotation() const;
|
||||
Direction GetDirection() const;
|
||||
G4bool GetAutoPlacing() const;
|
||||
G4double GetXmid() const;
|
||||
G4double GetYmid() const;
|
||||
G4double GetZmid() const;
|
||||
|
||||
static G4String GuidanceString;
|
||||
|
||||
private:
|
||||
G4double fLength;
|
||||
G4String fAnnotation;
|
||||
Direction fDirection;
|
||||
G4bool fAutoPlacing;
|
||||
G4double fXmid, fYmid, fZmid;
|
||||
};
|
||||
|
||||
#include "G4Scale.icc"
|
||||
|
||||
#endif
|
||||
@@ -0,0 +1,55 @@
|
||||
//
|
||||
// ********************************************************************
|
||||
// * DISCLAIMER *
|
||||
// * *
|
||||
// * The following disclaimer summarizes all the specific disclaimers *
|
||||
// * of contributors to this software. The specific disclaimers,which *
|
||||
// * govern, are listed with their locations in: *
|
||||
// * http://cern.ch/geant4/license *
|
||||
// * *
|
||||
// * Neither the authors of this software system, nor their employing *
|
||||
// * institutes,nor the agencies providing financial support for this *
|
||||
// * work make any representation or warranty, express or implied, *
|
||||
// * regarding this software system or assume any liability for its *
|
||||
// * use. *
|
||||
// * *
|
||||
// * This code implementation is the intellectual property of the *
|
||||
// * GEANT4 collaboration. *
|
||||
// * By copying, distributing or modifying the Program (or any work *
|
||||
// * based on the Program) you indicate your acceptance of this *
|
||||
// * statement, and all its terms. *
|
||||
// ********************************************************************
|
||||
//
|
||||
//
|
||||
// $Id: G4Scale.icc,v 1.2 2001/07/24 21:41:42 johna Exp $
|
||||
// GEANT4 tag $Name: geant4-04-00 $
|
||||
//
|
||||
//
|
||||
// John Allison 21st July 2001.
|
||||
|
||||
inline G4double G4Scale::GetLength() const {
|
||||
return fLength;
|
||||
}
|
||||
|
||||
inline const G4String& G4Scale::GetAnnotation() const {
|
||||
return fAnnotation;
|
||||
}
|
||||
inline G4Scale::Direction G4Scale::GetDirection() const {
|
||||
return fDirection;
|
||||
}
|
||||
|
||||
inline G4bool G4Scale::GetAutoPlacing() const {
|
||||
return fAutoPlacing;
|
||||
}
|
||||
|
||||
inline G4double G4Scale::GetXmid() const {
|
||||
return fXmid;
|
||||
}
|
||||
|
||||
inline G4double G4Scale::GetYmid() const {
|
||||
return fYmid;
|
||||
}
|
||||
|
||||
inline G4double G4Scale::GetZmid() const {
|
||||
return fZmid;
|
||||
}
|
||||
@@ -21,8 +21,8 @@
|
||||
// ********************************************************************
|
||||
//
|
||||
//
|
||||
// $Id: G4Square.hh,v 1.4.4.1 2001/06/28 19:10:09 gunter Exp $
|
||||
// GEANT4 tag $Name: $
|
||||
// $Id: G4Square.hh,v 1.5 2001/07/11 10:01:03 gunter Exp $
|
||||
// GEANT4 tag $Name: geant4-04-00 $
|
||||
//
|
||||
//
|
||||
// John Allison 17/11/96.
|
||||
|
||||
@@ -21,8 +21,8 @@
|
||||
// ********************************************************************
|
||||
//
|
||||
//
|
||||
// $Id: G4Square.icc,v 1.2.4.1 2001/06/28 19:10:09 gunter Exp $
|
||||
// GEANT4 tag $Name: $
|
||||
// $Id: G4Square.icc,v 1.3 2001/07/11 10:01:03 gunter Exp $
|
||||
// GEANT4 tag $Name: geant4-04-00 $
|
||||
//
|
||||
//
|
||||
// John Allison 17/11/96.
|
||||
|
||||
@@ -21,8 +21,8 @@
|
||||
// ********************************************************************
|
||||
//
|
||||
//
|
||||
// $Id: G4Text.hh,v 1.6.2.1 2001/06/28 19:10:09 gunter Exp $
|
||||
// GEANT4 tag $Name: $
|
||||
// $Id: G4Text.hh,v 1.7 2001/07/11 10:01:03 gunter Exp $
|
||||
// GEANT4 tag $Name: geant4-04-00 $
|
||||
//
|
||||
//
|
||||
// John Allison 17/11/96.
|
||||
|
||||
@@ -21,8 +21,8 @@
|
||||
// ********************************************************************
|
||||
//
|
||||
//
|
||||
// $Id: G4Text.icc,v 1.2.4.1 2001/06/28 19:10:09 gunter Exp $
|
||||
// GEANT4 tag $Name: $
|
||||
// $Id: G4Text.icc,v 1.3 2001/07/11 10:01:03 gunter Exp $
|
||||
// GEANT4 tag $Name: geant4-04-00 $
|
||||
//
|
||||
//
|
||||
// John Allison 17/11/96.
|
||||
|
||||
@@ -21,8 +21,8 @@
|
||||
// ********************************************************************
|
||||
//
|
||||
//
|
||||
// $Id: G4VMarker.hh,v 1.6.4.1 2001/06/28 19:10:09 gunter Exp $
|
||||
// GEANT4 tag $Name: $
|
||||
// $Id: G4VMarker.hh,v 1.7 2001/07/11 10:01:03 gunter Exp $
|
||||
// GEANT4 tag $Name: geant4-04-00 $
|
||||
//
|
||||
//
|
||||
// G4VMarker - base class for markers - circles, squares, etc.
|
||||
|
||||
@@ -21,8 +21,8 @@
|
||||
// ********************************************************************
|
||||
//
|
||||
//
|
||||
// $Id: G4VMarker.icc,v 1.5.2.1 2001/06/28 19:10:09 gunter Exp $
|
||||
// GEANT4 tag $Name: $
|
||||
// $Id: G4VMarker.icc,v 1.6 2001/07/11 10:01:04 gunter Exp $
|
||||
// GEANT4 tag $Name: geant4-04-00 $
|
||||
//
|
||||
//
|
||||
|
||||
|
||||
@@ -21,8 +21,8 @@
|
||||
// ********************************************************************
|
||||
//
|
||||
//
|
||||
// $Id: G4VVisPrim.hh,v 1.7.2.1 2001/06/28 19:10:09 gunter Exp $
|
||||
// GEANT4 tag $Name: $
|
||||
// $Id: G4VVisPrim.hh,v 1.8 2001/07/11 10:01:04 gunter Exp $
|
||||
// GEANT4 tag $Name: geant4-04-00 $
|
||||
//
|
||||
//
|
||||
// John Allison August 1995
|
||||
|
||||
@@ -21,8 +21,8 @@
|
||||
// ********************************************************************
|
||||
//
|
||||
//
|
||||
// $Id: G4VisAttributes.hh,v 1.6.4.1 2001/06/28 19:10:09 gunter Exp $
|
||||
// GEANT4 tag $Name: $
|
||||
// $Id: G4VisAttributes.hh,v 1.7 2001/07/11 10:01:04 gunter Exp $
|
||||
// GEANT4 tag $Name: geant4-04-00 $
|
||||
//
|
||||
//
|
||||
// John Allison 23rd October 1996
|
||||
|
||||
@@ -21,8 +21,8 @@
|
||||
// ********************************************************************
|
||||
//
|
||||
//
|
||||
// $Id: G4VisAttributes.icc,v 1.3.4.1 2001/06/28 19:10:10 gunter Exp $
|
||||
// GEANT4 tag $Name: $
|
||||
// $Id: G4VisAttributes.icc,v 1.4 2001/07/11 10:01:05 gunter Exp $
|
||||
// GEANT4 tag $Name: geant4-04-00 $
|
||||
//
|
||||
//
|
||||
// John Allison 18th November 1996
|
||||
|
||||
@@ -21,16 +21,26 @@
|
||||
// ********************************************************************
|
||||
//
|
||||
//
|
||||
// $Id: G4VisExtent.hh,v 1.4.4.1 2001/06/28 19:10:10 gunter Exp $
|
||||
// GEANT4 tag $Name: $
|
||||
// $Id: G4VisExtent.hh,v 1.6 2001/07/24 21:39:43 johna Exp $
|
||||
// GEANT4 tag $Name: geant4-04-00 $
|
||||
//
|
||||
//
|
||||
// A.Walkden 28/11/95
|
||||
|
||||
// Class Description:
|
||||
// G4VisExtent is a class to prototype extent functions for use in
|
||||
// instantiating Visualisation windows with an appropriate field of
|
||||
// view for the object(s) being drawn.
|
||||
// G4VisExtent defines a bounding box in a visualisable object's local
|
||||
// coordinate system which includes the object.
|
||||
// WARNING: it also attempts to support the concept of a bounding
|
||||
// sphere. (This is used extensively in the G4 Visualisation System
|
||||
// to calculate camera parameters, etc.) Be aware that this involves
|
||||
// loss of information. Given a bounding box, one can calculate the
|
||||
// bounding sphere; inverting this will produce a cube which *might*
|
||||
// *not* include the object. E.g., a long thin object of length l
|
||||
// will have a bounding sphere of diameter l; the corresponding cube
|
||||
// will have side l/sqrt(3) so that the bounding sphere diameter is
|
||||
// still l. Thus the long thin object will stick out of the cube.
|
||||
// So, if you once use the concept of bounding sphere you must stick
|
||||
// with it and abandon the concept of bounding box.
|
||||
// Class Description - End:
|
||||
|
||||
#ifndef G4VISEXTENT_HH
|
||||
|
||||
@@ -21,8 +21,8 @@
|
||||
// ********************************************************************
|
||||
//
|
||||
//
|
||||
// $Id: G4Visible.hh,v 1.6.4.1 2001/06/28 19:10:10 gunter Exp $
|
||||
// GEANT4 tag $Name: $
|
||||
// $Id: G4Visible.hh,v 1.7 2001/07/11 10:01:06 gunter Exp $
|
||||
// GEANT4 tag $Name: geant4-04-00 $
|
||||
//
|
||||
//
|
||||
// John Allison 30th October 1996
|
||||
|
||||
@@ -21,8 +21,8 @@
|
||||
// ********************************************************************
|
||||
//
|
||||
//
|
||||
// $Id: G4Visible.icc,v 1.3.4.1 2001/06/28 19:10:10 gunter Exp $
|
||||
// GEANT4 tag $Name: $
|
||||
// $Id: G4Visible.icc,v 1.4 2001/07/11 10:01:06 gunter Exp $
|
||||
// GEANT4 tag $Name: geant4-04-00 $
|
||||
//
|
||||
//
|
||||
// John Allison 30th October 1996
|
||||
|
||||
@@ -21,8 +21,8 @@
|
||||
// ********************************************************************
|
||||
//
|
||||
//
|
||||
// $Id: HepPolyhedron.h,v 1.8.2.1 2001/06/28 19:10:10 gunter Exp $
|
||||
// GEANT4 tag $Name: $
|
||||
// $Id: HepPolyhedron.h,v 1.9 2001/07/11 10:01:06 gunter Exp $
|
||||
// GEANT4 tag $Name: geant4-04-00 $
|
||||
//
|
||||
//
|
||||
// Class Description:
|
||||
|
||||
@@ -21,8 +21,8 @@
|
||||
// ********************************************************************
|
||||
//
|
||||
//
|
||||
// $Id: G4Circle.cc,v 1.3.2.1 2001/06/28 19:10:10 gunter Exp $
|
||||
// GEANT4 tag $Name: $
|
||||
// $Id: G4Circle.cc,v 1.4 2001/07/11 10:01:07 gunter Exp $
|
||||
// GEANT4 tag $Name: geant4-04-00 $
|
||||
//
|
||||
//
|
||||
|
||||
|
||||
@@ -21,8 +21,8 @@
|
||||
// ********************************************************************
|
||||
//
|
||||
//
|
||||
// $Id: G4Colour.cc,v 1.3.4.1 2001/06/28 19:10:10 gunter Exp $
|
||||
// GEANT4 tag $Name: $
|
||||
// $Id: G4Colour.cc,v 1.4 2001/07/11 10:01:07 gunter Exp $
|
||||
// GEANT4 tag $Name: geant4-04-00 $
|
||||
//
|
||||
//
|
||||
// John Allison 20th October 1996
|
||||
|
||||
@@ -21,8 +21,8 @@
|
||||
// ********************************************************************
|
||||
//
|
||||
//
|
||||
// $Id: G4NURBS.cc,v 1.3.4.1 2001/06/28 19:10:10 gunter Exp $
|
||||
// GEANT4 tag $Name: $
|
||||
// $Id: G4NURBS.cc,v 1.5 2001/08/14 18:24:29 johna Exp $
|
||||
// GEANT4 tag $Name: geant4-04-00 $
|
||||
//
|
||||
//
|
||||
// Olivier Crumeyrolle 12 September 1996
|
||||
@@ -121,8 +121,9 @@ G4float G4NURBS::GetfloatKnot(t_direction in_dir, t_indKnot in_index) const
|
||||
else
|
||||
{
|
||||
G4cerr << "\nERROR: G4NURBS::GetfloatKnot: index out of range\n"
|
||||
<< "\n\t in_dir : " << in_dir << ", in_index : " << in_index
|
||||
<< "m[in_dir].nbrKnots : " << m[in_dir].nbrKnots << G4endl;
|
||||
<< "\n\t in_dir : " << G4int(in_dir)
|
||||
<< ", in_index : " << G4int(in_index)
|
||||
<< "m[in_dir].nbrKnots : " << m[in_dir].nbrKnots << G4endl;
|
||||
return ((G4float)m[in_dir].pKnots[m[in_dir].nbrKnots-1]);
|
||||
};
|
||||
}
|
||||
@@ -135,8 +136,10 @@ G4double G4NURBS::GetdoubleKnot(t_direction in_dir, t_indKnot in_index) const
|
||||
else
|
||||
{
|
||||
G4cerr << "\nERROR: G4NURBS::GetdoubleKnot: index out of range"
|
||||
<< "\n\t in_dir : " << in_dir << ", in_index : " << in_index
|
||||
<< "m[in_dir].nbrKnots : " << m[in_dir].nbrKnots << G4endl;
|
||||
<< "\n\t in_dir : " << G4int(in_dir)
|
||||
<< ", in_index : " << G4int(in_index)
|
||||
<< "m[in_dir].nbrKnots : " << m[in_dir].nbrKnots
|
||||
<< G4endl;
|
||||
return (G4double)(m[in_dir].pKnots[m[in_dir].nbrKnots-1]);
|
||||
};
|
||||
}
|
||||
@@ -366,7 +369,8 @@ G4bool G4NURBS::MakeKnotVector(t_Dir & io_d, t_KnotVectorGenFlag in_KVGFlag)
|
||||
// central knots
|
||||
for (t_indKnot j=0; j < nbrCentralDistinctKnots; valKnot += stepKnot, j++)
|
||||
{
|
||||
for (t_indKnot k=0; k < in_KVGFlag; indKnot++, k++)
|
||||
for (t_indKnot k=0; k < t_indKnot(in_KVGFlag);
|
||||
indKnot++, k++)
|
||||
io_d.pKnots[indKnot] = valKnot;
|
||||
};
|
||||
}
|
||||
|
||||
@@ -21,8 +21,8 @@
|
||||
// ********************************************************************
|
||||
//
|
||||
//
|
||||
// $Id: G4NURBSbox.cc,v 1.3.4.1 2001/06/28 19:10:11 gunter Exp $
|
||||
// GEANT4 tag $Name: $
|
||||
// $Id: G4NURBSbox.cc,v 1.4 2001/07/11 10:01:07 gunter Exp $
|
||||
// GEANT4 tag $Name: geant4-04-00 $
|
||||
//
|
||||
//
|
||||
// Olivier Crumeyrolle 12 September 1996
|
||||
|
||||
@@ -21,8 +21,8 @@
|
||||
// ********************************************************************
|
||||
//
|
||||
//
|
||||
// $Id: G4NURBScylinder.cc,v 1.3.4.1 2001/06/28 19:10:11 gunter Exp $
|
||||
// GEANT4 tag $Name: $
|
||||
// $Id: G4NURBScylinder.cc,v 1.4 2001/07/11 10:01:07 gunter Exp $
|
||||
// GEANT4 tag $Name: geant4-04-00 $
|
||||
//
|
||||
//
|
||||
// Olivier Crumeyrolle 12 September 1996
|
||||
|
||||
@@ -21,8 +21,8 @@
|
||||
// ********************************************************************
|
||||
//
|
||||
//
|
||||
// $Id: G4NURBShexahedron.cc,v 1.3.4.1 2001/06/28 19:10:11 gunter Exp $
|
||||
// GEANT4 tag $Name: $
|
||||
// $Id: G4NURBShexahedron.cc,v 1.4 2001/07/11 10:01:07 gunter Exp $
|
||||
// GEANT4 tag $Name: geant4-04-00 $
|
||||
//
|
||||
// hexahedron implementation
|
||||
// OC 17 9 96
|
||||
|
||||
@@ -21,8 +21,8 @@
|
||||
// ********************************************************************
|
||||
//
|
||||
//
|
||||
// $Id: G4NURBStube.cc,v 1.3.4.1 2001/06/28 19:10:11 gunter Exp $
|
||||
// GEANT4 tag $Name: $
|
||||
// $Id: G4NURBStube.cc,v 1.4 2001/07/11 10:01:07 gunter Exp $
|
||||
// GEANT4 tag $Name: geant4-04-00 $
|
||||
//
|
||||
//
|
||||
// Olivier Crumeyrolle 12 September 1996
|
||||
|
||||
@@ -21,8 +21,8 @@
|
||||
// ********************************************************************
|
||||
//
|
||||
//
|
||||
// $Id: G4NURBStubesector.cc,v 1.4.4.1 2001/06/28 19:10:11 gunter Exp $
|
||||
// GEANT4 tag $Name: $
|
||||
// $Id: G4NURBStubesector.cc,v 1.5 2001/07/11 10:01:08 gunter Exp $
|
||||
// GEANT4 tag $Name: geant4-04-00 $
|
||||
//
|
||||
//
|
||||
// Olivier Crumeyrolle 12 September 1996
|
||||
|
||||
@@ -21,8 +21,8 @@
|
||||
// ********************************************************************
|
||||
//
|
||||
//
|
||||
// $Id: G4PlacedPolyhedron.cc,v 1.2.4.1 2001/06/28 19:10:11 gunter Exp $
|
||||
// GEANT4 tag $Name: $
|
||||
// $Id: G4PlacedPolyhedron.cc,v 1.3 2001/07/11 10:01:08 gunter Exp $
|
||||
// GEANT4 tag $Name: geant4-04-00 $
|
||||
|
||||
#include "G4PlacedPolyhedron.hh"
|
||||
|
||||
|
||||
@@ -21,8 +21,8 @@
|
||||
// ********************************************************************
|
||||
//
|
||||
//
|
||||
// $Id: G4Point3DList.cc,v 1.4.2.1 2001/06/28 19:10:11 gunter Exp $
|
||||
// GEANT4 tag $Name: $
|
||||
// $Id: G4Point3DList.cc,v 1.5 2001/07/11 10:01:08 gunter Exp $
|
||||
// GEANT4 tag $Name: geant4-04-00 $
|
||||
//
|
||||
//
|
||||
// John Allison July 1995
|
||||
|
||||
@@ -21,8 +21,8 @@
|
||||
// ********************************************************************
|
||||
//
|
||||
//
|
||||
// $Id: G4Polyhedron.cc,v 1.10.2.1 2001/06/28 19:10:11 gunter Exp $
|
||||
// GEANT4 tag $Name: $
|
||||
// $Id: G4Polyhedron.cc,v 1.11 2001/07/11 10:01:08 gunter Exp $
|
||||
// GEANT4 tag $Name: geant4-04-00 $
|
||||
|
||||
#include "G4Polyhedron.hh"
|
||||
|
||||
|
||||
@@ -21,8 +21,8 @@
|
||||
// ********************************************************************
|
||||
//
|
||||
//
|
||||
// $Id: G4Polyline.cc,v 1.5.2.1 2001/06/28 19:10:12 gunter Exp $
|
||||
// GEANT4 tag $Name: $
|
||||
// $Id: G4Polyline.cc,v 1.7 2001/08/14 18:24:58 johna Exp $
|
||||
// GEANT4 tag $Name: geant4-04-00 $
|
||||
//
|
||||
//
|
||||
// John Allison July 1995
|
||||
@@ -51,6 +51,11 @@ G4Polyline & G4Polyline::operator = (const G4Polyline &right) {
|
||||
return *this;
|
||||
}
|
||||
|
||||
G4Polyline& G4Polyline::transform (const G4Transform3D& transformation) {
|
||||
for (iterator i = begin(); i != end(); ++i) i->transform(transformation);
|
||||
return *this;
|
||||
}
|
||||
|
||||
G4std::ostream& operator << (G4std::ostream& os, const G4Polyline& line) {
|
||||
os << "G4Polyline: ";
|
||||
os << '\n' << (G4VVisPrim) line;
|
||||
|
||||
@@ -21,8 +21,8 @@
|
||||
// ********************************************************************
|
||||
//
|
||||
//
|
||||
// $Id: G4Polymarker.cc,v 1.6.2.1 2001/06/28 19:10:12 gunter Exp $
|
||||
// GEANT4 tag $Name: $
|
||||
// $Id: G4Polymarker.cc,v 1.7 2001/07/11 10:01:08 gunter Exp $
|
||||
// GEANT4 tag $Name: geant4-04-00 $
|
||||
//
|
||||
//
|
||||
// John Allison November 1996
|
||||
|
||||
@@ -0,0 +1,85 @@
|
||||
//
|
||||
// ********************************************************************
|
||||
// * DISCLAIMER *
|
||||
// * *
|
||||
// * The following disclaimer summarizes all the specific disclaimers *
|
||||
// * of contributors to this software. The specific disclaimers,which *
|
||||
// * govern, are listed with their locations in: *
|
||||
// * http://cern.ch/geant4/license *
|
||||
// * *
|
||||
// * Neither the authors of this software system, nor their employing *
|
||||
// * institutes,nor the agencies providing financial support for this *
|
||||
// * work make any representation or warranty, express or implied, *
|
||||
// * regarding this software system or assume any liability for its *
|
||||
// * use. *
|
||||
// * *
|
||||
// * This code implementation is the intellectual property of the *
|
||||
// * GEANT4 collaboration. *
|
||||
// * By copying, distributing or modifying the Program (or any work *
|
||||
// * based on the Program) you indicate your acceptance of this *
|
||||
// * statement, and all its terms. *
|
||||
// ********************************************************************
|
||||
//
|
||||
//
|
||||
// $Id: G4Scale.cc,v 1.4 2001/09/10 10:28:56 johna Exp $
|
||||
// GEANT4 tag $Name: geant4-04-00 $
|
||||
//
|
||||
//
|
||||
// John Allison 21st July 2001
|
||||
|
||||
#include "G4Scale.hh"
|
||||
|
||||
G4Scale::G4Scale (G4double length, const G4String& annotation,
|
||||
G4Scale::Direction direction,
|
||||
G4bool autoPlacing,
|
||||
G4double xmid, G4double ymid, G4double zmid):
|
||||
fLength(length),
|
||||
fAnnotation(annotation),
|
||||
fDirection(direction),
|
||||
fAutoPlacing(autoPlacing),
|
||||
fXmid(xmid), fYmid(ymid), fZmid(zmid) {}
|
||||
|
||||
G4Scale::~G4Scale () {}
|
||||
|
||||
G4Visible & G4Scale::operator = (const G4Visible &from) {
|
||||
return G4Visible::operator = (from);
|
||||
}
|
||||
|
||||
G4VVisPrim & G4Scale::operator = (const G4VVisPrim &from) {
|
||||
return G4VVisPrim::operator = (from);
|
||||
}
|
||||
|
||||
G4VMarker & G4Scale::operator = (const G4VMarker &from) {
|
||||
return G4VMarker::operator = (from);
|
||||
}
|
||||
|
||||
G4Scale & G4Scale::operator = (const G4Scale &from) {
|
||||
if (&from == this) return *this;
|
||||
G4VMarker::operator = (from);
|
||||
fLength = from.fLength;
|
||||
fAnnotation = from.fAnnotation;
|
||||
fDirection = from.fDirection;
|
||||
fAutoPlacing = from.fAutoPlacing;
|
||||
fXmid = from.fXmid;
|
||||
fYmid = from.fYmid;
|
||||
fZmid = from.fZmid;
|
||||
return *this;
|
||||
}
|
||||
|
||||
G4String G4Scale::GuidanceString
|
||||
(
|
||||
"An annotated line in the specified direction with tick marks at the"
|
||||
"\nend. If autoPlacing is true it is required to be centred at the"
|
||||
"\nfront, right, bottom corner of the world space, comfortably outside"
|
||||
"\nthe existing bounding box/sphere so that existing objects do not"
|
||||
"\nobscure it. Otherwise it is required to be drawn with mid-point at"
|
||||
"\n(xmid, ymid, zmid)."
|
||||
"\n"
|
||||
"\nThe auto placing algorithm might be:"
|
||||
"\n x = xmin + (1 + comfort) * (xmax - xmin)"
|
||||
"\n y = ymin - comfort * (ymax - ymin)"
|
||||
"\n z = zmin + (1 + comfort) * (zmax - zmin)"
|
||||
"\n if direction == x then (x - length,y,z) to (x,y,z)"
|
||||
"\n if direction == y then (x,y,z) to (x,y + length,z)"
|
||||
"\n if direction == z then (x,y,z - length) to (x,y,z)"
|
||||
);
|
||||
@@ -21,8 +21,8 @@
|
||||
// ********************************************************************
|
||||
//
|
||||
//
|
||||
// $Id: G4Square.cc,v 1.2.4.1 2001/06/28 19:10:12 gunter Exp $
|
||||
// GEANT4 tag $Name: $
|
||||
// $Id: G4Square.cc,v 1.3 2001/07/11 10:01:09 gunter Exp $
|
||||
// GEANT4 tag $Name: geant4-04-00 $
|
||||
//
|
||||
//
|
||||
|
||||
|
||||
@@ -21,8 +21,8 @@
|
||||
// ********************************************************************
|
||||
//
|
||||
//
|
||||
// $Id: G4Text.cc,v 1.5.2.1 2001/06/28 19:10:12 gunter Exp $
|
||||
// GEANT4 tag $Name: $
|
||||
// $Id: G4Text.cc,v 1.6 2001/07/11 10:01:09 gunter Exp $
|
||||
// GEANT4 tag $Name: geant4-04-00 $
|
||||
//
|
||||
//
|
||||
// John Allison 17/11/96.
|
||||
|
||||
@@ -21,8 +21,8 @@
|
||||
// ********************************************************************
|
||||
//
|
||||
//
|
||||
// $Id: G4VMarker.cc,v 1.6.2.1 2001/06/28 19:10:12 gunter Exp $
|
||||
// GEANT4 tag $Name: $
|
||||
// $Id: G4VMarker.cc,v 1.7 2001/07/11 10:01:09 gunter Exp $
|
||||
// GEANT4 tag $Name: geant4-04-00 $
|
||||
//
|
||||
//
|
||||
|
||||
|
||||
@@ -21,8 +21,8 @@
|
||||
// ********************************************************************
|
||||
//
|
||||
//
|
||||
// $Id: G4VVisPrim.cc,v 1.6.2.1 2001/06/28 19:10:13 gunter Exp $
|
||||
// GEANT4 tag $Name: $
|
||||
// $Id: G4VVisPrim.cc,v 1.7 2001/07/11 10:01:09 gunter Exp $
|
||||
// GEANT4 tag $Name: geant4-04-00 $
|
||||
//
|
||||
//
|
||||
// John Allison August 1995
|
||||
|
||||
@@ -21,8 +21,8 @@
|
||||
// ********************************************************************
|
||||
//
|
||||
//
|
||||
// $Id: G4VisAttributes.cc,v 1.5.4.1 2001/06/28 19:10:13 gunter Exp $
|
||||
// GEANT4 tag $Name: $
|
||||
// $Id: G4VisAttributes.cc,v 1.6 2001/07/11 10:01:09 gunter Exp $
|
||||
// GEANT4 tag $Name: geant4-04-00 $
|
||||
//
|
||||
//
|
||||
// John Allison 23rd October 1996
|
||||
|
||||
@@ -21,8 +21,8 @@
|
||||
// ********************************************************************
|
||||
//
|
||||
//
|
||||
// $Id: G4VisExtent.cc,v 1.4.4.1 2001/06/28 19:10:13 gunter Exp $
|
||||
// GEANT4 tag $Name: $
|
||||
// $Id: G4VisExtent.cc,v 1.6 2001/07/24 21:39:50 johna Exp $
|
||||
// GEANT4 tag $Name: geant4-04-00 $
|
||||
//
|
||||
//
|
||||
// A.Walkden 28/11/95
|
||||
@@ -40,24 +40,22 @@ G4VisExtent::G4VisExtent (G4double xmin, G4double xmax,
|
||||
{}
|
||||
|
||||
G4VisExtent::G4VisExtent (const G4Point3D& centre, G4double radius) {
|
||||
// Use inscribed radius to define G3VisExtent so that
|
||||
// GetExtentRadius gets radius back again. The one is the "inverse"
|
||||
// of the other, so to speak.
|
||||
G4double inscribedRadius = radius / sqrt (3.);
|
||||
fXmin = centre.x () - inscribedRadius;
|
||||
fXmax = centre.x () + inscribedRadius;
|
||||
fYmin = centre.y () - inscribedRadius;
|
||||
fYmax = centre.y () + inscribedRadius;
|
||||
fZmin = centre.z () - inscribedRadius;
|
||||
fZmax = centre.z () + inscribedRadius;
|
||||
// Use exscribed radius ... see comments in header file.
|
||||
G4double halfSide (radius / sqrt (3.));
|
||||
fXmin = centre.x () - halfSide;
|
||||
fXmax = centre.x () + halfSide;
|
||||
fYmin = centre.y () - halfSide;
|
||||
fYmax = centre.y () + halfSide;
|
||||
fZmin = centre.z () - halfSide;
|
||||
fZmax = centre.z () + halfSide;
|
||||
}
|
||||
|
||||
G4VisExtent::~G4VisExtent () {}
|
||||
|
||||
G4Point3D G4VisExtent::GetExtentCentre () const {
|
||||
return G4Point3D (((fXmin + fXmax) / 2.),
|
||||
((fYmin + fYmax) / 2.),
|
||||
((fZmin + fZmax) / 2.));
|
||||
((fYmin + fYmax) / 2.),
|
||||
((fZmin + fZmax) / 2.));
|
||||
}
|
||||
|
||||
G4double G4VisExtent::GetExtentRadius () const {
|
||||
|
||||
@@ -21,8 +21,8 @@
|
||||
// ********************************************************************
|
||||
//
|
||||
//
|
||||
// $Id: G4Visible.cc,v 1.3.4.1 2001/06/28 19:10:13 gunter Exp $
|
||||
// GEANT4 tag $Name: $
|
||||
// $Id: G4Visible.cc,v 1.4 2001/07/11 10:01:09 gunter Exp $
|
||||
// GEANT4 tag $Name: geant4-04-00 $
|
||||
//
|
||||
//
|
||||
// John Allison 30th October 1996
|
||||
|
||||
@@ -21,8 +21,8 @@
|
||||
// ********************************************************************
|
||||
//
|
||||
//
|
||||
// $Id: HepPolyhedron.cc,v 1.8.2.1 2001/06/28 19:10:13 gunter Exp $
|
||||
// GEANT4 tag $Name: $
|
||||
// $Id: HepPolyhedron.cc,v 1.9 2001/07/11 10:01:10 gunter Exp $
|
||||
// GEANT4 tag $Name: geant4-04-00 $
|
||||
//
|
||||
//
|
||||
//
|
||||
|
||||
Reference in New Issue
Block a user