71 Dir(
const double Xv,
const double Yv,
const double Zv);
96 void setCoord(
const int Index,
const double Xi);
100 void setCoord(
const double Xv,
const double Yv,
const double Zv);
102 void setX(
const double X);
104 void setY(
const double Y);
106 void setZ(
const double Z);
116 double coord(
const int Index)
const;
118 void coord(
double& Xv,
double& Yv,
double& Zv)
const;
130 bool isEqual(
const Dir& Other,
const double AngularTolerance)
const;
133 bool isNormal(
const Dir& Other,
const double AngularTolerance)
const;
136 bool isOpposite(
const Dir& Other,
const double AngularTolerance)
const;
141 bool isParallel(
const Dir& Other,
const double AngularTolerance)
const;
147 double angle(
const Dir& Other)
const;
157 double angleWithRef(
const Dir& Other,
const Dir& VRef)
const;
162 void cross(
const Dir& Right);
170 Dir crossed(
const Dir& Right)
const;
174 void crossCross(
const Dir& V1,
const Dir& V2);
183 Dir crossCrossed(
const Dir& V1,
const Dir& V2)
const;
185 double dot(
const Dir& Other)
const;
194 double dotCross(
const Dir& V1,
const Dir& V2)
const;
201 Dir reversed()
const;
206 void mirror(
const Dir& V);
212 Dir mirrored(
const Dir& V)
const;
232 void rotate(
const Geom::Ax1& A1,
const double Ang);
236 Dir rotated(
const Geom::Ax1& A1,
const double Ang)
const;
254 bool operator==(
const Geom::Dir& other)
const;
257 double& operator[](
int i);
258 const double& operator[](
int i)
const;
X
Definition: Globals.h:32
static Dir YDir()
Definition: Dir.h:77
void operator^=(const Dir &Right)
Definition: Dir.h:163
#define GEOM_EXPORT
Definition: geom_defines.h:8
static Dir XDir()
Definition: Dir.h:76
static Dir ZDir()
Definition: Dir.h:78
Dir operator^(const Dir &Right) const
Definition: Dir.h:171
Y
Definition: Globals.h:32
Z
Definition: Globals.h:32
Defines a non-persistent vector in 3D space.
Definition: Vec.h:45
Geom::Vec operator *(const double Scalar, const Geom::Vec &V)
Definition: Vec.h:312
Dir operator-() const
Definition: Dir.h:202