Classes | Macros | Functions
vgl_line_3d_2_points.h File Reference

non-homogeneous 3D line, represented by 2 points. More...

#include <iosfwd>
#include <cassert>
#include <vgl/vgl_point_3d.h>
#include <vgl/vgl_vector_3d.h>

Go to the source code of this file.

Classes

class  vgl_line_3d_2_points< Type >
 A class to hold a non-homogeneous representation of a 3D line. More...
 

Macros

#define l   vgl_line_3d_2_points<Type>
 
#define VGL_LINE_3D_2_POINTS_INSTANTIATE(T)   extern "please include vgl/vgl_line_3d_2_points.hxx first"
 

Functions

template<class Type >
bool is_ideal (l const &, Type=(Type) 0)
 Return true iff line is at infinity (which is always false). More...
 
template<class Type >
bool collinear (l const &l1, vgl_point_3d< Type > const &p)
 Does a line pass through a point, i.e., are the point and the line collinear?. More...
 
template<class Type >
bool coplanar (l const &l1, l const &l2)
 Are two lines coplanar, i.e., do they either intersect or are parallel?. More...
 
template<class Type >
bool concurrent (l const &l1, l const &l2)
 Are two lines concurrent, i.e., do they intersect in a finite point?. More...
 
template<class Type >
bool coplanar (l const &l1, vgl_point_3d< Type > const &p1, vgl_point_3d< Type > const &p2)
 Are two points coplanar with a line?. More...
 
template<class Type >
bool coplanar (l const &l1, l const &l2, l const &l3)
 Are three lines coplanar, i.e., are they in a common plane?. More...
 
template<class Type >
bool concurrent (l const &l1, l const &l2, l const &l3)
 Are three lines concurrent, i.e., do they pass through a common point?. More...
 
template<class Type >
std::ostream & operator<< (std::ostream &s, l const &)
 Write to stream (verbose). More...
 
template<class Type >
std::istream & operator>> (std::istream &is, l &)
 Read parameters from stream. More...
 

Detailed Description

non-homogeneous 3D line, represented by 2 points.

Author
Peter Vanroose
  Modifications
   Gamze Tunali    26 Jan 2007: Deprecated intersection(). Moved into vgl_intersection.
   Peter Vanroose  30 Mar 2007: Commented out deprecated intersection() functions.

Definition in file vgl_line_3d_2_points.h.

Macro Definition Documentation

◆ l

#define l   vgl_line_3d_2_points<Type>

Definition at line 81 of file vgl_line_3d_2_points.h.

◆ VGL_LINE_3D_2_POINTS_INSTANTIATE

#define VGL_LINE_3D_2_POINTS_INSTANTIATE (   T)    extern "please include vgl/vgl_line_3d_2_points.hxx first"

Definition at line 172 of file vgl_line_3d_2_points.h.

Function Documentation

◆ collinear()

template<class Type >
bool collinear ( l const &  l1,
vgl_point_3d< Type > const &  p 
)
inline

Does a line pass through a point, i.e., are the point and the line collinear?.

Definition at line 92 of file vgl_line_3d_2_points.h.

◆ concurrent() [1/2]

template<class Type >
bool concurrent ( l const &  l1,
l const &  l2 
)
inline

Are two lines concurrent, i.e., do they intersect in a finite point?.

Definition at line 106 of file vgl_line_3d_2_points.h.

◆ concurrent() [2/2]

template<class Type >
bool concurrent ( l const &  l1,
l const &  l2,
l const &  l3 
)
inline

Are three lines concurrent, i.e., do they pass through a common point?.

Definition at line 150 of file vgl_line_3d_2_points.h.

◆ coplanar() [1/3]

template<class Type >
bool coplanar ( l const &  l1,
l const &  l2 
)
inline

Are two lines coplanar, i.e., do they either intersect or are parallel?.

Definition at line 100 of file vgl_line_3d_2_points.h.

◆ coplanar() [2/3]

template<class Type >
bool coplanar ( l const &  l1,
vgl_point_3d< Type > const &  p1,
vgl_point_3d< Type > const &  p2 
)
inline

Are two points coplanar with a line?.

Definition at line 115 of file vgl_line_3d_2_points.h.

◆ coplanar() [3/3]

template<class Type >
bool coplanar ( l const &  l1,
l const &  l2,
l const &  l3 
)
inline

Are three lines coplanar, i.e., are they in a common plane?.

Definition at line 121 of file vgl_line_3d_2_points.h.

◆ is_ideal()

template<class Type >
bool is_ideal ( l const &  ,
Type  = (Type)0 
)
inline

Return true iff line is at infinity (which is always false).

Definition at line 86 of file vgl_line_3d_2_points.h.

◆ operator<<()

template<class Type >
std::ostream& operator<< ( std::ostream &  s,
l const &   
)

Write to stream (verbose).

◆ operator>>()

template<class Type >
std::istream& operator>> ( std::istream &  is,
l  
)

Read parameters from stream.