Math::VectorPair<3> struct reference
[Core module]
Declaration
#include <Goptical/Math/VectorPair>
namespace Goptical {
namespace Math {
template <> struct VectorPair<3>;
};
};
This struct is a member of the Math namespace.
This struct is a specialization of VectorPair.
Inheritance
Description
This class hold two 3d vectors.
See also VectorPair3 typedef.
Members
See also the full member list section for this struct.
Functions
- VectorPair()
- VectorPair(const VectorPairBase<3> &vp)
- VectorPair(const Vector<3> &a, const Vector<3> &b = [...])
- VectorPair(double ax, double ay, double az, double bx = [...], double by = [...], double bz = [...])
- Vector<N> & direction()
- const Vector<N> & direction() const
- Vector<3> ln_ln_clst_pt(const VectorPair<3> &line) const
- double ln_ln_clst_pt_scale(const VectorPair<3> &line) const
- Vector<N> ln_pt_clst_pt(const Vector<N> &point) const
- double ln_pt_clst_pt_scale(const Vector<N> &point) const
- Vector<N> & normal()
- const Vector<N> & normal() const
- VectorPairBase<3> operator*(double factor)
- const VectorPairBase<3> & operator+=(const VectorPairBase<3> &p)
- const Vector<N> & operator[](int n) const
- Vector<N> & operator[](int n)
- Vector<N> & origin()
- const Vector<N> & origin() const
- Vector<3> pl_ln_intersect(const VectorPair<3> &line) const
- double pl_ln_intersect_scale(const VectorPair<3> &line) const
- Vector<N> seg_pt_clst_pt(const Vector<N> &point) const
- double seg_pt_clst_pt_scale(const Vector<N> &point) const
- double x0() const
- double & x0()
- double x1() const
- double & x1()
- double y0() const
- double & y0()
- double y1() const
- double & y1()
- double z0() const
- double & z0()
- double z1() const
- double & z1()
Members detail
No documentation available
No documentation available
No documentation available
No documentation available
Vector<3> ln_ln_clst_pt(const VectorPair<3> &line) const
Consider the VectorPair as a line with origin and direction vectors and find the closest point on this line to an other line.
The return value is position of the closest point on the line. this function throws if lines are almost parallel.
See also ln_ln_clst_pt_scale function.
double ln_ln_clst_pt_scale(const VectorPair<3> &line) const
Consider the VectorPair as a line with origin and direction vectors and find the closest point on this line to an other line.
The return value is scale factor of the direction vector from origin. this function throws if lines are almost parallel.
See also ln_ln_clst_pt function.
Vector<3> pl_ln_intersect(const VectorPair<3> &line) const
Consider the VectorPair as a plane and find intersection point with a line. Plane is defined by origin and normal vectors and line is defined by origin and direction vectors.
The return value is position of the intersection point on the line.
See also pl_ln_intersect_scale function.
double pl_ln_intersect_scale(const VectorPair<3> &line) const
Consider the VectorPair as a plane and find intersection point with a line. Plane is defined by origin and normal vectors and line is defined by origin and direction vectors.
The return value is scale factor of the line direction vector from line origin.
See also pl_ln_intersect function.
Get vector pair component
Get vector pair component
Get vector pair component
Get vector pair component
Get vector pair component
Get vector pair component
Get vector pair component
Get vector pair component
Get vector pair component
Get vector pair component
Get vector pair component
Get vector pair component