Geant4  v4-10.4-release
 모두 클래스 네임스페이스들 파일들 함수 변수 타입정의 열거형 타입 열거형 멤버 Friends 매크로 그룹들 페이지들
클래스 | Public 타입 | Public 멤버 함수 | 정적 Public 멤버 함수 | Protected 멤버 함수 | Protected 속성 | Private 속성 | 정적 Private 속성 | Friends | 모든 멤버 목록
G4PolyhedraSide 클래스 참조

#include <G4PolyhedraSide.hh>

G4PolyhedraSide에 대한 상속 다이어그램 :
G4VCSGface

클래스

struct  sG4PolyhedraSideEdge
 
struct  sG4PolyhedraSideVec
 

Public 타입

typedef struct
G4PolyhedraSide::sG4PolyhedraSideEdge 
G4PolyhedraSideEdge
 
typedef struct
G4PolyhedraSide::sG4PolyhedraSideVec 
G4PolyhedraSideVec
 

Public 멤버 함수

 G4PolyhedraSide (const G4PolyhedraSideRZ *prevRZ, const G4PolyhedraSideRZ *tail, const G4PolyhedraSideRZ *head, const G4PolyhedraSideRZ *nextRZ, G4int numSide, G4double phiStart, G4double phiTotal, G4bool phiIsOpen, G4bool isAllBehind=false)
 
virtual ~G4PolyhedraSide ()
 
 G4PolyhedraSide (const G4PolyhedraSide &source)
 
G4PolyhedraSideoperator= (const G4PolyhedraSide &source)
 
G4bool Intersect (const G4ThreeVector &p, const G4ThreeVector &v, G4bool outgoing, G4double surfTolerance, G4double &distance, G4double &distFromSurface, G4ThreeVector &normal, G4bool &allBehind)
 
G4double Distance (const G4ThreeVector &p, G4bool outgoing)
 
EInside Inside (const G4ThreeVector &p, G4double tolerance, G4double *bestDistance)
 
G4ThreeVector Normal (const G4ThreeVector &p, G4double *bestDistance)
 
G4double Extent (const G4ThreeVector axis)
 
void CalculateExtent (const EAxis axis, const G4VoxelLimits &voxelLimit, const G4AffineTransform &tranform, G4SolidExtentList &extentList)
 
G4VCSGfaceClone ()
 
G4double SurfaceTriangle (G4ThreeVector p1, G4ThreeVector p2, G4ThreeVector p3, G4ThreeVector *p4)
 
G4ThreeVector GetPointOnPlane (G4ThreeVector p0, G4ThreeVector p1, G4ThreeVector p2, G4ThreeVector p3, G4double *Area)
 
G4double SurfaceArea ()
 
G4ThreeVector GetPointOnFace ()
 
 G4PolyhedraSide (__void__ &)
 
G4int GetInstanceID () const
 

정적 Public 멤버 함수

static const G4PhSideManagerGetSubInstanceManager ()
 

Protected 멤버 함수

G4bool IntersectSidePlane (const G4ThreeVector &p, const G4ThreeVector &v, const G4PolyhedraSideVec &vec, G4double normSign, G4double surfTolerance, G4double &distance, G4double &distFromSurface)
 
G4int LineHitsSegments (const G4ThreeVector &p, const G4ThreeVector &v, G4int *i1, G4int *i2)
 
G4int ClosestPhiSegment (G4double phi)
 
G4int PhiSegment (G4double phi)
 
G4double GetPhi (const G4ThreeVector &p)
 
G4double DistanceToOneSide (const G4ThreeVector &p, const G4PolyhedraSideVec &vec, G4double *normDist)
 
G4double DistanceAway (const G4ThreeVector &p, const G4PolyhedraSideVec &vec, G4double *normDist)
 
void CopyStuff (const G4PolyhedraSide &source)
 

Protected 속성

G4int numSide
 
G4double r [2]
 
G4double z [2]
 
G4double startPhi
 
G4double deltaPhi
 
G4double endPhi
 
G4bool phiIsOpen
 
G4bool allBehind
 
G4IntersectingConecone
 
G4PolyhedraSideVecvecs
 
G4PolyhedraSideEdgeedges
 
G4double lenRZ
 
G4double lenPhi [2]
 
G4double edgeNorm
 

Private 속성

G4double kCarTolerance
 
G4double fSurfaceArea
 
G4int instanceID
 

정적 Private 속성

static G4GEOM_DLL G4PhSideManager subInstanceManager
 

