Boost  v1.57.0
doxygen for www.boost.org
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages
boost::geometry::strategy::buffer::distance_asymmetric< NumericType > Class Template Reference

Let the buffer for linestrings be asymmetric. More...

#include <buffer_distance_asymmetric.hpp>

Public Member Functions

 distance_asymmetric (NumericType const &left, NumericType const &right)
 Constructs the strategy, two distances must be specified. More...
 
template<typename Point >
NumericType apply (Point const &, Point const &, buffer_side_selector side) const
 Returns the distance-value for the specified side. More...
 
int factor () const
 Used internally, returns -1 for deflate, 1 for inflate. More...
 
bool negative () const
 Returns true if both distances are negative. More...
 
template<typename JoinStrategy , typename EndStrategy >
NumericType max_distance (JoinStrategy const &join_strategy, EndStrategy const &end_strategy) const
 Returns the max distance distance up to the buffer will reach. More...
 
NumericType simplify_distance () const
 Returns the distance at which the input is simplified before the buffer process. More...
 

Detailed Description

template<typename NumericType>
class boost::geometry::strategy::buffer::distance_asymmetric< NumericType >

Let the buffer for linestrings be asymmetric.

Template Parameters
NumericType

This strategy can be used as DistanceStrategy for the buffer algorithm. It can be applied for (multi)linestrings. It uses a (potentially) different distances for left and for right. This means the (multi)linestrings are interpreted having a direction.

{ [heading Example] [buffer_distance_asymmetric] [heading Output] [$img/strategies/buffer_distance_asymmetric.png] [heading See also]

  • [link geometry.reference.algorithms.buffer.buffer_7_with_strategies buffer (with strategies)]
  • [link geometry.reference.strategies.strategy_buffer_distance_symmetric distance_symmetric] }

Constructor & Destructor Documentation

template<typename NumericType >
boost::geometry::strategy::buffer::distance_asymmetric< NumericType >::distance_asymmetric ( NumericType const &  left,
NumericType const &  right 
)
inline

Constructs the strategy, two distances must be specified.

Parameters
leftThe distance (or radius) of the buffer on the left side
rightThe distance on the right side

Member Function Documentation

template<typename NumericType >
template<typename Point >
NumericType boost::geometry::strategy::buffer::distance_asymmetric< NumericType >::apply ( Point const &  ,
Point const &  ,
buffer_side_selector  side 
) const
inline
template<typename NumericType >
int boost::geometry::strategy::buffer::distance_asymmetric< NumericType >::factor ( ) const
inline

Used internally, returns -1 for deflate, 1 for inflate.

References boost::geometry::strategy::buffer::distance_asymmetric< NumericType >::negative().

template<typename NumericType >
template<typename JoinStrategy , typename EndStrategy >
NumericType boost::geometry::strategy::buffer::distance_asymmetric< NumericType >::max_distance ( JoinStrategy const &  join_strategy,
EndStrategy const &  end_strategy 
) const
inline

Returns the max distance distance up to the buffer will reach.

References boost::geometry::math::abs(), boost::bimaps::support::left, boost::accumulators::extract::max, and boost::icl::right().

template<typename NumericType >
bool boost::geometry::strategy::buffer::distance_asymmetric< NumericType >::negative ( ) const
inline
template<typename NumericType >
NumericType boost::geometry::strategy::buffer::distance_asymmetric< NumericType >::simplify_distance ( ) const
inline

Returns the distance at which the input is simplified before the buffer process.

References boost::geometry::math::abs(), boost::bimaps::support::left, boost::accumulators::extract::min, and boost::icl::right().


The documentation for this class was generated from the following file: