35 typedef std::vector<Geom::XYZ>
COORDS;
62 XYZ(
const double X,
const double Y,
const double Z);
65 void setCoord(
const double X,
const double Y,
const double Z);
72 void setCoord(
const int Index,
const double Xi);
74 void setX(
const double X);
76 void setY(
const double Y);
78 void setZ(
const double Z);
86 double coord(
const int Index)
const;
88 void coord(
double&
X,
double&
Y,
double&
Z)
const;
96 double modulus()
const;
98 double squareModulus()
const;
107 bool isEqual(
const XYZ& Other,
const double Tolerance)
const;
112 void add(
const XYZ& Other);
119 XYZ added(
const XYZ& Other)
const;
126 void cross(
const XYZ& Right);
133 XYZ crossed(
const XYZ& Right)
const;
139 double crossMagnitude(
const XYZ& Right)
const;
143 double crossSquareMagnitude(
const XYZ& Right)
const;
146 void crossCross(
const XYZ& Coord1,
const XYZ& Coord2);
149 XYZ crossCrossed(
const XYZ& Coord1,
const XYZ& Coord2)
const;
151 void divide(
const double Scalar);
155 XYZ divided(
const double Scalar)
const;
159 double dot(
const XYZ& Other)
const;
163 double dotCross(
const XYZ& Coord1,
const XYZ& Coord2)
const;
168 void multiply(
const double Scalar);
169 void operator*=(
const double Scalar) { multiply(Scalar); }
175 void multiply(
const XYZ& Other);
176 void operator*=(
const XYZ& Other) { multiply(Other); }
179 void operator*=(
const Geom::Mat& Matrix) { multiply(Matrix); }
194 XYZ multiplied(
const double Scalar)
const;
195 XYZ operator*(
const double Scalar)
const {
return multiplied(Scalar); }
202 XYZ multiplied(
const XYZ& Other)
const;
217 XYZ normalized()
const;
227 XYZ reversed()
const;
232 void subtract(
const XYZ& Right);
239 XYZ subtracted(
const XYZ& Right)
const;
245 void setLinearForm(
const double A1,
const XYZ& XYZ1,
const double A2,
const XYZ& XYZ2,
const double A3,
const XYZ& XYZ3,
const XYZ& XYZ4);
249 void setLinearForm(
const double A1,
const XYZ& XYZ1,
const double A2,
const XYZ& XYZ2,
const double A3,
const XYZ& XYZ3);
253 void setLinearForm(
const double A1,
const XYZ& XYZ1,
const double A2,
const XYZ& XYZ2,
const XYZ& XYZ3);
257 void setLinearForm(
const double A1,
const XYZ& XYZ1,
const double A2,
const XYZ& XYZ2);
261 void setLinearForm(
const double A1,
const XYZ& XYZ1,
const XYZ& XYZ2);
263 void setLinearForm(
const XYZ& Left,
const XYZ& Right);
271 double& operator[](
int i);
272 const double& operator[](
int i)
const;
274 bool operator<(
const XYZ& rhs)
const;
X
Definition: Globals.h:32
XYZ operator-(const XYZ &Right) const
Definition: XYZ.h:240
XYZ operator/(const double Scalar) const
Definition: XYZ.h:156
void operator/=(const double Scalar)
Definition: XYZ.h:152
std::vector< Geom::XYZ > COORDS
Definition: XYZ.h:35
XYZ multiplied(const double Scalar) const
<me> = Matrix * <me>
std::vector< XYZ > XYZ_Array
Definition: XYZ.h:284
Geom::XYZ operator *(const Geom::Mat &Matrix, const Geom::XYZ &Coord1)
Definition: XYZ.h:287
#define GEOM_EXPORT
Definition: geom_defines.h:8
Y
Definition: Globals.h:32
XYZ operator+(const XYZ &Other) const
Definition: XYZ.h:120
void operator^=(const XYZ &Right)
Definition: XYZ.h:127
Z
Definition: Globals.h:32
XYZ operator^(const XYZ &Right) const
Definition: XYZ.h:134
void operator-=(const XYZ &Right)
Definition: XYZ.h:233
void operator+=(const XYZ &Other)
Definition: XYZ.h:113