#include <UOrb.hh>
|
| UOrb () |
|
| UOrb (const std::string &name, double pRmax) |
|
| ~UOrb () |
|
| UOrb (const UOrb &rhs) |
|
UOrb & | operator= (const UOrb &rhs) |
|
double | GetRadius () const |
|
void | SetRadius (double newRmax) |
|
EnumInside | Inside (const UVector3 &aPo6int) const |
|
double | SafetyFromInside (const UVector3 &aPoint, bool aAccurate=false) const |
|
double | SafetyFromOutside (const UVector3 &aPoint, bool aAccurate=false) const |
|
double | DistanceToIn (const UVector3 &aPoint, const UVector3 &aDirection, double aPstep=UUtils::kInfinity) const |
|
double | DistanceToOut (const UVector3 &aPoint, const UVector3 &aDirection, UVector3 &aNormalVector, bool &aConvex, double aPstep=UUtils::kInfinity) const |
|
bool | Normal (const UVector3 &aPoint, UVector3 &aNormal) const |
|
void | Extent (UVector3 &aMin, UVector3 &aMax) const |
|
double | Capacity () |
|
double | SurfaceArea () |
|
UGeometryType | GetEntityType () const |
|
void | ComputeBBox (UBBox *, bool) |
|
void | GetParametersList (int, double *) const |
|
VUSolid * | Clone () const |
|
double | GetRadialTolerance () |
|
UVector3 | GetPointOnSurface () const |
|
std::ostream & | StreamInfo (std::ostream &os) const |
|
| VUSolid () |
|
| VUSolid (const std::string &name) |
|
virtual | ~VUSolid () |
|
double | GetCarTolerance () const |
|
double | GetRadTolerance () const |
|
double | GetAngTolerance () const |
|
void | SetCarTolerance (double eps) |
|
void | SetRadTolerance (double eps) |
|
void | SetAngTolerance (double eps) |
|
virtual void | ExtentAxis (EAxisType aAxis, double &aMin, double &aMax) const |
|
const std::string & | GetName () const |
|
void | SetName (const std::string &aName) |
|
virtual void | SamplePointsInside (int, UVector3 *) const |
|
virtual void | SamplePointsOnSurface (int, UVector3 *) const |
|
virtual void | SamplePointsOnEdge (int, UVector3 *) const |
|
double | EstimateCubicVolume (int nStat, double epsilon) const |
|
double | EstimateSurfaceArea (int nStat, double ell) const |
|
Definition at line 28 of file UOrb.hh.
UOrb::UOrb |
( |
const std::string & |
name, |
|
|
double |
pRmax |
|
) |
| |
UOrb::UOrb |
( |
const UOrb & |
rhs | ) |
|
double UOrb::Capacity |
( |
| ) |
|
|
inlinevirtual |
double UOrb::DistanceToIn |
( |
const UVector3 & |
aPoint, |
|
|
const UVector3 & |
aDirection, |
|
|
double |
aPstep = UUtils::kInfinity |
|
) |
| const |
|
virtual |
double UOrb::DistanceToOut |
( |
const UVector3 & |
aPoint, |
|
|
const UVector3 & |
aDirection, |
|
|
UVector3 & |
aNormalVector, |
|
|
bool & |
aConvex, |
|
|
double |
aPstep = UUtils::kInfinity |
|
) |
| const |
|
virtual |
Returns extent of the solid along a given cartesian axis OK
Implements VUSolid.
Definition at line 443 of file UOrb.cc.
void UOrb::GetParametersList |
( |
int |
, |
|
|
double * |
aArray |
|
) |
| const |
|
virtual |
UVector3 UOrb::GetPointOnSurface |
( |
| ) |
const |
|
virtual |
double UOrb::GetRadialTolerance |
( |
| ) |
|
|
inline |
double UOrb::GetRadius |
( |
| ) |
const |
|
inline |
Return whether point inside/outside/on surface Split into radius checks
Classify point location with respect to solid: o eInside - inside the solid o eSurface - close to surface within tolerance o eOutside - outside the solid
Implements VUSolid.
Definition at line 53 of file UOrb.cc.
Return unit normal of surface closest to p
From http://lists.trolltech.com/qt-interest/2002-09/thread01124-0.html :
does anybody here have an algorithm to calculate the normal vector in a given point in space (x, y, z) in a sphere? I know that it's not about qt but i'll like very mutch the help.
It's simply the connecting vector from the centre of the sphere to the point (other way around for inward normals) obtained through vector subtraction, normalized to unity.
You really should get an algebra book though, as you are bound to encounter more of these problems in a 3d application.
Implements VUSolid.
Definition at line 421 of file UOrb.cc.
UOrb & UOrb::operator= |
( |
const UOrb & |
rhs | ) |
|
double UOrb::SafetyFromInside |
( |
const UVector3 & |
aPoint, |
|
|
bool |
aAccurate = false |
|
) |
| const |
|
virtual |
double UOrb::SafetyFromOutside |
( |
const UVector3 & |
aPoint, |
|
|
bool |
aAccurate = false |
|
) |
| const |
|
virtual |
void UOrb::SetRadius |
( |
double |
newRmax | ) |
|
|
inline |
std::ostream & UOrb::StreamInfo |
( |
std::ostream & |
os | ) |
const |
|
virtual |
double UOrb::SurfaceArea |
( |
| ) |
|
|
inlinevirtual |
The documentation for this class was generated from the following files:
- source/source/geometry/solids/usolids/include/UOrb.hh
- source/source/geometry/solids/usolids/src/UOrb.cc