85 UTrap(
const std::string& pName,
87 double pTheta,
double pPhi,
88 double pDy1,
double pDx1,
double pDx2,
90 double pDy2,
double pDx3,
double pDx4,
96 UTrap(
const std::string& pName,
101 UTrap(
const std::string& pName,
104 double pX,
double pLTX);
108 UTrap(
const std::string& pName,
109 double pDx1,
double pDx2,
110 double pDy1,
double pDy2,
115 UTrap(
const std::string& pName,
116 double pDx,
double pDy,
double pDz,
117 double pAlpha,
double pTheta,
double pPhi);
121 UTrap(
const std::string& pName);
196 std::ostream&
StreamInfo(std::ostream& os)
const;
bool MakePlane(const UVector3 &p1, const UVector3 &p2, const UVector3 &p3, const UVector3 &p4, UTrapSidePlane &plane)
UVector3 SurfaceNormal(const UVector3 &p) const
std::ostream & StreamInfo(std::ostream &os) const
UVector3 GetPointOnPlane(UVector3 p0, UVector3 p1, UVector3 p2, UVector3 p3, double &area) const
void SetAllParameters(double pDz, double pTheta, double pPhi, double pDy1, double pDx1, double pDx2, double pAlp1, double pDy2, double pDx3, double pDx4, double pAlp2)
bool Normal(const UVector3 &aPoint, UVector3 &aNormal) const
double SafetyFromOutside(const UVector3 &p, bool precise=false) const
void ComputeBBox(UBBox *, bool)
UVector3 ApproxSurfaceNormal(const UVector3 &p) const
double GetYHalfLength2() const
double GetXHalfLength2() const
UTrap & operator=(const UTrap &rhs)
double GetXHalfLength4() const
static const double kInfinity
double GetTanAlpha2() const
UTrapSidePlane GetSidePlane(int n) const
UVector3 GetSymAxis() const
UGeometryType GetEntityType() const
UTrapSidePlane fPlanes[4]
UTrap(const std::string &pName, double pDz, double pTheta, double pPhi, double pDy1, double pDx1, double pDx2, double pAlp1, double pDy2, double pDx3, double pDx4, double pAlp2)
virtual void Extent(UVector3 &aMin, UVector3 &aMax) const
double SafetyFromInside(const UVector3 &p, bool precise=false) const
double GetXHalfLength1() const
void SetPlanes(const UVector3 pt[8])
UVector3 GetPointOnSurface() const
double GetYHalfLength1() const
VUSolid::EnumInside Inside(const UVector3 &p) const
std::string UGeometryType
double DistanceToIn(const UVector3 &p, const UVector3 &v, double aPstep=UUtils::kInfinity) const
double GetFaceArea(const UVector3 &p1, const UVector3 &p2, const UVector3 &p3, const UVector3 &p4)
double GetXHalfLength3() const
double DistanceToOut(const UVector3 &p, const UVector3 &v, UVector3 &aNormalVector, bool &aConvex, double aPstep=UUtils::kInfinity) const
double GetThetaSphi() const
void GetParametersList(int, double *) const
double GetTanAlpha1() const
double GetZHalfLength() const
double GetThetaCphi() const