• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1[/============================================================================
2  Boost.Geometry (aka GGL, Generic Geometry Library)
3
4  Copyright (c) 2009-2012 Mateusz Loskot, London, UK.
5  Copyright (c) 2009-2012 Barend Gehrels, Amsterdam, the Netherlands.
6  Copyright (c) 2009-2012 Bruno Lalande, Paris, France.
7
8  Use, modification and distribution is subject to the Boost Software License,
9  Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at
10  http://www.boost.org/LICENSE_1_0.txt)
11=============================================================================/]
12
13[section:concept_multi_polygon MultiPolygon Concept]
14
15[heading Description]
16[concept MultiPolygon..multi polygon]
17
18[heading Concept Definition]
19
20The MultiPolygon Concept is defined as following:
21
22* There must be a specialization of the metafunction `traits::tag`, defining `multi_polygon_tag` as type
23* It must behave like a Boost.Range Random Access Range
24* The type defined by the metafunction `range_value<...>::type` must fulfill
25	the [link geometry.reference.concepts.concept_polygon Polygon Concept]
26
27[heading Rules]
28
29Besides the Concepts, which are checks on compile-time, there are
30rules that valid MultiPolygons must fulfill. See the
31[link geometry.reference.concepts.concept_polygon Polygon Concept] for more information
32on the rules a polygon (and also a multi polygon) must fulfill.
33
34Additionally:
35
36* Individual polygons making up a multi-polygon may not intersect each other,
37    but tangencies are allowed.
38* One polygon might be located within the interior ring of another polygon.
39
40[heading Available Models]
41* [link geometry.reference.models.model_multi_polygon model::multi_polygon]
42
43
44[endsect]
45