29 Vector3D(
double ix,
double iy,
double iz);
41 void Set(
double ix,
double iy,
double iz);
212 void Split(vector<Vector3D>
const & vIn, vector<double> & vX, vector<double> & vY, vector<double> & vZ);
214 #endif // Vector3D_HPP void RotateY(double a)
Rotates the vector around the Y axes.
Vector3D CrossProduct(Vector3D const &v1, Vector3D const &v2)
Returns the cross product of two vectors.
double z
Component in the z direction.
Vector3D & operator-=(Vector3D const &v)
Subtraction.
Vector3D & operator*=(double s)
Scalar product.
Vector3D & operator+=(Vector3D const &v)
Addition.
Vector3D Reflect(Vector3D const &v, Vector3D const &normal)
Reflect vector.
double Projection(Vector3D const &v1, Vector3D const &v2)
Calculates the projection of one vector in the direction of the second.
double CalcAngle(Vector3D const &v1, Vector3D const &v2)
Returns the angle between two vectors (in radians)
void RotateX(double a)
Rotates the vector around the X axes.
void Set(double ix, double iy, double iz)
Set vector components.
Vector3D(void)
Null constructor.
Vector3D & operator=(Vector3D const &v)
Assignment operator.
Vector3D operator*(double d, Vector3D const &v)
Scalar product.
double ScalarProd(Vector3D const &v1, Vector3D const &v2)
Scalar product of two vectors.
double y
Component in the y direction.
Vector3D operator/(Vector3D const &v, double d)
Scalar division.
void RotateZ(double a)
Rotates the vector around the Z axes.
void Round()
Integer round of the vector's entries.
void Split(vector< Vector3D > const &vIn, vector< double > &vX, vector< double > &vY, vector< double > &vZ)
Splits a vector of 3D points to components.
double abs(Vector3D const &v)
Norm of a vector.
Vector3D operator+(Vector3D const &v1, Vector3D const &v2)
Term by term addition.
double x
Component in the x direction.
double distance(Vector3D const &v1, Vector3D const &v2)
Calculates the distance between two vectors.
Vector3D operator-(Vector3D const &v1, Vector3D const &v2)
Term by term subtraction.
bool operator==(Vector3D const &v)
Compare 3D-Vectors (up to an arbitrary precision)