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

#include <G4BoundingEnvelope.hh>

Public 멤버 함수

 G4BoundingEnvelope (const G4ThreeVector &pMin, const G4ThreeVector &pMax)
 
 G4BoundingEnvelope (const std::vector< const G4ThreeVectorList * > &polygons)
 
 G4BoundingEnvelope (const G4ThreeVector &pMin, const G4ThreeVector &pMax, const std::vector< const G4ThreeVectorList * > &polygons)
 
 ~G4BoundingEnvelope ()
 
G4bool BoundingBoxVsVoxelLimits (const EAxis pAxis, const G4VoxelLimits &pVoxelLimits, const G4Transform3D &pTransform3D, G4double &pMin, G4double &pMax) const
 
G4bool CalculateExtent (const EAxis pAxis, const G4VoxelLimits &pVoxelLimits, const G4Transform3D &pTransform3D, G4double &pMin, G4double &pMax) const
 

Private 멤버 함수

void CheckBoundingBox ()
 
void CheckBoundingPolygons ()
 
G4double FindScaleFactor (const G4Transform3D &pTransform3D) const
 
void TransformVertices (const G4Transform3D &pTransform3D, std::vector< G4Polygon3D * > &pBases) const
 
void GetPrismAABB (const G4Polygon3D &pBaseA, const G4Polygon3D &pBaseB, G4Segment3D &pAABB) const
 
void CreateListOfEdges (const G4Polygon3D &baseA, const G4Polygon3D &baseB, std::vector< G4Segment3D > &pEdges) const
 
void CreateListOfPlanes (const G4Polygon3D &baseA, const G4Polygon3D &baseB, std::vector< G4Plane3D > &pPlanes) const
 
G4bool ClipEdgesByVoxel (const std::vector< G4Segment3D > &pEdges, const G4VoxelLimits &pLimits, G4Segment3D &pExtent) const
 
void ClipVoxelByPlanes (G4int pBits, const G4VoxelLimits &pLimits, const std::vector< G4Plane3D > &pPlanes, const G4Segment3D &pAABB, G4Segment3D &pExtent) const
 

Private 속성

G4ThreeVector fMin
 
G4ThreeVector fMax
 
const std::vector< const
G4ThreeVectorList * > * 
fPolygons
 

상세한 설명

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

생성자 & 소멸자 문서화

G4BoundingEnvelope::G4BoundingEnvelope ( const G4ThreeVector pMin,
const G4ThreeVector pMax 
)

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

다음을 참조함 : CheckBoundingBox().

G4BoundingEnvelope::G4BoundingEnvelope ( const std::vector< const G4ThreeVectorList * > &  polygons)

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

다음을 참조함 : CheckBoundingBox(), CheckBoundingPolygons(), fMax, fMin, fPolygons, kInfinity, CLHEP::Hep3Vector::set(), x, y, ymax, ymin, z.

G4BoundingEnvelope::G4BoundingEnvelope ( const G4ThreeVector pMin,
const G4ThreeVector pMax,
const std::vector< const G4ThreeVectorList * > &  polygons 
)

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

다음을 참조함 : CheckBoundingBox(), CheckBoundingPolygons().

G4BoundingEnvelope::~G4BoundingEnvelope ( )

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

멤버 함수 문서화

G4bool G4BoundingEnvelope::BoundingBoxVsVoxelLimits ( const EAxis  pAxis,
const G4VoxelLimits pVoxelLimits,
const G4Transform3D pTransform3D,
G4double pMin,
G4double pMax 
) const
G4bool G4BoundingEnvelope::CalculateExtent ( const EAxis  pAxis,
const G4VoxelLimits pVoxelLimits,
const G4Transform3D pTransform3D,
G4double pMin,
G4double pMax 
) const

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

다음을 참조함 : G4VoxelLimits::AddLimit(), cd, ClipEdgesByVoxel(), ClipVoxelByPlanes(), CreateListOfEdges(), CreateListOfPlanes(), HepGeom::Transform3D::dx(), HepGeom::Transform3D::dy(), HepGeom::Transform3D::dz(), emax, FindScaleFactor(), fMax, fMin, fPolygons, G4VoxelLimits::GetMaxExtent(), G4VoxelLimits::GetMaxXExtent(), G4VoxelLimits::GetMaxYExtent(), G4VoxelLimits::GetMaxZExtent(), G4VoxelLimits::GetMinExtent(), G4VoxelLimits::GetMinXExtent(), G4VoxelLimits::GetMinYExtent(), G4VoxelLimits::GetMinZExtent(), GetPrismAABB(), G4VoxelLimits::IsLimited(), kCarTolerance, kInfinity, kXAxis, kYAxis, kZAxis, radius, scale, TransformVertices(), CLHEP::Hep3Vector::x(), HepGeom::BasicVector3D< T >::x(), HepGeom::Transform3D::xx(), HepGeom::Transform3D::xy(), HepGeom::Transform3D::xz(), CLHEP::Hep3Vector::y(), HepGeom::BasicVector3D< T >::y(), ymax, ymin, HepGeom::Transform3D::yx(), HepGeom::Transform3D::yy(), HepGeom::Transform3D::yz(), CLHEP::Hep3Vector::z(), HepGeom::BasicVector3D< T >::z(), HepGeom::Transform3D::zx(), HepGeom::Transform3D::zy(), HepGeom::Transform3D::zz().

