Defines | Functions
core/vgl/vgl_distance.txx File Reference
#include "vgl_distance.h"
#include <vgl/vgl_point_2d.h>
#include <vgl/vgl_point_3d.h>
#include <vgl/vgl_homg_point_1d.h>
#include <vgl/vgl_homg_point_2d.h>
#include <vgl/vgl_homg_point_3d.h>
#include <vgl/vgl_line_2d.h>
#include <vgl/vgl_line_segment_2d.h>
#include <vgl/vgl_line_segment_3d.h>
#include <vgl/vgl_homg_line_2d.h>
#include <vgl/vgl_homg_line_3d_2_points.h>
#include <vgl/vgl_plane_3d.h>
#include <vgl/vgl_homg_plane_3d.h>
#include <vgl/vgl_polygon.h>
#include <vgl/vgl_closest_point.h>
#include <vcl_cassert.h>
#include <vcl_cmath.h>
#include <vcl_utility.h>

Go to the source code of this file.

Defines

#define vgl_distance_txx_
#define VGL_DISTANCE_INSTANTIATE(T)

Functions

template<class T >
double vgl_distance_to_linesegment (T x1, T y1, T x2, T y2, T x, T y)
 Distance between point (x,y) and closest point on line segment (x1,y1)-(x2,y2).
template<class T >
double vgl_distance2_to_linesegment (T x1, T y1, T x2, T y2, T x, T y)
 Squared distance between point (x,y) and closest point on line segment (x1,y1)-(x2,y2).
template<class T >
double vgl_distance_to_linesegment (T x1, T y1, T z1, T x2, T y2, T z2, T x, T y, T z)
 Distance between point (x,y,z) and closest point on line segment (x1,y1,z1)-(x2,y2,z2).
template<class T >
double vgl_distance2_to_linesegment (T x1, T y1, T z1, T x2, T y2, T z2, T x, T y, T z)
 Squared distance between point (x,y,z) and closest point on line segment (x1,y1,z1)-(x2,y2,z2).
template<class T >
double vgl_distance_to_non_closed_polygon (T const px[], T const py[], unsigned n, T x, T y)
template<class T >
double vgl_distance_to_closed_polygon (T const px[], T const py[], unsigned n, T x, T y)
template<class T >
double vgl_distance_to_non_closed_polygon (T const px[], T const py[], T const pz[], unsigned int n, T x, T y, T z)
 Distance between point (x,y,z) and closest point on open polygon (px[i],py[i],pz[i]).
template<class T >
double vgl_distance_to_closed_polygon (T const px[], T const py[], T const pz[], unsigned int n, T x, T y, T z)
 Distance between point (x,y,z) and closest point on closed polygon (px[i],py[i]),pz[i].
template<class T >
double vgl_distance_origin (vgl_homg_line_2d< T > const &l)
 find the shortest distance of the line to the origin.
template<class T >
double vgl_distance_origin (vgl_line_2d< T > const &l)
 find the shortest distance of the line to the origin.
template<class T >
double vgl_distance_origin (vgl_homg_plane_3d< T > const &pl)
 find the shortest distance of the plane to the origin.
template<class T >
double vgl_distance_origin (vgl_plane_3d< T > const &pl)
 find the shortest distance of the plane to the origin.
template<class T >
double vgl_distance_origin (vgl_homg_line_3d_2_points< T > const &l)
 find the shortest distance of the line to the origin.
template<class T >
double vgl_distance_origin (vgl_line_3d_2_points< T > const &l)
 find the shortest distance of the line to the origin.
template<class T >
double vgl_distance (vgl_homg_point_1d< T >const &p1, vgl_homg_point_1d< T >const &p2)
 return the distance between two points.
template<class T >
double vgl_distance (vgl_line_2d< T > const &l, vgl_point_2d< T > const &p)
 return the perpendicular distance from a point to a line in 2D.
template<class T >
double vgl_distance (vgl_homg_line_2d< T > const &l, vgl_homg_point_2d< T > const &p)
 return the perpendicular distance from a point to a line in 2D.
template<class T >
double vgl_distance (vgl_plane_3d< T > const &l, vgl_point_3d< T > const &p)
 return the perpendicular distance from a point to a plane in 3D.
