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

#include <G4VTwistSurface.hh>

G4VTwistSurface에 대한 상속 다이어그램 :
G4TwistBoxSide G4TwistTrapAlphaSide G4TwistTrapFlatSide G4TwistTrapParallelSide G4TwistTubsFlatSide G4TwistTubsHypeSide G4TwistTubsSide

클래스

class  Boundary
 
class  CurrentStatus
 
class  G4SurfCurNormal
 
class  G4SurfSideQuery
 

Public 타입

enum  EValidate { kDontValidate = 0, kValidateWithTol = 1, kValidateWithoutTol = 2, kUninitialized = 3 }
 

Public 멤버 함수

 G4VTwistSurface (const G4String &name)
 
 G4VTwistSurface (const G4String &name, const G4RotationMatrix &rot, const G4ThreeVector &tlate, G4int handedness, const EAxis axis1, const EAxis axis2, G4double axis0min=-kInfinity, G4double axis1min=-kInfinity, G4double axis0max=kInfinity, G4double axis1max=kInfinity)
 
virtual ~G4VTwistSurface ()
 
virtual G4int AmIOnLeftSide (const G4ThreeVector &me, const G4ThreeVector &vec, G4bool withTol=true)
 
virtual G4double DistanceToBoundary (G4int areacode, G4ThreeVector &xx, const G4ThreeVector &p)
 
virtual G4double DistanceToIn (const G4ThreeVector &gp, const G4ThreeVector &gv, G4ThreeVector &gxxbest)
 
virtual G4double DistanceToOut (const G4ThreeVector &gp, const G4ThreeVector &gv, G4ThreeVector &gxxbest)
 
virtual G4double DistanceTo (const G4ThreeVector &gp, G4ThreeVector &gxx)
 
virtual G4int DistanceToSurface (const G4ThreeVector &gp, const G4ThreeVector &gv, G4ThreeVector gxx[], G4double distance[], G4int areacode[], G4bool isvalid[], EValidate validate=kValidateWithTol)=0
 
virtual G4int DistanceToSurface (const G4ThreeVector &gp, G4ThreeVector gxx[], G4double distance[], G4int areacode[])=0
 
void DebugPrint () const
 
virtual G4ThreeVector GetNormal (const G4ThreeVector &xx, G4bool isGlobal)=0
 
virtual G4String GetName () const
 
virtual void GetBoundaryParameters (const G4int &areacode, G4ThreeVector &d, G4ThreeVector &x0, G4int &boundarytype) const
 
virtual G4ThreeVector GetBoundaryAtPZ (G4int areacode, const G4ThreeVector &p) const
 
G4double DistanceToPlaneWithV (const G4ThreeVector &p, const G4ThreeVector &v, const G4ThreeVector &x0, const G4ThreeVector &n0, G4ThreeVector &xx)
 
G4double DistanceToPlane (const G4ThreeVector &p, const G4ThreeVector &x0, const G4ThreeVector &n0, G4ThreeVector &xx)
 
G4double DistanceToPlane (const G4ThreeVector &p, const G4ThreeVector &x0, const G4ThreeVector &t1, const G4ThreeVector &t2, G4ThreeVector &xx, G4ThreeVector &n)
 
G4double DistanceToLine (const G4ThreeVector &p, const G4ThreeVector &x0, const G4ThreeVector &d, G4ThreeVector &xx)
 
G4bool IsAxis0 (G4int areacode) const
 
G4bool IsAxis1 (G4int areacode) const
 
G4bool IsOutside (G4int areacode) const
 
G4bool IsInside (G4int areacode, G4bool testbitmode=false) const
 
G4bool IsBoundary (G4int areacode, G4bool testbitmode=false) const
 
G4bool IsCorner (G4int areacode, G4bool testbitmode=false) const
 
G4bool IsValidNorm () const
 
G4bool IsSameBoundary (G4VTwistSurface *surface1, G4int areacode1, G4VTwistSurface *surface2, G4int areacode2) const
 
G4int GetAxisType (G4int areacode, G4int whichaxis) const
 
G4ThreeVector ComputeGlobalPoint (const G4ThreeVector &lp) const
 
G4ThreeVector ComputeLocalPoint (const G4ThreeVector &gp) const
 
G4ThreeVector ComputeGlobalDirection (const G4ThreeVector &lp) const
 