다음에 의해서 참조됨 : G4ScaledSolid::CalculateExtent(), G4EllipticalTube::CalculateExtent(), G4Box::CalculateExtent(), G4VTwistedFaceted::CalculateExtent(), G4Tet::CalculateExtent(), G4Orb::CalculateExtent(), G4Ellipsoid::CalculateExtent(), G4GenericPolycone::CalculateExtent(), G4Hype::CalculateExtent(), G4Paraboloid::CalculateExtent(), G4CutTubs::CalculateExtent(), G4TwistedTubs::CalculateExtent(), G4Polycone::CalculateExtent(), G4Polyhedra::CalculateExtent(), G4EllipticalCone::CalculateExtent(), G4Trd::CalculateExtent(), G4MultiUnion::CalculateExtent(), G4GenericTrap::CalculateExtent(), G4Para::CalculateExtent(), G4Tubs::CalculateExtent(), G4Cons::CalculateExtent(), G4Torus::CalculateExtent(), G4ExtrudedSolid::CalculateExtent(), G4Sphere::CalculateExtent(), G4TessellatedSolid::CalculateExtent(), G4Trap::CalculateExtent().

void G4BoundingEnvelope::CheckBoundingBox ( )
private

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

다음을 참조함 : fMax, fMin, G4Exception(), JustWarning, message(), CLHEP::Hep3Vector::x(), CLHEP::Hep3Vector::y(), CLHEP::Hep3Vector::z().

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

void G4BoundingEnvelope::CheckBoundingPolygons ( )
private

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

다음을 참조함 : FatalException, fPolygons, G4Exception(), G4INCL::Math::max(), message().

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

G4bool G4BoundingEnvelope::ClipEdgesByVoxel ( const std::vector< G4Segment3D > &  pEdges,
const G4VoxelLimits pLimits,
G4Segment3D pExtent 
) const
private
void G4BoundingEnvelope::ClipVoxelByPlanes ( G4int  pBits,
const G4VoxelLimits pLimits,
const std::vector< G4Plane3D > &  pPlanes,
const G4Segment3D pAABB,
G4Segment3D pExtent 
) const
private
void G4BoundingEnvelope::CreateListOfEdges ( const G4Polygon3D baseA,
const G4Polygon3D baseB,
std::vector< G4Segment3D > &  pEdges 
) const
private

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

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

void G4BoundingEnvelope::CreateListOfPlanes ( const G4Polygon3D baseA,
const G4Polygon3D baseB,
std::vector< G4Plane3D > &  pPlanes 
) const
private

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

다음을 참조함 : a, d, kCarTolerance, HepGeom::BasicVector3D< T >::mag2(), norm.

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

G4double G4BoundingEnvelope::FindScaleFactor ( const G4Transform3D pTransform3D) const
private
void G4BoundingEnvelope::GetPrismAABB ( const G4Polygon3D pBaseA,
const G4Polygon3D pBaseB,
G4Segment3D pAABB 
) const
private

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

다음을 참조함 : kInfinity, x, y, ymax, ymin, z.

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

void G4BoundingEnvelope::TransformVertices ( const G4Transform3D pTransform3D,
std::vector< G4Polygon3D * > &  pBases 
) const
private

멤버 데이타 문서화

G4ThreeVector G4BoundingEnvelope::fMax
private

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

다음에 의해서 참조됨 : BoundingBoxVsVoxelLimits(), CalculateExtent(), CheckBoundingBox(), G4BoundingEnvelope(), TransformVertices().

G4ThreeVector G4BoundingEnvelope::fMin
private

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

다음에 의해서 참조됨 : BoundingBoxVsVoxelLimits(), CalculateExtent(), CheckBoundingBox(), G4BoundingEnvelope(), TransformVertices().

const std::vector<const G4ThreeVectorList*>* G4BoundingEnvelope::fPolygons
private

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

다음에 의해서 참조됨 : CalculateExtent(), CheckBoundingPolygons(), G4BoundingEnvelope(), TransformVertices().


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