Friends

struct sG4PolyhedraSideVec
 

상세한 설명

G4PolyhedraSide.hh 파일의 98 번째 라인에서 정의되었습니다.

멤버 타입정의 문서화

생성자 & 소멸자 문서화

G4PolyhedraSide::G4PolyhedraSide ( const G4PolyhedraSideRZ prevRZ,
const G4PolyhedraSideRZ tail,
const G4PolyhedraSideRZ head,
const G4PolyhedraSideRZ nextRZ,
G4int  numSide,
G4double  phiStart,
G4double  phiTotal,
G4bool  phiIsOpen,
G4bool  isAllBehind = false 
)
G4PolyhedraSide::~G4PolyhedraSide ( )
virtual

G4PolyhedraSide.cc 파일의 330 번째 라인에서 정의되었습니다.

다음을 참조함 : cone, edges, vecs.

G4PolyhedraSide::G4PolyhedraSide ( const G4PolyhedraSide source)

G4PolyhedraSide.cc 파일의 341 번째 라인에서 정의되었습니다.

다음을 참조함 : CopyStuff(), G4GeomSplitter< T >::CreateSubInstance(), instanceID, subInstanceManager.

G4PolyhedraSide::G4PolyhedraSide ( __void__ &  )

G4PolyhedraSide.cc 파일의 316 번째 라인에서 정의되었습니다.

다음을 참조함 : lenPhi, r, z.

멤버 함수 문서화

void G4PolyhedraSide::CalculateExtent ( const EAxis  axis,
const G4VoxelLimits voxelLimit,
const G4AffineTransform tranform,
G4SolidExtentList extentList 
)
virtual
G4VCSGface* G4PolyhedraSide::Clone ( )
inlinevirtual

G4VCSGface를 구현.

G4PolyhedraSide.hh 파일의 134 번째 라인에서 정의되었습니다.

다음을 참조함 : G4PolyhedraSide().

G4int G4PolyhedraSide::ClosestPhiSegment ( G4double  phi)
protected

G4PolyhedraSide.cc 파일의 942 번째 라인에서 정의되었습니다.

다음을 참조함 : d1, d2, endPhi, numSide, PhiSegment(), startPhi, twopi.

다음에 의해서 참조됨 : Distance(), Inside(), Normal().

void G4PolyhedraSide::CopyStuff ( const G4PolyhedraSide source)
protected

G4PolyhedraSide.cc 파일의 370 번째 라인에서 정의되었습니다.

다음을 참조함 : allBehind, cone, deltaPhi, edgeNorm, G4PolyhedraSide::sG4PolyhedraSideVec::edges, edges, endPhi, fSurfaceArea, kCarTolerance, lenPhi, lenRZ, numSide, phiIsOpen, r, startPhi, vecs, z.

다음에 의해서 참조됨 : G4PolyhedraSide(), operator=().

G4double G4PolyhedraSide::Distance ( const G4ThreeVector p,
G4bool  outgoing 
)
virtual
G4double G4PolyhedraSide::DistanceAway ( const G4ThreeVector p,
const G4PolyhedraSideVec vec,
G4double normDist 
)
protected
G4double G4PolyhedraSide::DistanceToOneSide ( const G4ThreeVector p,
const G4PolyhedraSideVec vec,
G4double normDist 
)
protected

G4PolyhedraSide.cc 파일의 1039 번째 라인에서 정의되었습니다.

다음을 참조함 : G4PolyhedraSide::sG4PolyhedraSideVec::center, DistanceAway(), CLHEP::Hep3Vector::dot(), G4PolyhedraSide::sG4PolyhedraSideVec::normal.

다음에 의해서 참조됨 : Inside(), Normal().

G4double G4PolyhedraSide::Extent ( const G4ThreeVector  axis)
virtual
G4int G4PolyhedraSide::GetInstanceID ( ) const
inline

G4PolyhedraSide.hh 파일의 157 번째 라인에서 정의되었습니다.

다음을 참조함 : instanceID.

G4double G4PolyhedraSide::GetPhi ( const G4ThreeVector p)
protected

G4PolyhedraSide.cc 파일의 1012 번째 라인에서 정의되었습니다.

다음을 참조함 : G4MT_phphi, CLHEP::Hep3Vector::phi().

다음에 의해서 참조됨 : Distance(), Extent(), Inside(), Normal().