G4ThreeVector ComputeLocalDirection (const G4ThreeVector &gp) const
 
void SetAxis (G4int i, const EAxis axis)
 
void SetNeighbours (G4VTwistSurface *axis0min, G4VTwistSurface *axis1min, G4VTwistSurface *axis0max, G4VTwistSurface *axis1max)
 
virtual G4ThreeVector SurfacePoint (G4double, G4double, G4bool isGlobal=false)=0
 
virtual G4double GetBoundaryMin (G4double)=0
 
virtual G4double GetBoundaryMax (G4double)=0
 
virtual G4double GetSurfaceArea ()=0
 
virtual void GetFacets (G4int m, G4int n, G4double xyz[][3], G4int faces[][4], G4int iside)=0
 
G4int GetNode (G4int i, G4int j, G4int m, G4int n, G4int iside)
 
G4int GetFace (G4int i, G4int j, G4int m, G4int n, G4int iside)
 
G4int GetEdgeVisibility (G4int i, G4int j, G4int m, G4int n, G4int number, G4int orientation)
 
 G4VTwistSurface (__void__ &)
 

정적 Public 속성

static const G4int sOutside = 0x00000000
 
static const G4int sInside = 0x10000000
 
static const G4int sBoundary = 0x20000000
 
static const G4int sCorner = 0x40000000
 
static const G4int sC0Min1Min = 0x40000101
 
static const G4int sC0Max1Min = 0x40000201
 
static const G4int sC0Max1Max = 0x40000202
 
static const G4int sC0Min1Max = 0x40000102
 
static const G4int sAxisMin = 0x00000101
 
static const G4int sAxisMax = 0x00000202
 
static const G4int sAxisX = 0x00000404
 
static const G4int sAxisY = 0x00000808
 
static const G4int sAxisZ = 0x00000C0C
 
static const G4int sAxisRho = 0x00001010
 
static const G4int sAxisPhi = 0x00001414
 
static const G4int sAxis0 = 0x0000FF00
 
static const G4int sAxis1 = 0x000000FF
 
static const G4int sSizeMask = 0x00000303
 
static const G4int sAxisMask = 0x0000FCFC
 
static const G4int sAreaMask = 0XF0000000
 

Protected 멤버 함수

G4VTwistSurface ** GetNeighbours ()
 
G4int GetNeighbours (G4int areacode, G4VTwistSurface *surfaces[])
 
G4ThreeVector GetCorner (G4int areacode) const
 
void GetBoundaryAxis (G4int areacode, EAxis axis[]) const
 
void GetBoundaryLimit (G4int areacode, G4double limit[]) const
 
virtual G4int GetAreaCode (const G4ThreeVector &xx, G4bool withtol=true)=0
 
virtual void SetBoundary (const G4int &axiscode, const G4ThreeVector &direction, const G4ThreeVector &x0, const G4int &boundarytype)
 
void SetCorner (G4int areacode, G4double x, G4double y, G4double z)
 

Protected 속성

EAxis fAxis [2]
 
G4double fAxisMin [2]
 
G4double fAxisMax [2]
 
CurrentStatus fCurStatWithV
 
CurrentStatus fCurStat
 
G4RotationMatrix fRot
 
G4ThreeVector fTrans
 
G4int fHandedness
 
G4SurfCurNormal fCurrentNormal
 
G4bool fIsValidNorm
 
G4double kCarTolerance
 

Private 멤버 함수

virtual void SetBoundaries ()=0
 
virtual void SetCorners ()=0
 

Private 속성

G4VTwistSurfacefNeighbours [4]
 
G4ThreeVector fCorners [4]
 
Boundary fBoundaries [4]
 
G4String fName
 
G4SurfSideQuery fAmIOnLeftSide
 

상세한 설명

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

멤버 열거형 문서화

열거형 멤버
kDontValidate 
kValidateWithTol 
kValidateWithoutTol 
kUninitialized 

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

생성자 & 소멸자 문서화

G4VTwistSurface::G4VTwistSurface ( const G4String name)
G4VTwistSurface::G4VTwistSurface ( const G4String name,
const G4RotationMatrix rot,
const G4ThreeVector tlate,
G4int  handedness,
const EAxis  axis1,
const EAxis  axis2,
G4double  axis0min = -kInfinity,
G4double  axis1min = -kInfinity,
G4double  axis0max = kInfinity,
G4double  axis1max = kInfinity 
)
G4VTwistSurface::~G4VTwistSurface ( )
virtual

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