template<class T >
double vgl_distance (vgl_homg_plane_3d< T > const &l, vgl_homg_point_3d< T > const &p)
 return the perpendicular distance from a point to a plane in 3D.
template<class T >
double vgl_distance (vgl_polygon< T > const &poly, vgl_point_2d< T > const &point, bool closed)
 distance between a point and the closest point on the polygon.
template<class T >
double vgl_distance (vgl_homg_line_3d_2_points< T > const &line1, vgl_homg_line_3d_2_points< T > const &line2)
 Return the perpendicular distance between two lines in 3D.
template<class T >
double vgl_distance (vgl_homg_line_3d_2_points< T > const &l, vgl_homg_point_3d< T > const &p)
 Return the perpendicular distance from a point to a line in 3D.
template<class T >
double vgl_distance (vgl_line_3d_2_points< T > const &l, vgl_point_3d< T > const &p)
 Return the perpendicular distance from a point to a line in 3D.
template<class T >
double vgl_distance (vgl_line_segment_2d< T > const &l, vgl_point_2d< T > const &p)
 Closest distance from a point p to a line segment l in 2D.
template<class T >
double vgl_distance (vgl_line_segment_3d< T > const &l, vgl_point_3d< T > const &p)
 Closest distance from a point p to a line segment l in 3D.
template<class T >
double vgl_distance (vgl_ray_3d< T > const &r, vgl_point_3d< T > const &p)
 return the closest distance from a point to a ray.

Detailed Description

Author:
fsm

Definition in file vgl_distance.txx.


Define Documentation

#define VGL_DISTANCE_INSTANTIATE (   T)

Definition at line 336 of file vgl_distance.txx.

#define vgl_distance_txx_

Definition at line 3 of file vgl_distance.txx.


Function Documentation

template<class T >
double vgl_distance ( vgl_homg_point_1d< T >const &  p1,
vgl_homg_point_1d< T >const &  p2 
)

return the distance between two points.

Definition at line 213 of file vgl_distance.txx.

template<class T >
double vgl_distance ( vgl_line_2d< T > const &  l,
vgl_point_2d< T > const &  p 
)

return the perpendicular distance from a point to a line in 2D.

Definition at line 220 of file vgl_distance.txx.

template<class T >
double vgl_distance ( vgl_homg_line_2d< T > const &  l,
vgl_homg_point_2d< T > const &  p 
)

return the perpendicular distance from a point to a line in 2D.

Definition at line 228 of file vgl_distance.txx.

template<class T >
double vgl_distance ( vgl_plane_3d< T > const &  l,
vgl_point_3d< T > const &  p 
)

return the perpendicular distance from a point to a plane in 3D.

Definition at line 236 of file vgl_distance.txx.

template<class T >
double vgl_distance ( vgl_homg_plane_3d< T > const &  l,
vgl_homg_point_3d< T > const &  p 
)

return the perpendicular distance from a point to a plane in 3D.

Definition at line 244 of file vgl_distance.txx.

template<class T >
double vgl_distance ( vgl_polygon< T > const &  poly,
vgl_point_2d< T > const &  point,
bool  closed = true 
)

distance between a point and the closest point on the polygon.

If the third argument is "false", the edge from last to first point of each polygon sheet is not considered part of the polygon.

Definition at line 252 of file vgl_distance.txx.

template<class T >
double vgl_distance ( vgl_homg_line_3d_2_points< T > const &  line1,
vgl_homg_line_3d_2_points< T > const &  line2 
)

Return the perpendicular distance between two lines in 3D.

See vgl_closest_point.h for more information.

Definition at line 281 of file vgl_distance.txx.

template<class T >
double vgl_distance ( vgl_homg_line_3d_2_points< T > const &  l,
vgl_homg_point_3d< T > const &  p 
)

Return the perpendicular distance from a point to a line in 3D.

See vgl_closest_point.h for more information.

Definition at line 294 of file vgl_distance.txx.

template<class T >
double vgl_distance ( vgl_line_3d_2_points< T > const &  l,
vgl_point_3d< T > const &  p 
)

Return the perpendicular distance from a point to a line in 3D.

See vgl_closest_point.h for more information.

