ECCE @ EIC Software
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
G4ReduciblePolygon Class Reference

#include <geant4/tree/geant4-10.6-release/source/geometry/solids/specific/include/G4ReduciblePolygon.hh>

+ Collaboration diagram for G4ReduciblePolygon:

Classes

struct  ABVertex
 

Public Member Functions

 G4ReduciblePolygon (const G4double a[], const G4double b[], G4int n)
 
 G4ReduciblePolygon (const G4double rmin[], const G4double rmax[], const G4double z[], G4int n)
 
virtual ~G4ReduciblePolygon ()
 
G4int NumVertices () const
 
G4double Amin () const
 
G4double Amax () const
 
G4double Bmin () const
 
G4double Bmax () const
 
void CopyVertices (G4double a[], G4double b[]) const
 
void ScaleA (G4double scale)
 
void ScaleB (G4double scale)
 
G4bool RemoveDuplicateVertices (G4double tolerance)
 
G4bool RemoveRedundantVertices (G4double tolerance)
 
void ReverseOrder ()
 
void StartWithZMin ()
 
G4double Area ()
 
G4bool CrossesItself (G4double tolerance)
 
G4bool BisectedBy (G4double a1, G4double b1, G4double a2, G4double b2, G4double tolerance)
 
void Print ()
 
 G4ReduciblePolygon (__void__ &)
 

Protected Member Functions

void Create (const G4double a[], const G4double b[], G4int n)
 
void CalculateMaxMin ()
 

Protected Attributes

G4double aMin
 
G4double aMax
 
G4double bMin
 
G4double bMax
 
G4int numVertices = 0
 
ABVertexvertexHead = nullptr
 

Private Member Functions

 G4ReduciblePolygon (const G4ReduciblePolygon &)
 
G4ReduciblePolygonoperator= (const G4ReduciblePolygon &)
 

Friends

class G4ReduciblePolygonIterator
 
struct ABVertex
 

Detailed Description

Definition at line 52 of file G4ReduciblePolygon.hh.

View newest version in sPHENIX GitHub at line 52 of file G4ReduciblePolygon.hh

Constructor & Destructor Documentation

G4ReduciblePolygon::G4ReduciblePolygon ( const G4double  a[],
const G4double  b[],
G4int  n 
)

Definition at line 38 of file G4ReduciblePolygon.cc.

View newest version in sPHENIX GitHub at line 38 of file G4ReduciblePolygon.cc

References Create().

+ Here is the call graph for this function:

G4ReduciblePolygon::G4ReduciblePolygon ( const G4double  rmin[],
const G4double  rmax[],
const G4double  z[],
G4int  n 
)

Definition at line 51 of file G4ReduciblePolygon.cc.

View newest version in sPHENIX GitHub at line 51 of file G4ReduciblePolygon.cc

References a, b, Create(), and n.

+ Here is the call graph for this function:

G4ReduciblePolygon::~G4ReduciblePolygon ( )
virtual

Definition at line 129 of file G4ReduciblePolygon.cc.

View newest version in sPHENIX GitHub at line 129 of file G4ReduciblePolygon.cc

References G4ReduciblePolygon::ABVertex::next, and vertexHead.

G4ReduciblePolygon::G4ReduciblePolygon ( __void__ &  )

Definition at line 120 of file G4ReduciblePolygon.cc.

View newest version in sPHENIX GitHub at line 120 of file G4ReduciblePolygon.cc

G4ReduciblePolygon::G4ReduciblePolygon ( const G4ReduciblePolygon )
private

Member Function Documentation

G4double G4ReduciblePolygon::Amax ( ) const
inline

Definition at line 78 of file G4ReduciblePolygon.hh.

View newest version in sPHENIX GitHub at line 78 of file G4ReduciblePolygon.hh

References aMax.

Referenced by G4EnclosingCylinder::G4EnclosingCylinder(), and G4PolyPhiFace::G4PolyPhiFace().

+ Here is the caller graph for this function:

G4double G4ReduciblePolygon::Amin ( ) const
inline

Definition at line 77 of file G4ReduciblePolygon.hh.

View newest version in sPHENIX GitHub at line 77 of file G4ReduciblePolygon.hh

References aMin.

Referenced by G4GenericPolycone::Create(), G4Polycone::Create(), G4Polyhedra::Create(), and G4PolyPhiFace::G4PolyPhiFace().

+ Here is the caller graph for this function:

G4double G4ReduciblePolygon::Area ( )

Definition at line 519 of file G4ReduciblePolygon.cc.

View newest version in sPHENIX GitHub at line 519 of file G4ReduciblePolygon.cc

References G4ReduciblePolygon::ABVertex::a, G4ReduciblePolygon::ABVertex::b, G4ReduciblePolygon::ABVertex::next, and vertexHead.

Referenced by G4GenericPolycone::Create(), G4Polycone::Create(), and G4Polyhedra::Create().

