Geant4
10.01.p02
|
#include <UReduciblePolygon.hh>
Classes | |
struct | ABVertex |
Public Member Functions | |
UReduciblePolygon (const double a[], const double b[], int n) | |
UReduciblePolygon (const double rmin[], const double rmax[], const double z[], int n) | |
virtual | ~UReduciblePolygon () |
int | NumVertices () const |
double | Amin () const |
double | Amax () const |
double | Bmin () const |
double | Bmax () const |
void | CopyVertices (double a[], double b[]) const |
void | ScaleA (double scale) |
void | ScaleB (double scale) |
bool | RemoveDuplicateVertices (double tolerance) |
bool | RemoveRedundantVertices (double tolerance) |
void | ReverseOrder () |
void | StartWithZMin () |
double | Area () |
bool | CrossesItself (double tolerance) |
bool | BisectedBy (double a1, double b1, double a2, double b2, double tolerance) |
void | Print () |
Protected Member Functions | |
void | Create (const double a[], const double b[], int n) |
void | CalculateMaxMin () |
Protected Attributes | |
double | aMin |
double | aMax |
double | bMin |
double | bMax |
int | numVertices |
ABVertex * | vertexHead |
Private Member Functions | |
UReduciblePolygon (const UReduciblePolygon &) | |
UReduciblePolygon & | operator= (const UReduciblePolygon &) |
Friends | |
class | UReduciblePolygonIterator |
struct | ABVertex |
Definition at line 39 of file UReduciblePolygon.hh.
UReduciblePolygon::UReduciblePolygon | ( | const double | a[], |
const double | b[], | ||
int | n | ||
) |
Definition at line 28 of file UReduciblePolygon.cc.
References Create().
UReduciblePolygon::UReduciblePolygon | ( | const double | rmin[], |
const double | rmax[], | ||
const double | z[], | ||
int | n | ||
) |
Definition at line 44 of file UReduciblePolygon.cc.
References a, Create(), and n.
|
virtual |
Definition at line 121 of file UReduciblePolygon.cc.
References UReduciblePolygon::ABVertex::next, and vertexHead.
|
private |
|
inline |
Definition at line 71 of file UReduciblePolygon.hh.
References aMax.
Referenced by UGenericPolycone::Create(), UPolyhedra::Create(), UPolycone::Init(), and UPolyPhiFace::UPolyPhiFace().
|
inline |
Definition at line 67 of file UReduciblePolygon.hh.
References aMin.
Referenced by UGenericPolycone::Create(), UPolyhedra::Create(), UPolycone::Init(), and UPolyPhiFace::UPolyPhiFace().
double UReduciblePolygon::Area | ( | ) |
Definition at line 537 of file UReduciblePolygon.cc.
References UReduciblePolygon::ABVertex::a, UReduciblePolygon::ABVertex::b, UReduciblePolygon::ABVertex::next, and vertexHead.
Referenced by UGenericPolycone::Create(), and UPolyhedra::Create().
bool UReduciblePolygon::BisectedBy | ( | double | a1, |
double | b1, | ||
double | a2, | ||
double | b2, | ||
double | tolerance | ||
) |
Definition at line 490 of file UReduciblePolygon.cc.
References UReduciblePolygon::ABVertex::a, a1, UReduciblePolygon::ABVertex::b, b1, UReduciblePolygon::ABVertex::next, and vertexHead.
Referenced by UGenericPolycone::Create().
|
inline |
Definition at line 79 of file UReduciblePolygon.hh.
References bMax.
Referenced by UGenericPolycone::Create(), UPolyhedra::Create(), UPolycone::Init(), UPolycone::SetOriginalParameters(), and UPolyPhiFace::UPolyPhiFace().
|
inline |
Definition at line 75 of file UReduciblePolygon.hh.
References bMin.
Referenced by UGenericPolycone::Create(), UPolyhedra::Create(), UPolycone::Init(), and UPolyPhiFace::UPolyPhiFace().
|
protected |
Definition at line 577 of file UReduciblePolygon.cc.
References UReduciblePolygon::ABVertex::a, aMax, aMin, UReduciblePolygon::ABVertex::b, bMax, bMin, UReduciblePolygon::ABVertex::next, and vertexHead.
Referenced by Create(), RemoveDuplicateVertices(), and RemoveRedundantVertices().
void UReduciblePolygon::CopyVertices | ( | double | a[], |
double | b[] | ||
) | const |
Definition at line 140 of file UReduciblePolygon.cc.
References a, UReduciblePolygon::ABVertex::a, UReduciblePolygon::ABVertex::b, UReduciblePolygon::ABVertex::next, and vertexHead.
Referenced by UVCSGfaceted::InitVoxels().
|
protected |
Definition at line 82 of file UReduciblePolygon.cc.
References a, UReduciblePolygon::ABVertex::a, ABVertex, UReduciblePolygon::ABVertex::b, CalculateMaxMin(), UUtils::Exception(), n, UReduciblePolygon::ABVertex::next, numVertices, UFatalErrorInArguments, and vertexHead.
Referenced by UReduciblePolygon().
bool UReduciblePolygon::CrossesItself | ( | double | tolerance | ) |
Definition at line 432 of file UReduciblePolygon.cc.
References UReduciblePolygon::ABVertex::a, UReduciblePolygon::ABVertex::b, UReduciblePolygon::ABVertex::next, tolerance, and vertexHead.
Referenced by UGenericPolycone::Create(), and UPolyhedra::Create().
|
inline |
Definition at line 62 of file UReduciblePolygon.hh.
References numVertices.
Referenced by UGenericPolycone::Create(), UPolyhedra::Create(), UVCSGfaceted::InitVoxels(), and UPolyPhiFace::UPolyPhiFace().
|
private |
void UReduciblePolygon::Print | ( | void | ) |
Definition at line 559 of file UReduciblePolygon.cc.
References UReduciblePolygon::ABVertex::a, UReduciblePolygon::ABVertex::b, UReduciblePolygon::ABVertex::next, and vertexHead.
bool UReduciblePolygon::RemoveDuplicateVertices | ( | double | tolerance | ) |
Definition at line 191 of file UReduciblePolygon.cc.
References UReduciblePolygon::ABVertex::a, UReduciblePolygon::ABVertex::b, CalculateMaxMin(), UReduciblePolygon::ABVertex::next, numVertices, and vertexHead.
Referenced by UGenericPolycone::Create(), and UPolyhedra::Create().
bool UReduciblePolygon::RemoveRedundantVertices | ( | double | tolerance | ) |
Definition at line 246 of file UReduciblePolygon.cc.
References UReduciblePolygon::ABVertex::a, UReduciblePolygon::ABVertex::b, CalculateMaxMin(), UReduciblePolygon::ABVertex::next, numVertices, tolerance, and vertexHead.
Referenced by UGenericPolycone::Create(), and UPolyhedra::Create().
void UReduciblePolygon::ReverseOrder | ( | ) |
Definition at line 343 of file UReduciblePolygon.cc.
References UReduciblePolygon::ABVertex::next, and vertexHead.
Referenced by UGenericPolycone::Create(), and UPolyhedra::Create().
void UReduciblePolygon::ScaleA | ( | double | scale | ) |
Definition at line 158 of file UReduciblePolygon.cc.
References UReduciblePolygon::ABVertex::a, UReduciblePolygon::ABVertex::next, and vertexHead.
Referenced by UPolyhedra::Init().
void UReduciblePolygon::ScaleB | ( | double | scale | ) |
Definition at line 174 of file UReduciblePolygon.cc.
References UReduciblePolygon::ABVertex::b, UReduciblePolygon::ABVertex::next, and vertexHead.
void UReduciblePolygon::StartWithZMin | ( | ) |
Definition at line 395 of file UReduciblePolygon.cc.
References UReduciblePolygon::ABVertex::b, UReduciblePolygon::ABVertex::next, and vertexHead.
Referenced by UPolycone::SetOriginalParameters().
|
friend |
Definition at line 127 of file UReduciblePolygon.hh.
Referenced by Create().
|
friend |
Definition at line 41 of file UReduciblePolygon.hh.
|
protected |
Definition at line 118 of file UReduciblePolygon.hh.
Referenced by Amax(), and CalculateMaxMin().
|
protected |
Definition at line 118 of file UReduciblePolygon.hh.
Referenced by Amin(), and CalculateMaxMin().
|
protected |
Definition at line 118 of file UReduciblePolygon.hh.
Referenced by Bmax(), and CalculateMaxMin().
|
protected |
Definition at line 118 of file UReduciblePolygon.hh.
Referenced by Bmin(), and CalculateMaxMin().
|
protected |
Definition at line 119 of file UReduciblePolygon.hh.
Referenced by Create(), NumVertices(), RemoveDuplicateVertices(), and RemoveRedundantVertices().
|
protected |
Definition at line 136 of file UReduciblePolygon.hh.
Referenced by Area(), UReduciblePolygonIterator::Begin(), BisectedBy(), CalculateMaxMin(), CopyVertices(), Create(), CrossesItself(), Print(), RemoveDuplicateVertices(), RemoveRedundantVertices(), ReverseOrder(), ScaleA(), ScaleB(), StartWithZMin(), and ~UReduciblePolygon().