mirror of
https://github.com/boostorg/geometry.git
synced 2025-05-09 23:24:02 +00:00
118 lines
5.0 KiB
Plaintext
118 lines
5.0 KiB
Plaintext
[/============================================================================
|
|
Boost.Geometry (aka GGL, Generic Geometry Library)
|
|
|
|
Copyright (c) 2009-2011 Barend Gehrels, Geodan, Amsterdam, the Netherlands.
|
|
Copyright (c) 2009-2011 Mateusz Loskot (mateusz@loskot.net)
|
|
Copyright (c) 2009-2011 Bruno Lalande, Paris, France.
|
|
|
|
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, don't change, will be overwritten automatically]
|
|
[/ Generated from doxy/doxygen_output/xml/group__intersection.xml]
|
|
[section:intersection intersection]
|
|
|
|
Calculate the intersection of two geometries.
|
|
|
|
[heading Description]
|
|
The free function intersection calculates the spatial set theoretic intersection of two geometries.
|
|
|
|
[heading Synopsis]
|
|
``template<typename Geometry1, typename Geometry2, typename GeometryOut>
|
|
bool intersection(Geometry1 const & geometry1, Geometry2 const & geometry2, GeometryOut & geometry_out)``
|
|
|
|
[heading Parameters]
|
|
|
|
[table
|
|
[[Type] [Concept] [Name] [Description] ]
|
|
[[Geometry1 const &] [Any type fulfilling a Geometry Concept ] [geometry1] [A model of the specified concept ]]
|
|
[[Geometry2 const &] [Any type fulfilling a Geometry Concept ] [geometry2] [A model of the specified concept ]]
|
|
[[GeometryOut &] [Collection of geometries (e.g. std::vector, std::deque, boost::geometry::multi*) of which the value_type fulfills a Point, LineString or Polygon concept, or it is the output geometry (e.g. for a box) ] [geometry_out] [The output geometry, either a multi_point, multi_polygon, multi_linestring, or a box (for intersection of two boxes)]]
|
|
]
|
|
|
|
|
|
[heading Header]
|
|
Either
|
|
|
|
`#include <boost/geometry/geometry.hpp>`
|
|
|
|
Or
|
|
|
|
`#include <boost/geometry/algorithms/intersection.hpp>`
|
|
|
|
[include reference/algorithms/intersection.qbk]
|
|
|
|
|
|
[endsect]
|
|
|
|
[section:intersection_inserter_3 intersection_inserter]
|
|
|
|
Calculate the intersection of two geometries.
|
|
|
|
[heading Description]
|
|
The free function intersection\u005finserter calculates the spatial set theoretic intersection of two geometries. This version with the \u005finserter suffix outputs the intersection to an output iterator, and a template parameter must therefore be specified in the call.
|
|
|
|
[heading Synopsis]
|
|
``template<typename GeometryOut, typename Geometry1, typename Geometry2, typename OutputIterator>
|
|
OutputIterator intersection_inserter(Geometry1 const & geometry1, Geometry2 const & geometry2, OutputIterator out)``
|
|
|
|
[heading Parameters]
|
|
|
|
[table
|
|
[[Type] [Concept] [Name] [Description] ]
|
|
[[GeometryOut] [A type fulfilling a Point, LineString or Polygon Concept ] [ - ] [Must be specified]]
|
|
[[Geometry1 const &] [Any type fulfilling a Geometry Concept ] [geometry1] [A model of the specified concept ]]
|
|
[[Geometry2 const &] [Any type fulfilling a Geometry Concept ] [geometry2] [A model of the specified concept ]]
|
|
[[OutputIterator] [A valid output iterator type, accepting geometries of Point, LineString or Polygon Concept ] [out] [The output iterator, to which intersection geometries are feeded ]]
|
|
]
|
|
|
|
|
|
[heading Returns]
|
|
The output iterator
|
|
|
|
[heading Header]
|
|
`#include <boost/geometry/algorithms/intersection_inserter.hpp>`
|
|
|
|
[include reference/algorithms/intersection.qbk]
|
|
|
|
|
|
[endsect]
|
|
|
|
[section:intersection_inserter_4_with_strategy intersection_inserter (with strategy)]
|
|
|
|
Calculate the intersection of two geometries using the specified strategy.
|
|
|
|
[heading Description]
|
|
The free function intersection\u005finserter calculates the spatial set theoretic intersection of two geometries using the specified strategy. This version with the \u005finserter suffix outputs the intersection to an output iterator, and a template parameter must therefore be specified in the call.
|
|
|
|
[heading Synopsis]
|
|
``template<typename GeometryOut, typename Geometry1, typename Geometry2, typename OutputIterator, typename Strategy>
|
|
OutputIterator intersection_inserter(Geometry1 const & geometry1, Geometry2 const & geometry2, OutputIterator out, Strategy const & strategy)``
|
|
|
|
[heading Parameters]
|
|
|
|
[table
|
|
[[Type] [Concept] [Name] [Description] ]
|
|
[[GeometryOut] [A type fulfilling a Point, LineString or Polygon Concept ] [ - ] [Must be specified]]
|
|
[[Geometry1 const &] [Any type fulfilling a Geometry Concept ] [geometry1] [A model of the specified concept ]]
|
|
[[Geometry2 const &] [Any type fulfilling a Geometry Concept ] [geometry2] [A model of the specified concept ]]
|
|
[[OutputIterator] [A valid output iterator type, accepting geometries of Point, LineString or Polygon Concept ] [out] [The output iterator, to which intersection geometries are feeded ]]
|
|
[[Strategy const &] [Compound strategy for segment intersection ] [strategy] [The strategy which will be used for intersection calculations ]]
|
|
]
|
|
|
|
|
|
[heading Returns]
|
|
The output iterator
|
|
|
|
[heading Header]
|
|
`#include <boost/geometry/algorithms/intersection_inserter.hpp>`
|
|
|
|
[include reference/algorithms/intersection.qbk]
|
|
|
|
|
|
[endsect]
|
|
|