public

Inheritance Graph

graph BT
	_LineBase
	click _LineBase "classGeometry_1_1__LineBase"

Description

The common abstract base class for Lines, Rays and Segments.

Construction

   
   
  _LineBase(vec_t _origin, vec_t _direction, value_t _minParam, value_t _maxParam)

Information

   
   
value_t getMinParam() const
   
value_t getMaxParam() const
   
const vec_t & getDirection() const
   
const vec_t & getOrigin() const
   
vec_t getPoint( value_t t) const
   
vec_t getClosestPoint(const vec_t & p) const
   
value_t distance(const vec_t & p) const
   
bool operator==(const impl_t & other) const

Modification

   
   
void _setDirection(const vec_t & newDirection)
   
void _setOrigin(const vec_t & newOrigin)
   
void _normalize()

Serialization

 
 
 

Public Types

   
   
typedef _impl_t< vec_t > impl_t
   
typedef vec_t::value_t value_t

Documentation

function
Geometry::_LineBase::_LineBase

protected inline
     
     
_LineBase( vec_t _origin,
  vec_t _direction,
  value_t _minParam,
  value_t _maxParam
)    

Defined in Geometry/Line.h:37


function
Geometry::_LineBase::getMinParam

public const inline
   
   
value_t getMinParam( ) const

Defined in Geometry/Line.h:45


function
Geometry::_LineBase::getMaxParam

public const inline
   
   
value_t getMaxParam( ) const

Defined in Geometry/Line.h:48


function
Geometry::_LineBase::getDirection

public const inline
   
   
const vec_t & getDirection( ) const

Defined in Geometry/Line.h:51


function
Geometry::_LineBase::getOrigin

public const inline
   
   
const vec_t & getOrigin( ) const

Defined in Geometry/Line.h:54


function
Geometry::_LineBase::getPoint

public const inline
     
     
vec_t getPoint( value_t t ) const

Return an arbitrary point on the line.

Parameters

t
Parameter specifying the point. Iftis not in the interval [minParam,maxParam], the smallest/greatest valid value is used.

Returns

Point p fulfilling p =origin+direction*t.

Defined in Geometry/Line.h:65


function
Geometry::_LineBase::getClosestPoint

public const inline
     
     
vec_t getClosestPoint( const vec_t & p ) const

Return the point on the line that has minimal distance to the given point.

Note: The direction vector is required to have unit length.

Defined in Geometry/Line.h:71


function
Geometry::_LineBase::distance

public const inline
     
     
value_t distance( const vec_t & p ) const

Return the distance of the line to the given point.

Note: The direction vector is required to have unit length.

Defined in Geometry/Line.h:77


function
Geometry::_LineBase::operator==

public const inline
     
     
bool operator==( const impl_t & other ) const

Defined in Geometry/Line.h:80


function
Geometry::_LineBase::_setDirection

protected inline
     
     
void _setDirection( const vec_t & newDirection )

Specify a new direction for the line.

Note: The direction is required to have unit length for any distance calculation.

Parameters

newDirection
Normalized direction vector

Defined in Geometry/Line.h:94


function
Geometry::_LineBase::_setOrigin

protected inline
     
     
void _setOrigin( const vec_t & newOrigin )

Specify a new base vector for the line.

Parameters

newOrigin
Point vector

Defined in Geometry/Line.h:102


function
Geometry::_LineBase::_normalize

protected inline
   
   
void _normalize( )

Normalize the direction vector. This should be done before any distance calculation!

Defined in Geometry/Line.h:110


typedef
Geometry::_LineBase::impl_t

public
 
 
typedef _impl_t< vec_t > impl_t

Defined in Geometry/Line.h:26


typedef
Geometry::_LineBase::value_t

public
 
 
typedef vec_t::value_t value_t

Defined in Geometry/Line.h:27