G4ThreeVector G4PolyhedraSide::GetPointOnFace ( )
virtual
G4ThreeVector G4PolyhedraSide::GetPointOnPlane ( G4ThreeVector  p0,
G4ThreeVector  p1,
G4ThreeVector  p2,
G4ThreeVector  p3,
G4double Area 
)

G4PolyhedraSide.cc 파일의 1232 번째 라인에서 정의되었습니다.

다음을 참조함 : G4UniformRand, SurfaceTriangle().

다음에 의해서 참조됨 : GetPointOnFace(), SurfaceArea().

const G4PhSideManager & G4PolyhedraSide::GetSubInstanceManager ( )
static

G4PolyhedraSide.cc 파일의 61 번째 라인에서 정의되었습니다.

다음을 참조함 : subInstanceManager.

다음에 의해서 참조됨 : G4SolidsWorkspace::G4SolidsWorkspace().

EInside G4PolyhedraSide::Inside ( const G4ThreeVector p,
G4double  tolerance,
G4double bestDistance 
)
virtual

G4VCSGface를 구현.

G4PolyhedraSide.cc 파일의 618 번째 라인에서 정의되었습니다.

다음을 참조함 : ClosestPhiSegment(), DistanceToOneSide(), GetPhi(), kInside, kOutside, kSurface, norm, vecs.

G4bool G4PolyhedraSide::Intersect ( const G4ThreeVector p,
const G4ThreeVector v,
G4bool  outgoing,
G4double  surfTolerance,
G4double distance,
G4double distFromSurface,
G4ThreeVector normal,
G4bool allBehind 
)
virtual
G4bool G4PolyhedraSide::IntersectSidePlane ( const G4ThreeVector p,
const G4ThreeVector v,
const G4PolyhedraSideVec vec,
G4double  normSign,
G4double  surfTolerance,
G4double distance,
G4double distFromSurface 
)
protected
G4int G4PolyhedraSide::LineHitsSegments ( const G4ThreeVector p,
const G4ThreeVector v,
G4int i1,
G4int i2 
)
protected

G4PolyhedraSide.cc 파일의 896 번째 라인에서 정의되었습니다.

다음을 참조함 : cone, G4IntersectingCone::LineHitsCone(), n, PhiSegment(), CLHEP::Hep3Vector::x(), CLHEP::Hep3Vector::y().

G4ThreeVector G4PolyhedraSide::Normal ( const G4ThreeVector p,
G4double bestDistance 
)
virtual

G4VCSGface를 구현.

G4PolyhedraSide.cc 파일의 649 번째 라인에서 정의되었습니다.

다음을 참조함 : ClosestPhiSegment(), DistanceToOneSide(), GetPhi(), norm, G4PolyhedraSide::sG4PolyhedraSideVec::normal, vecs.

G4PolyhedraSide & G4PolyhedraSide::operator= ( const G4PolyhedraSide source)

G4PolyhedraSide.cc 파일의 353 번째 라인에서 정의되었습니다.

다음을 참조함 : cone, CopyStuff(), edges, vecs.

G4int G4PolyhedraSide::PhiSegment ( G4double  phi)
protected

G4PolyhedraSide.cc 파일의 972 번째 라인에서 정의되었습니다.

다음을 참조함 : deltaPhi, numSide, phiIsOpen, startPhi, twopi.

다음에 의해서 참조됨 : ClosestPhiSegment(), Extent(), LineHitsSegments().

G4double G4PolyhedraSide::SurfaceArea ( )
virtual
G4double G4PolyhedraSide::SurfaceTriangle ( G4ThreeVector  p1,
G4ThreeVector  p2,
G4ThreeVector  p3,
G4ThreeVector p4 
)

G4PolyhedraSide.cc 파일의 1209 번째 라인에서 정의되었습니다.

다음을 참조함 : G4UniformRand, w.

다음에 의해서 참조됨 : GetPointOnPlane().

Friend, 그리고 관련된 함수 문서화

friend struct sG4PolyhedraSideVec
friend

G4PolyhedraSide.hh 파일의 166 번째 라인에서 정의되었습니다.

멤버 데이타 문서화

G4bool G4PolyhedraSide::allBehind
protected

G4PolyhedraSide.hh 파일의 224 번째 라인에서 정의되었습니다.

다음에 의해서 참조됨 : CopyStuff(), G4PolyhedraSide(), Intersect().

G4IntersectingCone* G4PolyhedraSide::cone
protected

G4PolyhedraSide.hh 파일의 226 번째 라인에서 정의되었습니다.