G4VTwistSurface::G4VTwistSurface ( __void__ &  )

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

다음을 참조함 : fAxis, fAxisMax, fAxisMin, fNeighbours, kXAxis.

멤버 함수 문서화

G4int G4VTwistSurface::AmIOnLeftSide ( const G4ThreeVector me,
const G4ThreeVector vec,
G4bool  withTol = true 
)
virtual
G4ThreeVector G4VTwistSurface::ComputeGlobalDirection ( const G4ThreeVector lp) const
inline
G4ThreeVector G4VTwistSurface::ComputeGlobalPoint ( const G4ThreeVector lp) const
inline
G4ThreeVector G4VTwistSurface::ComputeLocalDirection ( const G4ThreeVector gp) const
inline
G4ThreeVector G4VTwistSurface::ComputeLocalPoint ( const G4ThreeVector gp) const
inline
void G4VTwistSurface::DebugPrint ( ) const

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

다음을 참조함 : A(), B(), C(), D(), fAxis, fAxisMax, fAxisMin, fName, fRot, fTrans, G4cout, G4endl, GetCorner(), sC0Max1Max, sC0Max1Min, sC0Min1Max, sC0Min1Min.

G4double G4VTwistSurface::DistanceTo ( const G4ThreeVector gp,
G4ThreeVector gxx 
)
virtual
G4double G4VTwistSurface::DistanceToBoundary ( G4int  areacode,
G4ThreeVector xx,
const G4ThreeVector p 
)
virtual
G4double G4VTwistSurface::DistanceToIn ( const G4ThreeVector gp,
const G4ThreeVector gv,
G4ThreeVector gxxbest 
)
virtual
G4double G4VTwistSurface::DistanceToLine ( const G4ThreeVector p,
const G4ThreeVector x0,
const G4ThreeVector d,
G4ThreeVector xx 
)
inline
G4double G4VTwistSurface::DistanceToOut ( const G4ThreeVector gp,
const G4ThreeVector gv,
G4ThreeVector gxxbest 
)
virtual

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

다음을 참조함 : DistanceToSurface(), fName, G4cout, G4endl, G4VSURFACENXX, GetNormal(), kInfinity, kValidateWithTol, CLHEP::normal(), sOutside.

다음에 의해서 참조됨 : G4VTwistedFaceted::DistanceToOut(), G4TwistedTubs::DistanceToOut().

G4double G4VTwistSurface::DistanceToPlane ( const G4ThreeVector p,
const G4ThreeVector x0,
const G4ThreeVector n0,
G4ThreeVector xx 
)
inline
G4double G4VTwistSurface::DistanceToPlane ( const G4ThreeVector p,
const G4ThreeVector x0,
const G4ThreeVector t1,
const G4ThreeVector t2,
G4ThreeVector xx,
G4ThreeVector n 
)
inline
G4double G4VTwistSurface::DistanceToPlaneWithV ( const G4ThreeVector p,
const G4ThreeVector v,
const G4ThreeVector x0,
const G4ThreeVector n0,
G4ThreeVector xx 
)
inline
virtual G4int G4VTwistSurface::DistanceToSurface ( const G4ThreeVector gp,
const G4ThreeVector gv,
G4ThreeVector  gxx[],
G4double  distance[],
G4int  areacode[],
G4bool  isvalid[],
EValidate  validate = kValidateWithTol 
)
pure virtual
virtual G4int G4VTwistSurface::DistanceToSurface ( const G4ThreeVector gp,
G4ThreeVector  gxx[],
G4double  distance[],
G4int  areacode[] 
)
pure virtual
virtual G4int G4VTwistSurface::GetAreaCode ( const G4ThreeVector xx,
G4bool  withtol = true 
)
protectedpure virtual
G4int G4VTwistSurface::GetAxisType ( G4int  areacode,
G4int  whichaxis 
) const
inline
G4ThreeVector G4VTwistSurface::GetBoundaryAtPZ ( G4int  areacode,
const G4ThreeVector p 
) const
virtual
void G4VTwistSurface::GetBoundaryAxis ( G4int  areacode,
EAxis  axis[] 
) const
protected

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

