mirror of
https://github.com/boostorg/geometry.git
synced 2025-05-11 21:44:04 +00:00
115 lines
4.9 KiB
Plaintext
115 lines
4.9 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, it 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 ref/algorithms/intersection.qbk]
|
|
|
|
[endsect]
|
|
|
|
[section:intersection_inserter_3 intersection_inserter]
|
|
|
|
Calculate the intersection of two geometries.
|
|
|
|
[heading Description]
|
|
The free function intersection_inserter calculates the spatial set theoretic intersection of two geometries. This version with the _inserter 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 ref/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_inserter calculates the spatial set theoretic intersection of two geometries using the specified strategy. This version with the _inserter 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 intersection ] [strategy] [The strategy ]]
|
|
]
|
|
|
|
|
|
[heading Returns]
|
|
The output iterator
|
|
|
|
[heading Header]
|
|
`#include <boost/geometry/algorithms/intersection_inserter.hpp>`
|
|
|
|
[include ref/algorithms/intersection.qbk]
|
|
|
|
[endsect]
|
|
|