46 AffPoint(
double xx,
double yy,
double zz=0.0);
169 double*
aCoords(
double* coords,
int offset=0)
const;
193 double*
aCoords(
double coords[][3],
int offset=0)
const;
215 float*
aCoords(
float* coords,
int offset=0)
const;
238 float*
aCoords(
float coords[][3],
int offset=0)
const;
245 void assign(
double xx,
double yy,
double zz);
268 double& b1,
double& b2,
double& b3)
const;
289 double& b1,
double& b2)
const;
365 double*
pCoords(
double* coords,
double w,
int offset=0)
const;
388 float*
pCoords(
float* coords,
float w,
int offset=0)
const;
422 void toSpherical(
double& rho,
double& theta,
double& phi)
const;
445 double b1,
double b2,
double b3)
446 {
return b1*P1 + b2*P2 + b3*P3; }
459 double b1,
double b2)
460 {
return b1*P1 + b2*P2; }
470 {
return AffPoint( r*cos(theta), r*sin(theta), z ); }
479 {
return AffPoint(rho*sin(phi)*cos(theta),
480 rho*sin(phi)*sin(theta), rho*cos(phi) ); }
507 int& index1,
int& index2);
540 static double sCoincidenceTol;
543 std::ostream& operator<<(std::ostream& os,
const AffPoint& p);
544 std::istream& operator>>(std::istream& is,
AffPoint& p);
547 {
return AffPoint(f*p[X], f*p[Y], f*p[Z]); }
AffPoint operator=(const AffPoint &rhs)
Definition: AffPoint.c++:256
static double maxOffsetInDirection(const AffPoint &ref, const AffVector &dir, const AffPoint buf[], int bufSize, int &index1, int &index2)
Definition: AffPoint.c++:216
double * pCoords(double *coords, double w, int offset=0) const
Definition: AffPoint.c++:329
double distanceSquaredFromLine(const AffPoint &B, const AffVector &u) const
Definition: AffPoint.c++:177
AffPoint operator*=(double f)
Definition: AffPoint.c++:280
double distanceTo(const AffPoint &p) const
Definition: AffPoint.c++:211
AffPoint operator+(const AffVector &v2) const
Definition: AffPoint.h:137
double distanceSquaredFromOrigin() const
Definition: AffPoint.c++:194
Definition: AffPoint.c++:12
double operator[](int index) const
Definition: AffPoint.c++:293
static const AffPoint yAxisPoint
Definition: AffPoint.h:529
static AffPoint fromBarycentricCoords(const AffPoint &P1, const AffPoint &P2, double b1, double b2)
Definition: AffPoint.h:457
double z
Definition: AffPoint.h:537
static AffPoint fromCylindrical(double r, double theta, double z)
Definition: AffPoint.h:469
static double ratio(const AffPoint &a, const AffPoint &b, const AffPoint &c)
Definition: AffPoint.c++:353
bool coincidentWith(const AffPoint &p) const
Definition: AffPoint.c++:162
static const AffPoint origin
Definition: AffPoint.h:527
double distanceFromOrigin() const
Definition: AffPoint.c++:172
double * aCoords(double *coords, int offset=0) const
Definition: AffPoint.c++:55
static AffPoint centroid(const AffPoint p[], int nPoints)
Definition: AffPoint.c++:154
AffPoint()
Definition: AffPoint.c++:27
AffPoint operator*(double f) const
Definition: AffPoint.h:115
AffPoint operator-(const AffVector &v2) const
Definition: AffPoint.h:145
virtual ~AffPoint()
Definition: AffPoint.c++:51
Definition: AffVector.h:24
void toCylindrical(double &r, double &theta, double &z) const
Definition: AffPoint.c++:392
AffPoint operator/=(double f)
Definition: AffPoint.c++:286
static AffPoint fromSpherical(double rho, double theta, double phi)
Definition: AffPoint.h:478
AffPoint operator/(double f) const
Definition: AffPoint.h:123
AffVector operator-(const AffPoint &p2) const
Definition: AffPoint.h:130
static void setCoincidenceTolerance(double tol)
Definition: AffPoint.c++:365
AffPoint operator+=(const AffVector &rhs)
Definition: AffPoint.c++:262
AffPoint operator+(const AffPoint &p2) const
Definition: AffPoint.h:108
void swizzle(char xyz[3])
Definition: AffPoint.c++:371
double distanceSquaredTo(const AffPoint &p) const
Definition: AffPoint.c++:199
AffPoint operator-=(const AffVector &rhs)
Definition: AffPoint.c++:274
double distanceFromLine(const AffPoint &B, const AffVector &u) const
Definition: AffPoint.c++:167
double normalize()
Definition: AffPoint.c++:246
double y
Definition: AffPoint.h:536
double x
Definition: AffPoint.h:535
static const AffPoint xAxisPoint
Definition: AffPoint.h:528
static const AffPoint zAxisPoint
Definition: AffPoint.h:530
void assign(double xx, double yy, double zz)
Definition: AffPoint.c++:95
static double getCoincidenceTolerance()
Definition: AffPoint.h:487
void barycentricCoords(const AffPoint &P1, const AffPoint &P2, const AffPoint &P3, double &b1, double &b2, double &b3) const
Definition: AffPoint.c++:104
static AffPoint fromBarycentricCoords(const AffPoint &P1, const AffPoint &P2, const AffPoint &P3, double b1, double b2, double b3)
Definition: AffPoint.h:442
void toSpherical(double &rho, double &theta, double &phi) const
Definition: AffPoint.c++:399
Definition: AffPoint.h:25