Definition at line 302 of file vgl_distance.txx.

template<class T >
double vgl_distance ( vgl_line_segment_2d< T > const &  l,
vgl_point_2d< T > const &  p 
)

Closest distance from a point p to a line segment l in 2D.

See also:
vgl_distance_to_linesegment()
vgl_distance2_to_linesegment()

Definition at line 310 of file vgl_distance.txx.

template<class T >
double vgl_distance ( vgl_line_segment_3d< T > const &  l,
vgl_point_3d< T > const &  p 
)

Closest distance from a point p to a line segment l in 3D.

See also:
vgl_distance_to_linesegment()
vgl_distance2_to_linesegment()

Definition at line 319 of file vgl_distance.txx.

template<class T >
double vgl_distance ( vgl_ray_3d< T > const &  r,
vgl_point_3d< T > const &  p 
)

return the closest distance from a point to a ray.

Definition at line 329 of file vgl_distance.txx.

template<class T >
double vgl_distance2_to_linesegment ( x1,
y1,
x2,
y2,
x,
y 
)

Squared distance between point (x,y) and closest point on line segment (x1,y1)-(x2,y2).

Definition at line 39 of file vgl_distance.txx.

template<class T >
double vgl_distance2_to_linesegment ( x1,
y1,
z1,
x2,
y2,
z2,
x,
y,
z 
)

Squared distance between point (x,y,z) and closest point on line segment (x1,y1,z1)-(x2,y2,z2).

Definition at line 74 of file vgl_distance.txx.

template<class T >
double vgl_distance_origin ( vgl_homg_line_2d< T > const &  l)

find the shortest distance of the line to the origin.

Definition at line 171 of file vgl_distance.txx.

template<class T >
double vgl_distance_origin ( vgl_line_2d< T > const &  l)

find the shortest distance of the line to the origin.

Definition at line 178 of file vgl_distance.txx.

template<class T >
double vgl_distance_origin ( vgl_homg_plane_3d< T > const &  pl)

find the shortest distance of the plane to the origin.

Definition at line 185 of file vgl_distance.txx.

template<class T >
double vgl_distance_origin ( vgl_plane_3d< T > const &  pl)

find the shortest distance of the plane to the origin.

Definition at line 192 of file vgl_distance.txx.

template<class T >
double vgl_distance_origin ( vgl_homg_line_3d_2_points< T > const &  l)

find the shortest distance of the line to the origin.

Definition at line 199 of file vgl_distance.txx.

template<class T >
double vgl_distance_origin ( vgl_line_3d_2_points< T > const &  l)

find the shortest distance of the line to the origin.

Definition at line 206 of file vgl_distance.txx.

template<class T >
double vgl_distance_to_closed_polygon ( T const  px[],
T const  py[],
unsigned  n,
x,
y 
)

Definition at line 120 of file vgl_distance.txx.

template<class T >
double vgl_distance_to_closed_polygon ( T const  px[],
T const  py[],
T const  pz[],
unsigned int  n,
x,
y,
z 
)

Distance between point (x,y,z) and closest point on closed polygon (px[i],py[i]),pz[i].

Definition at line 153 of file vgl_distance.txx.

template<class T >
double vgl_distance_to_linesegment ( x1,
y1,
x2,
y2,
x,
y 
)

Distance between point (x,y) and closest point on line segment (x1,y1)-(x2,y2).

Definition at line 31 of file vgl_distance.txx.

template<class T >
double vgl_distance_to_linesegment ( x1,
y1,
z1,
x2,
y2,
z2,
x,
y,
z 
)

Distance between point (x,y,z) and closest point on line segment (x1,y1,z1)-(x2,y2,z2).

Definition at line 66 of file vgl_distance.txx.

template<class T >
double vgl_distance_to_non_closed_polygon ( T const  px[],
T const  py[],
unsigned  n,
x,
y 
)

Definition at line 105 of file vgl_distance.txx.

template<class T >
double vgl_distance_to_non_closed_polygon ( T const  px[],
T const  py[],
T const  pz[],
unsigned int  n,
x,
y,
z 
)

Distance between point (x,y,z) and closest point on open polygon (px[i],py[i],pz[i]).

Definition at line 138 of file vgl_distance.txx.