다음을 참조함 : FatalException, G4endl, G4Exception(), kPhi, kRho, kXAxis, kYAxis, kZAxis, message(), sAxis0, sAxis1, sAxisMask, sAxisPhi, sAxisRho, sAxisX, sAxisY, sAxisZ, sBoundary.

void G4VTwistSurface::GetBoundaryLimit ( G4int  areacode,
G4double  limit[] 
) const
protected

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

다음을 참조함 : fAxisMax, fAxisMin, G4endl, G4Exception(), JustWarning, message(), sAxis0, sAxis1, sAxisMax, sAxisMin, sBoundary, sC0Max1Max, sC0Max1Min, sC0Min1Max, sC0Min1Min, sCorner.

virtual G4double G4VTwistSurface::GetBoundaryMax ( G4double  )
pure virtual
virtual G4double G4VTwistSurface::GetBoundaryMin ( G4double  )
pure virtual
void G4VTwistSurface::GetBoundaryParameters ( const G4int areacode,
G4ThreeVector d,
G4ThreeVector x0,
G4int boundarytype 
) const
virtual

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

다음을 참조함 : FatalException, fBoundaries, G4endl, G4Exception(), message().

다음에 의해서 참조됨 : DistanceToBoundary(), G4TwistTubsSide::DistanceToSurface(), GetBoundaryAtPZ(), IsSameBoundary().

G4ThreeVector G4VTwistSurface::GetCorner ( G4int  areacode) const
inlineprotected
G4int G4VTwistSurface::GetEdgeVisibility ( G4int  i,
G4int  j,
G4int  m,
G4int  n,
G4int  number,
G4int  orientation 
)
G4int G4VTwistSurface::GetFace ( G4int  i,
G4int  j,
G4int  m,
G4int  n,
G4int  iside 
)
virtual void G4VTwistSurface::GetFacets ( G4int  m,
G4int  n,
G4double  xyz[][3],
G4int  faces[][4],
G4int  iside 
)
pure virtual
virtual G4String G4VTwistSurface::GetName ( void  ) const
inlinevirtual
G4VTwistSurface** G4VTwistSurface::GetNeighbours ( )
inlineprotected

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

다음을 참조함 : fNeighbours.

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

G4int G4VTwistSurface::GetNeighbours ( G4int  areacode,
G4VTwistSurface surfaces[] 
)
inlineprotected
G4int G4VTwistSurface::GetNode ( G4int  i,
G4int  j,
G4int  m,
G4int  n,
G4int  iside 
)
virtual G4ThreeVector G4VTwistSurface::GetNormal ( const G4ThreeVector xx,
G4bool  isGlobal 
)
pure virtual
virtual G4double G4VTwistSurface::GetSurfaceArea ( )
pure virtual
G4bool G4VTwistSurface::IsAxis0 ( G4int  areacode) const
inline

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

G4bool G4VTwistSurface::IsAxis1 ( G4int  areacode) const
inline

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

G4bool G4VTwistSurface::IsBoundary ( G4int  areacode,
G4bool  testbitmode = false 
) const
inline

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

G4bool G4VTwistSurface::IsCorner ( G4int  areacode,
G4bool  testbitmode = false 
) const
inline

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

G4bool G4VTwistSurface::IsInside ( G4int  areacode,
G4bool  testbitmode = false 
) const
inline
G4bool G4VTwistSurface::IsOutside ( G4int  areacode) const
inline
G4bool G4VTwistSurface::IsSameBoundary ( G4VTwistSurface surface1,
G4int  areacode1,
G4VTwistSurface surface2,
G4int  areacode2 
) const

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

다음을 참조함 : ComputeGlobalDirection(), ComputeGlobalPoint(), d1, d2, GetBoundaryParameters(), GetCorner(), IsBoundary(), IsCorner(), kCarTolerance.

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

G4bool G4VTwistSurface::IsValidNorm ( ) const
inline

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

다음을 참조함 : fIsValidNorm.

다음에 의해서 참조됨 : G4VTwistedFaceted::DistanceToOut(), G4TwistedTubs::DistanceToOut().

void G4VTwistSurface::SetAxis ( G4int  i,
const EAxis  axis 
)
inline

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

다음을 참조함 : fAxis.