+ Here is the caller graph for this function:

G4bool G4ReduciblePolygon::BisectedBy ( G4double  a1,
G4double  b1,
G4double  a2,
G4double  b2,
G4double  tolerance 
)

Definition at line 477 of file G4ReduciblePolygon.cc.

View newest version in sPHENIX GitHub at line 477 of file G4ReduciblePolygon.cc

References G4ReduciblePolygon::ABVertex::a, G4ReduciblePolygon::ABVertex::b, Acts::VectorHelpers::cross(), G4ReduciblePolygon::ABVertex::next, and vertexHead.

Referenced by G4GenericPolycone::Create(), and G4Polycone::Create().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4double G4ReduciblePolygon::Bmax ( ) const
inline

Definition at line 80 of file G4ReduciblePolygon.hh.

View newest version in sPHENIX GitHub at line 80 of file G4ReduciblePolygon.hh

References bMax.

Referenced by G4EnclosingCylinder::G4EnclosingCylinder(), G4PolyPhiFace::G4PolyPhiFace(), G4Polycone::SetOriginalParameters(), and G4Polyhedra::SetOriginalParameters().

+ Here is the caller graph for this function:

G4double G4ReduciblePolygon::Bmin ( ) const
inline

Definition at line 79 of file G4ReduciblePolygon.hh.

View newest version in sPHENIX GitHub at line 79 of file G4ReduciblePolygon.hh

References bMin.

Referenced by G4EnclosingCylinder::G4EnclosingCylinder(), and G4PolyPhiFace::G4PolyPhiFace().

+ Here is the caller graph for this function:

void G4ReduciblePolygon::CalculateMaxMin ( )
protected

Definition at line 553 of file G4ReduciblePolygon.cc.

View newest version in sPHENIX GitHub at line 553 of file G4ReduciblePolygon.cc

References G4ReduciblePolygon::ABVertex::a, aMax, aMin, G4ReduciblePolygon::ABVertex::b, bMax, bMin, G4ReduciblePolygon::ABVertex::next, and vertexHead.

Referenced by Create(), RemoveDuplicateVertices(), and RemoveRedundantVertices().

+ Here is the caller graph for this function:

void G4ReduciblePolygon::CopyVertices ( G4double  a[],
G4double  b[] 
) const

Definition at line 146 of file G4ReduciblePolygon.cc.

View newest version in sPHENIX GitHub at line 146 of file G4ReduciblePolygon.cc

References a, G4ReduciblePolygon::ABVertex::a, b, G4ReduciblePolygon::ABVertex::b, G4ReduciblePolygon::ABVertex::next, and vertexHead.

void G4ReduciblePolygon::Create ( const G4double  a[],
const G4double  b[],
G4int  n 
)
protected

Definition at line 85 of file G4ReduciblePolygon.cc.

View newest version in sPHENIX GitHub at line 85 of file G4ReduciblePolygon.cc

References a, G4ReduciblePolygon::ABVertex::a, ABVertex, b, G4ReduciblePolygon::ABVertex::b, CalculateMaxMin(), FatalErrorInArgument, G4Exception(), n, G4ReduciblePolygon::ABVertex::next, numVertices, and vertexHead.

Referenced by G4ReduciblePolygon().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4bool G4ReduciblePolygon::CrossesItself ( G4double  tolerance)

Definition at line 422 of file G4ReduciblePolygon.cc.

View newest version in sPHENIX GitHub at line 422 of file G4ReduciblePolygon.cc

References G4ReduciblePolygon::ABVertex::a, G4ReduciblePolygon::ABVertex::b, G4ReduciblePolygon::ABVertex::next, one, s1, vertexHead, and zero.

Referenced by G4GenericPolycone::Create(), G4Polycone::Create(), and G4Polyhedra::Create().

+ Here is the caller graph for this function:

G4int G4ReduciblePolygon::NumVertices ( ) const
inline

Definition at line 75 of file G4ReduciblePolygon.hh.

View newest version in sPHENIX GitHub at line 75 of file G4ReduciblePolygon.hh

References numVertices.

Referenced by G4GenericPolycone::Create(), G4Polycone::Create(), G4Polyhedra::Create(), and G4PolyPhiFace::G4PolyPhiFace().

+ Here is the caller graph for this function:

G4ReduciblePolygon& G4ReduciblePolygon::operator= ( const G4ReduciblePolygon )
private
void G4ReduciblePolygon::Print ( void  )

Definition at line 538 of file G4ReduciblePolygon.cc.

View newest version in sPHENIX GitHub at line 538 of file G4ReduciblePolygon.cc

References G4ReduciblePolygon::ABVertex::a, G4ReduciblePolygon::ABVertex::b, G4cerr, G4endl, G4ReduciblePolygon::ABVertex::next, and vertexHead.

