Boost C++ Libraries

...one of the most highly regarded and expertly designed C++ library projects in the world. Herb Sutter and Andrei Alexandrescu, C++ Coding Standards

Click here to view the latest version of this page.
PrevUpHomeNext

Reference matrix

Geometry Concepts

0-dimensional

Point
MultiPoint

1-dimensional

Segment
Linestring
MultiLinestring

2-dimensional

Box
Ring
Polygon
MultiPolygon

Geometry Models

0-dimensional

point
point_xy
multi_point

1-dimensional

linestring
multi_linestring
segment
referring_segment

2-dimensional

box
ring
polygon
multi_polygon

0-dimensional (adapted)

Boost.Array
Boost.Fusion
Boost.Polygon's point_data
Boost.Tuple
C arrays

1-dimensional (adapted)

2-dimensional (adapted)

Boost.Polygon's rectangle_data
Boost.Polygon's polygon_data
Boost.Polygon's polygon_with_holes_data

0-dimensional (macro's for adaption)

BOOST_GEOMETRY_REGISTER_POINT_2D
BOOST_GEOMETRY_REGISTER_POINT_2D_CONST
BOOST_GEOMETRY_REGISTER_POINT_2D_GET_SET
BOOST_GEOMETRY_REGISTER_POINT_3D
BOOST_GEOMETRY_REGISTER_POINT_3D_CONST
BOOST_GEOMETRY_REGISTER_POINT_3D_GET_SET
BOOST_GEOMETRY_REGISTER_MULTI_POINT
BOOST_GEOMETRY_REGISTER_MULTI_POINT_TEMPLATED

1-dimensionial (macro's for adaption)

BOOST_GEOMETRY_REGISTER_LINESTRING
BOOST_GEOMETRY_REGISTER_LINESTRING_TEMPLATED
BOOST_GEOMETRY_REGISTER_MULTI_LINESTRING
BOOST_GEOMETRY_REGISTER_MULTI_LINESTRING_TEMPLATED

2-dimensional (macro's for adaption)

BOOST_GEOMETRY_REGISTER_BOX
BOOST_GEOMETRY_REGISTER_BOX_2D_4VALUES
BOOST_GEOMETRY_REGISTER_BOX_TEMPLATED
BOOST_GEOMETRY_REGISTER_RING
BOOST_GEOMETRY_REGISTER_RING_TEMPLATED
BOOST_GEOMETRY_REGISTER_MULTI_POLYGON
BOOST_GEOMETRY_REGISTER_MULTI_POLYGON_TEMPLATED

Core

Metafunctions

cs_tag
closure
coordinate_type
coordinate_system
dimension
interior_type
is_radian
point_order
point_type
ring_type
tag
tag_cast

Access Functions

get
set
exterior_ring
interior_rings

Classes

exception
centroid_exception

Constants

Coordinate Systems

Numeric

max_corner
min_corner
order_selector
closure_selector

Types

degree
radian

Classes

cs::cartesian
cs::spherical
cs::spherical_equatorial
cs::geographic

Iterators

Views

closing_iterator
ever_circling_iterator
box_view
segment_view
closeable_view
reversible_view
identity_view

Algorithms

Geometry Constructors

make
make_inverse
make_zero

Predicates

disjoint
equals
intersects
overlaps
within

Append

append

Area

area

Assign

assign
assign_inverse
assign_zero
assign_points
assign_values ( 2 3 4 coordinate values)

Centroid

centroid

Clear

clear

Convert

convert

Convex Hull

convex_hull

Correct

correct

Distance

distance

Difference

difference
sym_difference

Envelope

envelope

Expand

expand

For Each

for each (point, segment)

Intersection

intersection

Length

length

Num_ (counting)

num_interior_rings
num_geometries
num_points

Perimeter

perimeter

Reverse

reverse

Simplify

simplify

Transform

transform

Union

union

Unique

unique

Strategies

Area

strategy::area::surveyor
strategy::area::huiller

Centroid

strategy::centroid::bashein_detmer
strategy::centroid::centroid_average
 

Distance

strategy::distance::projected_point
strategy::distance::pythagoras
strategy::distance::cross_track
strategy::distance::haversine

Convex Hull

strategy::convex_hull::graham_andrew
 

Side

strategy::side::side_by_triangle
strategy::side::side_by_cross_track
strategy::side::spherical_side_formula

Simplify

strategy::simplify::douglas_peucker
 

Transform

strategy::transform::inverse_transformer
strategy::transform::map_transformer
strategy::transform::ublas_transformer
strategy::transform::translate_transformer
strategy::transform::scale_transformer
strategy::transform::rotate_transformer

Within

strategy::winding
strategy::crossings_multiply
strategy::franklin
 

Arithmetic

Add

add_point
add_value

Subtract

subtract_point
subtract_value

Multiply

multiply_point
multiply_value

Divide

divide_point
divide_value

Products

dot_product

PrevUpHomeNext