virtual void G4VTwistSurface::SetBoundaries ( )
privatepure virtual
void G4VTwistSurface::SetBoundary ( const G4int axiscode,
const G4ThreeVector direction,
const G4ThreeVector x0,
const G4int boundarytype 
)
protectedvirtual
void G4VTwistSurface::SetCorner ( G4int  areacode,
G4double  x,
G4double  y,
G4double  z 
)
protected
virtual void G4VTwistSurface::SetCorners ( )
privatepure virtual
void G4VTwistSurface::SetNeighbours ( G4VTwistSurface axis0min,
G4VTwistSurface axis1min,
G4VTwistSurface axis0max,
G4VTwistSurface axis1max 
)
inline
virtual G4ThreeVector G4VTwistSurface::SurfacePoint ( G4double  ,
G4double  ,
G4bool  isGlobal = false 
)
pure virtual

멤버 데이타 문서화

G4SurfSideQuery G4VTwistSurface::fAmIOnLeftSide
private

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

다음에 의해서 참조됨 : AmIOnLeftSide(), G4VTwistSurface().

EAxis G4VTwistSurface::fAxis[2]
protected
G4double G4VTwistSurface::fAxisMax[2]
protected
G4double G4VTwistSurface::fAxisMin[2]
protected
Boundary G4VTwistSurface::fBoundaries[4]
private

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

다음에 의해서 참조됨 : GetBoundaryAtPZ(), GetBoundaryParameters(), SetBoundary().

G4ThreeVector G4VTwistSurface::fCorners[4]
private

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

다음에 의해서 참조됨 : G4VTwistSurface(), SetCorner().

G4SurfCurNormal G4VTwistSurface::fCurrentNormal
protected
CurrentStatus G4VTwistSurface::fCurStat
protected
CurrentStatus G4VTwistSurface::fCurStatWithV
protected
G4int G4VTwistSurface::fHandedness
protected
G4bool G4VTwistSurface::fIsValidNorm
protected
G4String G4VTwistSurface::fName
private

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

다음에 의해서 참조됨 : AmIOnLeftSide(), DebugPrint(), DistanceTo(), DistanceToIn(), DistanceToOut(), GetName().

G4VTwistSurface* G4VTwistSurface::fNeighbours[4]
private

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

다음에 의해서 참조됨 : G4VTwistSurface(), GetNeighbours().

G4RotationMatrix G4VTwistSurface::fRot
protected
G4ThreeVector G4VTwistSurface::fTrans
protected
G4double G4VTwistSurface::kCarTolerance
protected
const G4int G4VTwistSurface::sAreaMask = 0XF0000000
static

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

const G4int G4VTwistSurface::sAxis0 = 0x0000FF00
static
const G4int G4VTwistSurface::sAxis1 = 0x000000FF
static
const G4int G4VTwistSurface::sAxisMask = 0x0000FCFC
static

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

다음에 의해서 참조됨 : GetBoundaryAxis(), SetBoundary().

const G4int G4VTwistSurface::sAxisMax = 0x00000202
static
const G4int G4VTwistSurface::sAxisMin = 0x00000101
static
const G4int G4VTwistSurface::sAxisPhi = 0x00001414
static
const G4int G4VTwistSurface::sAxisRho = 0x00001010
static

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

다음에 의해서 참조됨 : G4TwistTubsFlatSide::GetAreaCode(), GetBoundaryAtPZ(), GetBoundaryAxis(), G4TwistTubsFlatSide::SetBoundaries().

const G4int G4VTwistSurface::sAxisX = 0x00000404
static
const G4int G4VTwistSurface::sAxisY = 0x00000808
static
const G4int G4VTwistSurface::sAxisZ = 0x00000C0C
static
const G4int G4VTwistSurface::sBoundary = 0x20000000
static
const G4int G4VTwistSurface::sC0Max1Max = 0x40000202
static
const G4int G4VTwistSurface::sC0Max1Min = 0x40000201
static
const G4int G4VTwistSurface::sC0Min1Max = 0x40000102
static
const G4int G4VTwistSurface::sC0Min1Min = 0x40000101
static
const G4int G4VTwistSurface::sCorner = 0x40000000
static
const G4int G4VTwistSurface::sInside = 0x10000000
static
const G4int G4VTwistSurface::sOutside = 0x00000000
static
const G4int G4VTwistSurface::sSizeMask = 0x00000303
static

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

다음에 의해서 참조됨 : G4VTwistSurface::Boundary::GetBoundaryParameters().


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