다음에 의해서 참조됨 : CopyStuff(), Extent(), G4PolyhedraSide(), LineHitsSegments(), operator=(), ~G4PolyhedraSide().

G4double G4PolyhedraSide::deltaPhi
protected

G4PolyhedraSide.hh 파일의 220 번째 라인에서 정의되었습니다.

다음에 의해서 참조됨 : CopyStuff(), G4PolyhedraSide(), PhiSegment().

G4double G4PolyhedraSide::edgeNorm
protected

G4PolyhedraSide.hh 파일의 232 번째 라인에서 정의되었습니다.

다음에 의해서 참조됨 : CopyStuff(), DistanceAway(), G4PolyhedraSide().

G4PolyhedraSideEdge* G4PolyhedraSide::edges
protected

G4PolyhedraSide.hh 파일의 229 번째 라인에서 정의되었습니다.

다음에 의해서 참조됨 : CopyStuff(), G4PolyhedraSide(), operator=(), ~G4PolyhedraSide().

G4double G4PolyhedraSide::endPhi
protected

G4PolyhedraSide.hh 파일의 220 번째 라인에서 정의되었습니다.

다음에 의해서 참조됨 : ClosestPhiSegment(), CopyStuff(), G4PolyhedraSide().

G4double G4PolyhedraSide::fSurfaceArea
private

G4PolyhedraSide.hh 파일의 237 번째 라인에서 정의되었습니다.

다음에 의해서 참조됨 : CopyStuff(), G4PolyhedraSide(), SurfaceArea().

G4int G4PolyhedraSide::instanceID
private

G4PolyhedraSide.hh 파일의 239 번째 라인에서 정의되었습니다.

다음에 의해서 참조됨 : G4PolyhedraSide(), GetInstanceID().

G4double G4PolyhedraSide::kCarTolerance
private

G4PolyhedraSide.hh 파일의 236 번째 라인에서 정의되었습니다.

다음에 의해서 참조됨 : CopyStuff(), Distance(), G4PolyhedraSide().

G4double G4PolyhedraSide::lenPhi[2]
protected

G4PolyhedraSide.hh 파일의 230 번째 라인에서 정의되었습니다.

다음에 의해서 참조됨 : CopyStuff(), DistanceAway(), G4PolyhedraSide(), Intersect().

G4double G4PolyhedraSide::lenRZ
protected

G4PolyhedraSide.hh 파일의 230 번째 라인에서 정의되었습니다.

다음에 의해서 참조됨 : CopyStuff(), DistanceAway(), G4PolyhedraSide(), Intersect(), IntersectSidePlane().

G4int G4PolyhedraSide::numSide
protected

G4PolyhedraSide.hh 파일의 218 번째 라인에서 정의되었습니다.

다음에 의해서 참조됨 : CalculateExtent(), ClosestPhiSegment(), CopyStuff(), Extent(), G4PolyhedraSide(), GetPointOnFace(), Intersect(), PhiSegment(), SurfaceArea().

G4bool G4PolyhedraSide::phiIsOpen
protected

G4PolyhedraSide.hh 파일의 223 번째 라인에서 정의되었습니다.

다음에 의해서 참조됨 : CopyStuff(), G4PolyhedraSide(), PhiSegment().

G4double G4PolyhedraSide::r[2]
protected

G4PolyhedraSide.hh 파일의 219 번째 라인에서 정의되었습니다.

다음에 의해서 참조됨 : CopyStuff(), G4PolyhedraSide(), Intersect(), IntersectSidePlane().

G4double G4PolyhedraSide::startPhi
protected

G4PolyhedraSide.hh 파일의 220 번째 라인에서 정의되었습니다.

다음에 의해서 참조됨 : ClosestPhiSegment(), CopyStuff(), G4PolyhedraSide(), PhiSegment().

G4PhSideManager G4PolyhedraSide::subInstanceManager
staticprivate

G4PolyhedraSide.hh 파일의 241 번째 라인에서 정의되었습니다.

다음에 의해서 참조됨 : G4PolyhedraSide(), GetSubInstanceManager().

G4PolyhedraSideVec* G4PolyhedraSide::vecs
protected
G4double G4PolyhedraSide::z[2]
protected

G4PolyhedraSide.hh 파일의 219 번째 라인에서 정의되었습니다.

다음에 의해서 참조됨 : CopyStuff(), G4PolyhedraSide().


이 클래스에 대한 문서화 페이지는 다음의 파일들로부터 생성되었습니다.: