#include <HepPolyhedron.h>
정적 Public 멤버 함수 | |
static G4int | GetNumberOfRotationSteps () |
static void | SetNumberOfRotationSteps (G4int n) |
static void | ResetNumberOfRotationSteps () |
Protected 멤버 함수 | |
void | AllocateMemory (G4int Nvert, G4int Nface) |
G4int | FindNeighbour (G4int iFace, G4int iNode, G4int iOrder) const |
G4Normal3D | FindNodeNormal (G4int iFace, G4int iNode) const |
void | CreatePrism () |
void | RotateEdge (G4int k1, G4int k2, G4double r1, G4double r2, G4int v1, G4int v2, G4int vEdge, G4bool ifWholeCircle, G4int ns, G4int &kface) |
void | SetSideFacets (G4int ii[4], G4int vv[4], G4int *kk, G4double *r, G4double dphi, G4int ns, G4int &kface) |
void | RotateAroundZ (G4int nstep, G4double phi, G4double dphi, G4int np1, G4int np2, const G4double *z, G4double *r, G4int nodeVis, G4int edgeVis) |
void | SetReferences () |
void | InvertFacets () |
Protected 속성 | |
G4int | nvert |
G4int | nface |
G4Point3D * | pV |
G4Facet * | pF |
정적 Protected 속성 | |
static G4ThreadLocal G4int | fNumberOfRotationSteps = DEFAULT_NUMBER_OF_STEPS |
Friends | |
std::ostream & | operator<< (std::ostream &, const HepPolyhedron &ph) |
HepPolyhedron.h 파일의 195 번째 라인에서 정의되었습니다.
|
inline |
HepPolyhedron.h 파일의 240 번째 라인에서 정의되었습니다.
HepPolyhedron::HepPolyhedron | ( | const HepPolyhedron & | from | ) |
HepPolyhedron.cc 파일의 108 번째 라인에서 정의되었습니다.
|
inlinevirtual |
HepPolyhedron.h 파일의 246 번째 라인에서 정의되었습니다.
HepPolyhedron HepPolyhedron::add | ( | const HepPolyhedron & | p | ) | const |
HepPolyhedron.cc 파일의 2275 번째 라인에서 정의되었습니다.
다음을 참조함 : processor.
HepPolyhedron.cc 파일의 245 번째 라인에서 정의되었습니다.
다음을 참조함 : nface, nvert, pF, pV.
다음에 의해서 참조됨 : createPolyhedron(), createTwistedTrap(), G4PolyhedronArbitrary::G4PolyhedronArbitrary(), HepPolyhedron(), HepPolyhedronTrap::HepPolyhedronTrap(), HepPolyhedronTrd2::HepPolyhedronTrd2(), operator=(), RotateAroundZ().
G4int HepPolyhedron::createPolyhedron | ( | G4int | Nnodes, |
G4int | Nfaces, | ||
const G4double | xyz[][3], | ||
const G4int | faces[][4] | ||
) |
Creates user defined polyhedron. This function allows to the user to define arbitrary polyhedron. The faces of the polyhedron should be either triangles or planar quadrilateral. Nodes of a face are defined by indexes pointing to the elements in the xyz array. Numeration of the elements in the array starts from 1 (like in fortran). The indexes can be positive or negative. Negative sign means that the corresponding edge is invisible. The normal of the face should be directed to exterior of the polyhedron.
Nnodes | number of nodes |
Nfaces | number of faces |
xyz | nodes |
faces | faces (quadrilaterals or triangles) |
HepPolyhedron.cc 파일의 1371 번째 라인에서 정의되었습니다.
다음을 참조함 : AllocateMemory(), nvert, pF, pV, SetReferences().
다음에 의해서 참조됨 : G4GenericPolycone::CreatePolyhedron(), G4VTwistedFaceted::CreatePolyhedron(), G4Tet::CreatePolyhedron(), G4Polyhedra::CreatePolyhedron(), G4TwistedTubs::CreatePolyhedron(), G4CutTubs::CreatePolyhedron().
|
protected |
HepPolyhedron.cc 파일의 271 번째 라인에서 정의되었습니다.
다음을 참조함 : pF.
다음에 의해서 참조됨 : HepPolyhedronTrap::HepPolyhedronTrap(), HepPolyhedronTrd2::HepPolyhedronTrd2().
G4int HepPolyhedron::createTwistedTrap | ( | G4double | Dz, |
const G4double | xy1[][2], | ||
const G4double | xy2[][2] | ||
) |
Creates polyhedron for twisted trapezoid. The trapezoid is given by two bases perpendicular to the z-axis.
Dz | half length in z |
xy1 | 1st base (at z = -Dz) |
xy2 | 2nd base (at z = +Dz) |
HepPolyhedron.cc 파일의 1302 번째 라인에서 정의되었습니다.
다음을 참조함 : AllocateMemory(), pF, pV.
HepPolyhedron.cc 파일의 141 번째 라인에서 정의되었습니다.
|
protected |
HepPolyhedron.cc 파일의 169 번째 라인에서 정의되었습니다.
다음을 참조함 : n, CLHEP::normal(), HepGeom::BasicVector3D< T >::unit().
void HepPolyhedron::GetFacet | ( | G4int | iFace, |
G4int & | n, | ||
G4int * | iNodes, | ||
G4int * | edgeFlags = 0 , |
||
G4int * | iFaces = 0 |
||
) | const |
HepPolyhedron.cc 파일의 1078 번째 라인에서 정의되었습니다.
다음을 참조함 : n.
다음에 의해서 참조됨 : G4CutTubs::CreatePolyhedron().
void HepPolyhedron::GetFacet | ( | G4int | iFace, |
G4int & | n, | ||
G4Point3D * | nodes, | ||
G4int * | edgeFlags = 0 , |
||
G4Normal3D * | normals = 0 |
||
) | const |
HepPolyhedron.cc 파일의 1112 번째 라인에서 정의되었습니다.
다음을 참조함 : n.
HepPolyhedron.cc 파일의 1037 번째 라인에서 정의되었습니다.
다음에 의해서 참조됨 : G4GMocrenFileSceneHandler::AddSolid(), PerspectiveVisAction::ExtendedDraw(), G4GMocrenFileSceneHandler::ExtractDetector().
G4bool HepPolyhedron::GetNextEdge | ( | G4Point3D & | p1, |
G4Point3D & | p2, | ||
G4int & | edgeFlag, | ||
G4int & | iface1, | ||
G4int & | iface2 | ||
) | const |
HepPolyhedron.cc 파일의 1058 번째 라인에서 정의되었습니다.
|
inline |
HepPolyhedron.h 파일의 277 번째 라인에서 정의되었습니다.
다음을 참조함 : GetNextEdgeIndices().
HepPolyhedron.h 파일의 283 번째 라인에서 정의되었습니다.
다음을 참조함 : GetNextEdgeIndices().
G4bool HepPolyhedron::GetNextEdgeIndices | ( | G4int & | i1, |
G4int & | i2, | ||
G4int & | edgeFlag, | ||
G4int & | iface1, | ||
G4int & | iface2 | ||
) | const |
HepPolyhedron.cc 파일의 968 번째 라인에서 정의되었습니다.
다음을 참조함 : G4ThreadLocal.
다음에 의해서 참조됨 : GetNextEdgeIndeces().
HepPolyhedron.cc 파일의 1021 번째 라인에서 정의되었습니다.
G4bool HepPolyhedron::GetNextFacet | ( | G4int & | n, |
G4Point3D * | nodes, | ||
G4int * | edgeFlags = 0 , |
||
G4Normal3D * | normals = 0 |
||
) | const |
HepPolyhedron.cc 파일의 1134 번째 라인에서 정의되었습니다.
다음을 참조함 : G4ThreadLocal, n.
다음에 의해서 참조됨 : PerspectiveVisAction::ExtendedDraw().
G4bool HepPolyhedron::GetNextNormal | ( | G4Normal3D & | normal | ) | const |
HepPolyhedron.cc 파일의 1214 번째 라인에서 정의되었습니다.
다음을 참조함 : G4ThreadLocal, CLHEP::normal().
다음에 의해서 참조됨 : G4HepRepSceneHandler::AddPrimitive(), G4HepRepFileSceneHandler::AddPrimitive().
G4bool HepPolyhedron::GetNextUnitNormal | ( | G4Normal3D & | normal | ) | const |
HepPolyhedron.cc 파일의 1235 번째 라인에서 정의되었습니다.
다음을 참조함 : CLHEP::normal().
HepPolyhedron.cc 파일의 918 번째 라인에서 정의되었습니다.
다음에 의해서 참조됨 : G4HepRepSceneHandler::AddPrimitive(), G4HepRepFileSceneHandler::AddPrimitive().
G4bool HepPolyhedron::GetNextVertex | ( | G4Point3D & | vertex, |
G4int & | edgeFlag, | ||
G4Normal3D & | normal | ||
) | const |
HepPolyhedron.cc 파일의 936 번째 라인에서 정의되었습니다.
다음을 참조함 : G4ThreadLocal, CLHEP::normal().
HepPolyhedron.cc 파일의 871 번째 라인에서 정의되었습니다.
다음을 참조함 : G4ThreadLocal.
다음에 의해서 참조됨 : G4GMocrenFileSceneHandler::AddPrimitive().
|
inline |
HepPolyhedron.h 파일의 256 번째 라인에서 정의되었습니다.
다음을 참조함 : nface.
다음에 의해서 참조됨 : G4XXXSceneHandler::AddPrimitive(), G4GMocrenFileSceneHandler::AddPrimitive(), G4HepRepSceneHandler::AddPrimitive(), G4HepRepFileSceneHandler::AddPrimitive(), G4CutTubs::CreatePolyhedron().
G4Normal3D HepPolyhedron::GetNormal | ( | G4int | iFace | ) | const |
HepPolyhedron.cc 파일의 1164 번째 라인에서 정의되었습니다.
|
inline |
HepPolyhedron.h 파일의 253 번째 라인에서 정의되었습니다.
다음을 참조함 : nvert.
|
inline |
HepPolyhedron.h 파일의 252 번째 라인에서 정의되었습니다.
다음을 참조함 : nvert.
다음에 의해서 참조됨 : G4GMocrenFileSceneHandler::AddSolid(), G4CutTubs::CreatePolyhedron().
|
static |
HepPolyhedron.cc 파일의 197 번째 라인에서 정의되었습니다.
다음을 참조함 : fNumberOfRotationSteps.
다음에 의해서 참조됨 : G4GenericPolycone::CreatePolyhedron(), G4VTwistedFaceted::CreatePolyhedron(), G4TwistedTubs::CreatePolyhedron(), G4ArrowModel::G4ArrowModel(), G4CSGSolid::GetPolyhedron(), G4BooleanSolid::GetPolyhedron(), G4VCSGfaceted::GetPolyhedron(), G4EllipticalTube::GetPolyhedron(), G4VTwistedFaceted::GetPolyhedron(), G4Ellipsoid::GetPolyhedron(), G4ScaledSolid::GetPolyhedron(), G4Tet::GetPolyhedron(), G4ReflectedSolid::GetPolyhedron(), G4TwistedTubs::GetPolyhedron(), G4Paraboloid::GetPolyhedron(), G4Hype::GetPolyhedron(), G4GenericTrap::GetPolyhedron(), G4MultiUnion::GetPolyhedron(), G4EllipticalCone::GetPolyhedron(), G4DisplacedSolid::GetPolyhedron(), G4TessellatedSolid::GetPolyhedron(), HepPolyhedronEllipsoid::HepPolyhedronEllipsoid(), HepPolyhedronHype::HepPolyhedronHype(), HepPolyhedronParaboloid::HepPolyhedronParaboloid(), HepPolyhedronSphere::HepPolyhedronSphere(), HepPolyhedronTorus::HepPolyhedronTorus(), RotateAroundZ().
G4double HepPolyhedron::GetSurfaceArea | ( | ) | const |
HepPolyhedron.cc 파일의 1251 번째 라인에서 정의되었습니다.
G4Normal3D HepPolyhedron::GetUnitNormal | ( | G4int | iFace | ) | const |
HepPolyhedron.cc 파일의 1189 번째 라인에서 정의되었습니다.
HepPolyhedron.cc 파일의 898 번째 라인에서 정의되었습니다.
다음에 의해서 참조됨 : G4GMocrenFileSceneHandler::AddSolid(), G4CutTubs::CreatePolyhedron().
G4double HepPolyhedron::GetVolume | ( | ) | const |
HepPolyhedron HepPolyhedron::intersect | ( | const HepPolyhedron & | p | ) | const |
HepPolyhedron.cc 파일의 2290 번째 라인에서 정의되었습니다.
다음을 참조함 : processor.
|
protected |
HepPolyhedron.cc 파일의 820 번째 라인에서 정의되었습니다.
다음을 참조함 : G4Facet::edge, f, G4Facet::G4Edge::f, nface, pF, G4Facet::G4Edge::v.
다음에 의해서 참조됨 : G4PolyhedronArbitrary::InvertFacets(), Transform().
HepPolyhedron & HepPolyhedron::operator= | ( | const HepPolyhedron & | from | ) |
HepPolyhedron.cc 파일의 122 번째 라인에서 정의되었습니다.
|
static |
HepPolyhedron.cc 파일의 232 번째 라인에서 정의되었습니다.
다음을 참조함 : DEFAULT_NUMBER_OF_STEPS, fNumberOfRotationSteps.
다음에 의해서 참조됨 : G4PhysicalVolumeModel::DescribeSolid(), G4VSceneHandler::RequestPrimitives().
|
protected |
HepPolyhedron.cc 파일의 424 번째 라인에서 정의되었습니다.
다음을 참조함 : AllocateMemory(), GetNumberOfRotationSteps(), nface, perMillion, pV, RotateEdge(), SetSideFacets(), spatialTolerance, twopi.
다음에 의해서 참조됨 : HepPolyhedronCons::HepPolyhedronCons(), HepPolyhedronEllipsoid::HepPolyhedronEllipsoid(), HepPolyhedronEllipticalCone::HepPolyhedronEllipticalCone(), HepPolyhedronHype::HepPolyhedronHype(), HepPolyhedronParaboloid::HepPolyhedronParaboloid(), HepPolyhedronPgon::HepPolyhedronPgon(), HepPolyhedronSphere::HepPolyhedronSphere(), HepPolyhedronTorus::HepPolyhedronTorus().
HepPolyhedron.cc 파일의 210 번째 라인에서 정의되었습니다.
다음을 참조함 : fNumberOfRotationSteps, n.
다음에 의해서 참조됨 : G4PhysicalVolumeModel::DescribeSolid(), G4ArrowModel::G4ArrowModel(), G4VSceneHandler::RequestPrimitives().
|
protected |
HepPolyhedron.cc 파일의 671 번째 라인에서 정의되었습니다.
다음을 참조함 : G4Facet::edge, G4Facet::G4Edge::f, nface, nvert, pF, G4Facet::G4Edge::v.
다음에 의해서 참조됨 : createPolyhedron(), HepPolyhedronCons::HepPolyhedronCons(), HepPolyhedronEllipsoid::HepPolyhedronEllipsoid(), HepPolyhedronEllipticalCone::HepPolyhedronEllipticalCone(), HepPolyhedronHype::HepPolyhedronHype(), HepPolyhedronParaboloid::HepPolyhedronParaboloid(), HepPolyhedronPgon::HepPolyhedronPgon(), HepPolyhedronSphere::HepPolyhedronSphere(), HepPolyhedronTorus::HepPolyhedronTorus(), G4PolyhedronArbitrary::SetReferences().
|
protected |
HepPolyhedron.cc 파일의 353 번째 라인에서 정의되었습니다.
다음을 참조함 : perMillion, pF, pi.
다음에 의해서 참조됨 : RotateAroundZ().
HepPolyhedron HepPolyhedron::subtract | ( | const HepPolyhedron & | p | ) | const |
HepPolyhedron.cc 파일의 2305 번째 라인에서 정의되었습니다.
다음을 참조함 : processor.
다음에 의해서 참조됨 : StandaloneVisAction::Draw().
HepPolyhedron & HepPolyhedron::Transform | ( | const G4Transform3D & | t | ) |
HepPolyhedron.cc 파일의 846 번째 라인에서 정의되었습니다.
다음을 참조함 : HepGeom::BasicVector3D< T >::cross(), d, InvertFacets(), nvert, pV, x, y, z.
다음에 의해서 참조됨 : G4GMocrenFileSceneHandler::AddSolid(), G4EllipticalTube::CreatePolyhedron(), G4ScaledSolid::CreatePolyhedron(), G4ReflectedSolid::CreatePolyhedron(), G4DisplacedSolid::CreatePolyhedron(), StandaloneVisAction::Draw(), G4ScoringCylinder::Draw(), G4ScoringBox::Draw(), G4ScoringCylinder::DrawColumn(), G4ScoringBox::DrawColumn(), G4GMocrenFileSceneHandler::ExtractDetector(), G4ArrowModel::G4ArrowModel().
|
friend |
HepPolyhedron.cc 파일의 93 번째 라인에서 정의되었습니다.
|
staticprotected |
HepPolyhedron.h 파일의 199 번째 라인에서 정의되었습니다.
다음에 의해서 참조됨 : G4Polyhedron::G4Polyhedron(), GetNumberOfRotationSteps(), ResetNumberOfRotationSteps(), SetNumberOfRotationSteps().
|
protected |
HepPolyhedron.h 파일의 200 번째 라인에서 정의되었습니다.
다음에 의해서 참조됨 : G4PolyhedronArbitrary::AddFacet(), AllocateMemory(), GetNoFacets(), GetSurfaceArea(), GetVolume(), HepPolyhedron(), InvertFacets(), operator<<(), operator=(), RotateAroundZ(), SetReferences().
|
protected |
HepPolyhedron.h 파일의 200 번째 라인에서 정의되었습니다.
다음에 의해서 참조됨 : G4PolyhedronArbitrary::AddFacet(), G4PolyhedronArbitrary::AddVertex(), AllocateMemory(), createPolyhedron(), GetNoVerteces(), GetNoVertices(), HepPolyhedron(), HepPolyhedronEllipsoid::HepPolyhedronEllipsoid(), HepPolyhedronEllipticalCone::HepPolyhedronEllipticalCone(), operator<<(), operator=(), SetReferences(), Transform().
|
protected |
HepPolyhedron.h 파일의 202 번째 라인에서 정의되었습니다.
다음에 의해서 참조됨 : G4PolyhedronArbitrary::AddFacet(), AllocateMemory(), createPolyhedron(), CreatePrism(), createTwistedTrap(), GetSurfaceArea(), GetVolume(), HepPolyhedron(), InvertFacets(), operator<<(), operator=(), RotateEdge(), SetReferences(), SetSideFacets(), ~HepPolyhedron().
|
protected |
HepPolyhedron.h 파일의 201 번째 라인에서 정의되었습니다.
다음에 의해서 참조됨 : G4PolyhedronArbitrary::AddVertex(), AllocateMemory(), createPolyhedron(), createTwistedTrap(), GetSurfaceArea(), GetVolume(), HepPolyhedron(), HepPolyhedronEllipsoid::HepPolyhedronEllipsoid(), HepPolyhedronEllipticalCone::HepPolyhedronEllipticalCone(), HepPolyhedronTrap::HepPolyhedronTrap(), HepPolyhedronTrd2::HepPolyhedronTrd2(), operator<<(), operator=(), RotateAroundZ(), Transform(), ~HepPolyhedron().