[/============================================================================
  Boost.Geometry (aka GGL, Generic Geometry Library)

  Copyright (c) 2007-2013 Barend Gehrels, Amsterdam, the Netherlands.
  Copyright (c) 2008-2013 Bruno Lalande, Paris, France.
  Copyright (c) 2009-2013 Mateusz Loskot, London, UK.

  Use, modification and distribution is subject to the Boost Software License,
  Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at
  http://www.boost.org/LICENSE_1_0.txt)
=============================================================================/]


[/ Generated by doxygen_xml2qbk 1.1.1, don't change, will be overwritten automatically]
[/ Generated from doxy/doxygen_output/xml/group__within.xml]
[section:within_2 within]

'''<indexterm><primary>within</primary></indexterm>'''
Checks if the first geometry is completely inside the second geometry. 

[heading Description]
The free function within checks if the first geometry is completely inside the second geometry. 

[heading Synopsis]
``template<typename Geometry1, typename Geometry2>
bool within(Geometry1 const & geometry1, Geometry2 const & geometry2)``

[heading Parameters]

[table
[[Type] [Concept] [Name] [Description] ]
[[Geometry1 const &] [Any type fulfilling a Geometry Concept ] [geometry1] [A model of the specified concept which might be within the second geometry ]]
[[Geometry2 const &] [Any type fulfilling a Geometry Concept ] [geometry2] [A model of the specified concept which might contain the first geometry ]]
]


[heading Returns]
true if geometry1 is completely contained within geometry2, else false 

[heading Header]
Either

`#include <boost/geometry.hpp>`


Or

`#include <boost/geometry/algorithms/within.hpp>`

[include reference/algorithms/within.qbk]
[heading Example]
[within]
[within_output]


[endsect]

[section:within_3_with_strategy within (with strategy)]

'''<indexterm><primary>within</primary></indexterm>'''
Checks if the first geometry is completely inside the second geometry using the specified strategy. 

[heading Description]
The free function within checks if the first geometry is completely inside the second geometry, using the specified strategy. Reasons to specify a strategy include: use another coordinate system for calculations; construct the strategy beforehand (e.g. with the radius of the Earth); select a strategy when there are more than one available for a calculation. 

[heading Synopsis]
``template<typename Geometry1, typename Geometry2, typename Strategy>
bool within(Geometry1 const & geometry1, Geometry2 const & geometry2, Strategy const & strategy)``

[heading Parameters]

[table
[[Type] [Concept] [Name] [Description] ]
[[Geometry1 const &] [Any type fulfilling a Geometry Concept ] [geometry1] [A model of the specified concept which might be within the second geometry ]]
[[Geometry2 const &] [Any type fulfilling a Geometry Concept ] [geometry2] [A model of the specified concept which might contain the first geometry ]]
[[Strategy const &] [] [strategy] [strategy to be used ]]
]


[heading Returns]
true if geometry1 is completely contained within geometry2, else false

[heading Header]
Either

`#include <boost/geometry.hpp>`


Or

`#include <boost/geometry/algorithms/within.hpp>`

[include reference/algorithms/within.qbk]
[heading Available Strategies]
* [link geometry.reference.strategies.strategy_within_winding Winding (coordinate system agnostic)]
* [link geometry.reference.strategies.strategy_within_franklin Franklin (cartesian)]
* [link geometry.reference.strategies.strategy_within_crossings_multiply Crossings Multiply (cartesian)]

[heading Example]
[within_strategy]
[within_strategy_output]


[endsect]