G4bool G4ReduciblePolygon::RemoveDuplicateVertices ( G4double  tolerance)

Definition at line 191 of file G4ReduciblePolygon.cc.

View newest version in sPHENIX GitHub at line 191 of file G4ReduciblePolygon.cc

References G4ReduciblePolygon::ABVertex::a, G4ReduciblePolygon::ABVertex::b, CalculateMaxMin(), G4ReduciblePolygon::ABVertex::next, numVertices, and vertexHead.

Referenced by G4GenericPolycone::Create(), G4Polycone::Create(), and G4Polyhedra::Create().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4bool G4ReduciblePolygon::RemoveRedundantVertices ( G4double  tolerance)

Definition at line 246 of file G4ReduciblePolygon.cc.

View newest version in sPHENIX GitHub at line 246 of file G4ReduciblePolygon.cc

References G4ReduciblePolygon::ABVertex::a, G4ReduciblePolygon::ABVertex::b, CalculateMaxMin(), Acts::Test::db, G4ReduciblePolygon::ABVertex::next, numVertices, test(), and vertexHead.

Referenced by G4GenericPolycone::Create(), G4Polycone::Create(), and G4Polyhedra::Create().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void G4ReduciblePolygon::ReverseOrder ( )

Definition at line 339 of file G4ReduciblePolygon.cc.

View newest version in sPHENIX GitHub at line 339 of file G4ReduciblePolygon.cc

References G4ReduciblePolygon::ABVertex::next, and vertexHead.

Referenced by G4GenericPolycone::Create(), G4Polycone::Create(), and G4Polyhedra::Create().

+ Here is the caller graph for this function:

void G4ReduciblePolygon::ScaleA ( G4double  scale)

Definition at line 162 of file G4ReduciblePolygon.cc.

View newest version in sPHENIX GitHub at line 162 of file G4ReduciblePolygon.cc

References G4ReduciblePolygon::ABVertex::a, G4ReduciblePolygon::ABVertex::next, scale, and vertexHead.

Referenced by G4Polyhedra::G4Polyhedra().

+ Here is the caller graph for this function:

void G4ReduciblePolygon::ScaleB ( G4double  scale)

Definition at line 176 of file G4ReduciblePolygon.cc.

View newest version in sPHENIX GitHub at line 176 of file G4ReduciblePolygon.cc

References G4ReduciblePolygon::ABVertex::b, G4ReduciblePolygon::ABVertex::next, scale, and vertexHead.

void G4ReduciblePolygon::StartWithZMin ( )

Definition at line 392 of file G4ReduciblePolygon.cc.

View newest version in sPHENIX GitHub at line 392 of file G4ReduciblePolygon.cc

References G4ReduciblePolygon::ABVertex::b, G4ReduciblePolygon::ABVertex::next, and vertexHead.

Referenced by G4Polycone::SetOriginalParameters(), and G4Polyhedra::SetOriginalParameters().

+ Here is the caller graph for this function:

Friends And Related Function Documentation

friend struct ABVertex
friend

Definition at line 131 of file G4ReduciblePolygon.hh.

View newest version in sPHENIX GitHub at line 131 of file G4ReduciblePolygon.hh

Referenced by Create().

friend class G4ReduciblePolygonIterator
friend

Definition at line 54 of file G4ReduciblePolygon.hh.

View newest version in sPHENIX GitHub at line 54 of file G4ReduciblePolygon.hh

Member Data Documentation

G4double G4ReduciblePolygon::aMax
protected

Definition at line 122 of file G4ReduciblePolygon.hh.

View newest version in sPHENIX GitHub at line 122 of file G4ReduciblePolygon.hh

Referenced by Amax(), and CalculateMaxMin().

G4double G4ReduciblePolygon::aMin
protected

Definition at line 122 of file G4ReduciblePolygon.hh.

View newest version in sPHENIX GitHub at line 122 of file G4ReduciblePolygon.hh

Referenced by Amin(), and CalculateMaxMin().

G4double G4ReduciblePolygon::bMax
protected

Definition at line 122 of file G4ReduciblePolygon.hh.

View newest version in sPHENIX GitHub at line 122 of file G4ReduciblePolygon.hh

Referenced by Bmax(), and CalculateMaxMin().

G4double G4ReduciblePolygon::bMin
protected

Definition at line 122 of file G4ReduciblePolygon.hh.

View newest version in sPHENIX GitHub at line 122 of file G4ReduciblePolygon.hh

Referenced by Bmin(), and CalculateMaxMin().

G4int G4ReduciblePolygon::numVertices = 0
protected

Definition at line 123 of file G4ReduciblePolygon.hh.

View newest version in sPHENIX GitHub at line 123 of file G4ReduciblePolygon.hh

Referenced by Create(), NumVertices(), RemoveDuplicateVertices(), and RemoveRedundantVertices().


The documentation for this class was generated from the following files: