40 public JMath<JVersor3Z>
83 return static_cast<const JVersor3Z&
>(*this);
105 static_cast<JVersor3Z&
>(*this) = direction;
174 return sqrt(1.0 -
v);
262 const double precision = std::numeric_limits<double>::min())
const
264 return (fabs(
getDX() - versor.
getDX()) <= precision &&
338 return in >> versor.
__dx >> versor.
__dy;
351 const JFormat format(out, getFormat<JVersor3Z>(
JFormat_t(9, 6, std::ios::fixed | std::ios::showpos)));
353 return out << format << versor.
getDX() <<
' ' << format << versor.
getDY();
366 return in >> versor.
__dx >> versor.
__dy;
379 return out << versor.
__dx << versor.
__dy;
Base class for data structures with artithmetic capabilities.
Data structure for normalised vector in two dimensions.
Data structure for angles in three dimensions.
double getDY() const
Get y direction.
double getDZ() const
Get z direction.
double getDX() const
Get x direction.
Data structure for vector in three dimensions.
double getY() const
Get y position.
double getZ() const
Get z position.
double getX() const
Get x position.
Data structure for normalised vector in three dimensions.
double getDY() const
Get y direction.
double getDX() const
Get x direction.
double getDZ() const
Get z direction.
Data structure for normalised vector in positive z-direction.
JVersor3Z & div(const double value)
Division operator.
double getDot(const JVersor3Z &dir) const
Get dot product.
JVersor3Z(const double dx, const double dy)
Constructor.
JVersor3Z & add(const JVersor3Z &value)
Addition operator.
bool equals(const JVersor3D &versor, const double precision=std::numeric_limits< double >::min()) const
Check equality.
double getDot(const JVector3D &pos) const
Get dot product.
double getDot(const JAngle3D &angle) const
Get dot product.
friend JReader & operator>>(JReader &in, JVersor3Z &versor)
Read versor from input.
JVersor3Z & negate()
Prefix unary minus.
double getDot(const JVersor3D &dir) const
Get dot product.
JVersor3Z()
Default constructor.
JVersor3Z & mul(const double value)
Multiplication operator.
JVersor3Z & getDirection()
Get direction.
void setDirection(const JVersor3Z &direction)
Set direction.
JVersor3Z & sub(const JVersor3Z &value)
Subtraction operator.
double getDZ() const
Get z direction.
const JVersor3Z & getDirection() const
Get direction.
friend std::istream & operator>>(std::istream &in, JVersor3Z &versor)
Read versor from input.
double getDY() const
Get y direction.
JVersor3Z(const JVersor2D &dir)
Constructor.
friend JWriter & operator<<(JWriter &out, const JVersor3Z &versor)
Write versor to output.
friend std::ostream & operator<<(std::ostream &out, const JVersor3Z &versor)
Write versor to output.
double getDX() const
Get x direction.
Interface for binary input.
Interface for binary output.
Auxiliary classes and methods for 3D geometrical objects and operations.
This name space includes all other name spaces (except KM3NETDAQ, KM3NET and ANTARES).
Auxiliary base class for aritmetic operations of derived class types.