| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=US-ASCII"> |
| <title>Release Notes</title> |
| <link rel="stylesheet" href="../../../../../doc/src/boostbook.css" type="text/css"> |
| <meta name="generator" content="DocBook XSL Stylesheets V1.78.1"> |
| <link rel="home" href="../index.html" title="Chapter 1. Geometry"> |
| <link rel="up" href="../index.html" title="Chapter 1. Geometry"> |
| <link rel="prev" href="examples/example_source_code__adapting_a_legacy_geometry_object_model.html" title="Example source code: Adapting a legacy geometry object model"> |
| <link rel="next" href="aboutdoc.html" title="About this Documentation"> |
| </head> |
| <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"> |
| <table cellpadding="2" width="100%"><tr> |
| <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../boost.png"></td> |
| <td align="center"><a href="../../../../../index.html">Home</a></td> |
| <td align="center"><a href="../../../../../libs/libraries.htm">Libraries</a></td> |
| <td align="center"><a href="http://www.boost.org/users/people.html">People</a></td> |
| <td align="center"><a href="http://www.boost.org/users/faq.html">FAQ</a></td> |
| <td align="center"><a href="../../../../../more/index.htm">More</a></td> |
| </tr></table> |
| <hr> |
| <div class="spirit-nav"> |
| <a accesskey="p" href="examples/example_source_code__adapting_a_legacy_geometry_object_model.html"><img src="../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../index.html"><img src="../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../index.html"><img src="../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="aboutdoc.html"><img src="../../../../../doc/src/images/next.png" alt="Next"></a> |
| </div> |
| <div class="section"> |
| <div class="titlepage"><div><div><h2 class="title" style="clear: both"> |
| <a name="geometry.release_notes"></a><a class="link" href="release_notes.html" title="Release Notes">Release Notes</a> |
| </h2></div></div></div> |
| <h4> |
| <a name="geometry.release_notes.h0"></a> |
| <span class="phrase"><a name="geometry.release_notes.boost_1_58"></a></span><a class="link" href="release_notes.html#geometry.release_notes.boost_1_58">Boost |
| 1.58</a> |
| </h4> |
| <p> |
| <span class="bold"><strong>Additional functionality</strong></span> |
| </p> |
| <div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "> |
| <li class="listitem"> |
| New algorithm num_segments, returning the number of segments of a geometry |
| </li> |
| <li class="listitem"> |
| New overload for is_valid algorithm, that takes a string reference as a |
| second argument and fills it with a message related to the validity or |
| invalidity of the geometry |
| </li> |
| <li class="listitem"> |
| New overload for is_valid algorithm, that takes an enum reference as a |
| second argument and fills it with a value related to the validity or invalidity |
| of the geometry |
| </li> |
| <li class="listitem"> |
| Disjoint and intersects support the following geometry combinations: point/multipoint, |
| multipoint/multipoint, multipoint/segment, multipoint/box |
| </li> |
| </ul></div> |
| <p> |
| <span class="bold"><strong>Improvements</strong></span> |
| </p> |
| <div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "> |
| <li class="listitem"> |
| Buffer now supports flat-ends for linestrings with a bend close to the |
| start (such that buffered segment crosses flat-end). |
| </li> |
| <li class="listitem"> |
| Buffer performance is improved significantly |
| </li> |
| <li class="listitem"> |
| Partition performance is improved significantly for polygons, potentially |
| enhancing all overlay operations |
| </li> |
| </ul></div> |
| <p> |
| <span class="bold"><strong>Solved tickets</strong></span> |
| </p> |
| <div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "> |
| <li class="listitem"> |
| <a href="https://svn.boost.org/trac/boost/ticket/8379" target="_top">8379</a> |
| Invalid comparison of the result of determinant |
| </li> |
| <li class="listitem"> |
| <a href="https://svn.boost.org/trac/boost/ticket/10108" target="_top">10108</a> |
| Error in overlay operations in specific cases where geometries touch at |
| one point |
| </li> |
| <li class="listitem"> |
| <a href="https://svn.boost.org/trac/boost/ticket/10201" target="_top">10201</a> |
| Suggestion to use different function to compare coordinates [wontfix] |
| </li> |
| <li class="listitem"> |
| <a href="https://svn.boost.org/trac/boost/ticket/10467" target="_top">10467</a> |
| Template parameter name coliding with B0 macro name defined in termios.h |
| </li> |
| <li class="listitem"> |
| <a href="https://svn.boost.org/trac/boost/ticket/10640" target="_top">10640</a> |
| Invalid result of buffer() for CCW Polygons. |
| </li> |
| <li class="listitem"> |
| <a href="https://svn.boost.org/trac/boost/ticket/10666" target="_top">10666</a> |
| MSVC compiler warning C4127: conditional expression is constant |
| </li> |
| <li class="listitem"> |
| <a href="https://svn.boost.org/trac/boost/ticket/10747" target="_top">10747</a> |
| Error in rescaling causing errors in areal/areal set operations |
| </li> |
| <li class="listitem"> |
| <a href="https://svn.boost.org/trac/boost/ticket/10770" target="_top">10770</a> |
| Buffer fails for large distances, or rough round joins, where concavities |
| where not intersected properly |
| </li> |
| <li class="listitem"> |
| <a href="https://svn.boost.org/trac/boost/ticket/10658" target="_top">10658</a> |
| sym_difference yields bad result for int polygons |
| </li> |
| <li class="listitem"> |
| <a href="https://svn.boost.org/trac/boost/ticket/10835" target="_top">10835</a> |
| Difference of multilinestring and polygon yields wrong result |
| </li> |
| <li class="listitem"> |
| <a href="https://svn.boost.org/trac/boost/ticket/10861" target="_top">10861</a> |
| Rtree failing to compile for Value being a pair or a tuple containing pointer |
| to Geometry and the default equal_to<> used |
| </li> |
| <li class="listitem"> |
| <a href="https://svn.boost.org/trac/boost/ticket/10863" target="_top">10863</a> |
| Template parameter name coliding with B0 macro name defined in termios.h |
| (duplicate of 10467) |
| </li> |
| <li class="listitem"> |
| <a href="https://svn.boost.org/trac/boost/ticket/10887" target="_top">10887</a> |
| Invalid result of within() and relate() for Linear/MultiPolygon |
| </li> |
| <li class="listitem"> |
| <a href="https://svn.boost.org/trac/boost/ticket/10890" target="_top">10890</a> |
| Invalid result of disjoint() for Point/Segment. |
| </li> |
| <li class="listitem"> |
| <a href="https://svn.boost.org/trac/boost/ticket/10904" target="_top">10904</a> |
| Invalid calculation of most significant Dimension of a segment in relate_cartesian_segments |
| strategy |
| </li> |
| <li class="listitem"> |
| <a href="https://svn.boost.org/trac/boost/ticket/10912" target="_top">10912</a> |
| Invalid result of within() and relate() for Areal/Areal |
| </li> |
| <li class="listitem"> |
| <a href="https://svn.boost.org/trac/boost/ticket/10951" target="_top">10951</a> |
| Tests failing on windows with intel compiler due to lack of /bigobj flag. |
| </li> |
| <li class="listitem"> |
| <a href="https://svn.boost.org/trac/boost/ticket/10957" target="_top">10957</a> |
| Assertion failure and invalid results of various relational operations. |
| </li> |
| <li class="listitem"> |
| <a href="https://svn.boost.org/trac/boost/ticket/10958" target="_top">10958</a> |
| Invalid results of disjoint() L/L and L/A. |
| </li> |
| <li class="listitem"> |
| <a href="https://svn.boost.org/trac/boost/ticket/10959" target="_top">10959</a> |
| Assertion failure in get_turns() used with no_rescale_policy. |
| </li> |
| <li class="listitem"> |
| <a href="https://svn.boost.org/trac/boost/ticket/10960" target="_top">10960</a> |
| Invalid result of get_turns() for L/A, missing turn. |
| </li> |
| <li class="listitem"> |
| <a href="https://svn.boost.org/trac/boost/ticket/10961" target="_top">10961</a> |
| Invalid result of get_turns() for L/A, invalid turn for a Linear spike. |
| </li> |
| <li class="listitem"> |
| <a href="https://svn.boost.org/trac/boost/ticket/11112" target="_top">11112</a> |
| Compilation failure on Solaris due to a CS name clash (used for a macro |
| on this platform) |
| </li> |
| <li class="listitem"> |
| <a href="https://svn.boost.org/trac/boost/ticket/11121" target="_top">11121</a> |
| Invalid result of difference() for integral coordinates |
| </li> |
| </ul></div> |
| <p> |
| <span class="bold"><strong>Bugfixes</strong></span> |
| </p> |
| <div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "> |
| <li class="listitem"> |
| Bug in multipoint/polygon multipoint/multipolygon distance computation |
| (wrong detection of points inside the areal geometry) |
| </li> |
| <li class="listitem"> |
| Bug in flatten_iterator's assignment operator causing an access violation |
| </li> |
| <li class="listitem"> |
| Bug in Cartesian segment-segment intersection strategy when one segment |
| degenerates to a point and is collinear to the other non-degenerate segment |
| </li> |
| <li class="listitem"> |
| Bug in centroid(), non-deterministic result if calculated for e.g. a Polygon |
| with zero-area. |
| </li> |
| <li class="listitem"> |
| Bug in buffers for joins with a limited number of points |
| </li> |
| <li class="listitem"> |
| Bug in buffers for round joins with limited number of points around sharp |
| corners |
| </li> |
| <li class="listitem"> |
| Bug in buffers for joins with large buffer distances |
| </li> |
| <li class="listitem"> |
| Bug in buffers for round ends with an odd number of points |
| </li> |
| <li class="listitem"> |
| Bug in buffers for flat ends with large buffer distances |
| </li> |
| <li class="listitem"> |
| Bug in buffers for interior rings with large negative buffer distances |
| </li> |
| <li class="listitem"> |
| Bug in closing_iterator not working properly when the input range is empty |
| </li> |
| <li class="listitem"> |
| Bug in is_simple, not handling properly closed simple linestrings within |
| multilinestrings |
| </li> |
| <li class="listitem"> |
| Bug in rtree constructors taking a pair of Iterators or a Range (packing |
| algorithm), the use of reference to destroyed temporary when Iterator's |
| reference is not true reference, e.g. for some of the Range Adaptors. It |
| also affects distance() and comparable_distance(). This bug may cause unexpected |
| behavior of the rtree or distance() algorithm, e.g. an assertion failure |
| or a SEGFAULT. |
| </li> |
| <li class="listitem"> |
| Bug in rtree count() member function, the use of reference to destroyed |
| temporary when object of type convertible but not the same as value_type |
| or indexable_type is passed. If this happens, wrong result may be returned, |
| in most cases 0. |
| </li> |
| <li class="listitem"> |
| Bugs related to the handling of Ranges, preventing compilation of Geometries |
| using non-Container Ranges in some algorithms (thanks to Samuel Debionne) |
| </li> |
| </ul></div> |
| <h4> |
| <a name="geometry.release_notes.h1"></a> |
| <span class="phrase"><a name="geometry.release_notes.boost_1_57"></a></span><a class="link" href="release_notes.html#geometry.release_notes.boost_1_57">Boost |
| 1.57</a> |
| </h4> |
| <p> |
| <span class="bold"><strong>Additional functionality</strong></span> |
| </p> |
| <p> |
| <span class="bold"><strong>Improvements</strong></span> |
| </p> |
| <div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "> |
| <li class="listitem"> |
| The support of parameters convertible to value_type in rtree insert(), |
| remove() and count() functions |
| </li> |
| <li class="listitem"> |
| Support for counterclockwise input/output in algorithm buffer |
| </li> |
| <li class="listitem"> |
| Support for open-geometry input in algorithm buffer (open output not yet |
| supported) |
| </li> |
| <li class="listitem"> |
| Support for degenerate input (point-like linestrings, polygons) in algorithm |
| buffer |
| </li> |
| </ul></div> |
| <p> |
| <span class="bold"><strong>Solved tickets</strong></span> |
| </p> |
| <div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "> |
| <li class="listitem"> |
| <a href="https://svn.boost.org/trac/boost/ticket/6443" target="_top">6443</a> |
| Wrong degenerated hulls returned by convex_hull(). |
| </li> |
| <li class="listitem"> |
| <a href="https://svn.boost.org/trac/boost/ticket/8402" target="_top">8402</a> |
| Implicit conversion warnings |
| </li> |
| <li class="listitem"> |
| <a href="https://svn.boost.org/trac/boost/ticket/9354" target="_top">9354</a> |
| Bug in winding strategy affecting within() and covered_by() for non-cartesian |
| coordinate systems |
| </li> |
| <li class="listitem"> |
| <a href="https://svn.boost.org/trac/boost/ticket/10177" target="_top">10177</a> |
| Missing include |
| </li> |
| <li class="listitem"> |
| <a href="https://svn.boost.org/trac/boost/ticket/10345" target="_top">10345</a> |
| Distance fails to compile for some coordinate types |
| </li> |
| <li class="listitem"> |
| <a href="https://svn.boost.org/trac/boost/ticket/10398" target="_top">10398</a> |
| Wrong neighbour check in buffer, calculating turns |
| </li> |
| <li class="listitem"> |
| <a href="https://svn.boost.org/trac/boost/ticket/10421" target="_top">10421</a> |
| Invalid Point-Box distance for spherical CS |
| </li> |
| <li class="listitem"> |
| <a href="https://svn.boost.org/trac/boost/ticket/10562" target="_top">10562</a> |
| Invalid number of Points in the result of convex_hull() for open output |
| </li> |
| <li class="listitem"> |
| <a href="https://svn.boost.org/trac/boost/ticket/10615" target="_top">10615</a> |
| Rtree constructor feature request |
| </li> |
| <li class="listitem"> |
| <a href="https://svn.boost.org/trac/boost/ticket/10643" target="_top">10643</a> |
| Invalid point_on_surface() result for big coordinates |
| </li> |
| <li class="listitem"> |
| <a href="https://svn.boost.org/trac/boost/ticket/10647" target="_top">10647</a> |
| Invalid result of disjoint() in some cases when polygon is inside inner |
| ring of other polygon |
| </li> |
| <li class="listitem"> |
| <a href="https://svn.boost.org/trac/boost/ticket/10668" target="_top">10668</a> |
| Implicit conversion warnings (duplicated 8402) |
| </li> |
| </ul></div> |
| <p> |
| <span class="bold"><strong>Bugfixes</strong></span> |
| </p> |
| <div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "> |
| <li class="listitem"> |
| Several fixes of bugs in algorithm buffer |
| </li> |
| <li class="listitem"> |
| Bug in point_on_surface() for CCW Polygons (extreme_points()) and numerical |
| issue (thanks to Matt Amos) |
| </li> |
| <li class="listitem"> |
| Bug in disjoint() for A/A fixed by replacement of point_on_surface() with |
| point_on_border() (thanks to Matt Amos) |
| </li> |
| <li class="listitem"> |
| The result of convex_hull(), duplicated Point in open output, too small |
| number of Points for 1- and 2-Point input |
| </li> |
| <li class="listitem"> |
| Imprecision for big coordinates in centroid(), fixed by Points translation |
| (related with ticket 10643) |
| </li> |
| <li class="listitem"> |
| for_each_segment() not taking into account the last segment of open Geometry |
| </li> |
| </ul></div> |
| <h4> |
| <a name="geometry.release_notes.h2"></a> |
| <span class="phrase"><a name="geometry.release_notes.boost_1_56"></a></span><a class="link" href="release_notes.html#geometry.release_notes.boost_1_56">Boost |
| 1.56</a> |
| </h4> |
| <p> |
| <span class="bold"><strong>Additional functionality</strong></span> |
| </p> |
| <div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "> |
| <li class="listitem"> |
| New algorithm buffer for inflating/deflating geometries (buffer itself |
| already existed but that was only to enlarge a box) |
| </li> |
| <li class="listitem"> |
| New algorithm remove_spikes, algorithm to remove spikes from a ring, polygon |
| or multi_polygon |
| </li> |
| <li class="listitem"> |
| New algorithm point_on_surface, generating a point lying on the surface |
| (interior) of the polygon |
| </li> |
| <li class="listitem"> |
| New algorithm is_simple, returning true if a geometry is simple according |
| to the OGC standard |
| </li> |
| <li class="listitem"> |
| New algorithm is_valid, returning true if a geometry is valid according |
| to the OGC standard |
| </li> |
| <li class="listitem"> |
| New algorithm crosses for checking this spatial relation according to the |
| OGC standard |
| </li> |
| <li class="listitem"> |
| The set operation algorithms (difference, intersection, sym_difference |
| and union_) now support as input pairs of pointlike or linear geometries |
| </li> |
| <li class="listitem"> |
| The distance and comparable_distance algorithms now support all pairs of |
| geometry combinations |
| </li> |
| <li class="listitem"> |
| The spatial relations which didn't support it (covered_by, touches, within, |
| etc.) now support as input linear and/or areal geometries |
| </li> |
| <li class="listitem"> |
| The support for boost::variants as input geometries in various algorithms |
| </li> |
| <li class="listitem"> |
| The rtree support for indexing segments |
| </li> |
| <li class="listitem"> |
| The rtree nearest() predicate support for arbitrary geometries |
| </li> |
| </ul></div> |
| <p> |
| <span class="bold"><strong>Improvements</strong></span> |
| </p> |
| <div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem"> |
| The rtree pack-creation algorithm optimization (thanks to Lu Wang) |
| </li></ul></div> |
| <p> |
| <span class="bold"><strong>Solved tickets</strong></span> |
| </p> |
| <div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "> |
| <li class="listitem"> |
| <a href="https://svn.boost.org/trac/boost/ticket/8310" target="_top">8310</a> |
| Wrong results with overlapping polygons (fixed using point_on_surface for |
| disjoint) |
| </li> |
| <li class="listitem"> |
| <a href="https://svn.boost.org/trac/boost/ticket/8375" target="_top">8375</a> |
| sym_difference of non-closed polygons returns closed polygon |
| </li> |
| <li class="listitem"> |
| <a href="https://svn.boost.org/trac/boost/ticket/8376" target="_top">8376</a> |
| difference of non-closed polygons returns closed polygon |
| </li> |
| <li class="listitem"> |
| <a href="https://svn.boost.org/trac/boost/ticket/9081" target="_top">9081</a> |
| Booleans create self-intersecting polygons from non-self-intersecting polygons |
| </li> |
| <li class="listitem"> |
| <a href="https://svn.boost.org/trac/boost/ticket/9245" target="_top">9245</a> |
| Check for process errors in make_qbk.py |
| </li> |
| <li class="listitem"> |
| <a href="https://svn.boost.org/trac/boost/ticket/9563" target="_top">9563</a> |
| (Sym)difference not successful, fixed by rescaling to robust type |
| </li> |
| <li class="listitem"> |
| <a href="https://svn.boost.org/trac/boost/ticket/9628" target="_top">9628</a> |
| Wrong result of within() due to the winding strategy not working correctly |
| for nearly-horizontal segments |
| </li> |
| <li class="listitem"> |
| <a href="https://svn.boost.org/trac/boost/ticket/9828" target="_top">9828</a> |
| boost::geometry::union_(...) creates redundant closing point |
| </li> |
| <li class="listitem"> |
| <a href="https://svn.boost.org/trac/boost/ticket/9871" target="_top">9871</a> |
| Remove spike in polygon with only a spike |
| </li> |
| <li class="listitem"> |
| <a href="https://svn.boost.org/trac/boost/ticket/9941" target="_top">9941</a> |
| Add support for touches(box, box) |
| </li> |
| <li class="listitem"> |
| <a href="https://svn.boost.org/trac/boost/ticket/9947" target="_top">9947</a> |
| Missing info about WKT in documentation |
| </li> |
| <li class="listitem"> |
| <a href="https://svn.boost.org/trac/boost/ticket/9759" target="_top">9759</a> |
| Invalid results of R-tree knn queries for non-cartesian coordinate systems |
| </li> |
| <li class="listitem"> |
| <a href="https://svn.boost.org/trac/boost/ticket/10019" target="_top">10019</a> |
| Difference of Linestring and Box returns their intersection |
| </li> |
| <li class="listitem"> |
| <a href="https://svn.boost.org/trac/boost/ticket/10077" target="_top">10077</a> |
| Wrong types in concept checks in boost/geometry/arithmetic/arithmetic.hpp |
| </li> |
| <li class="listitem"> |
| <a href="https://svn.boost.org/trac/boost/ticket/10234" target="_top">10234</a> |
| Wrong results of covered_by() for nearly-horizontal segments |
| </li> |
| </ul></div> |
| <p> |
| <span class="bold"><strong>Bugfixes</strong></span> |
| </p> |
| <div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "> |
| <li class="listitem"> |
| intersects(polygon) could return a self-intersection-point for its closing |
| point, fixed |
| </li> |
| <li class="listitem"> |
| equals() could return invalid results for non-simple linear geometries |
| according to the OGC standard, fixed |
| </li> |
| <li class="listitem"> |
| touches() didn't work properly for CCW areal geomtries, fixed |
| </li> |
| <li class="listitem"> |
| rtree nearest queries returned wrong elements for non-cartesian coordinate |
| systems, fixed |
| </li> |
| <li class="listitem"> |
| rtree crashed in some cases when used with Interprocess allocator, fixed |
| </li> |
| </ul></div> |
| <h4> |
| <a name="geometry.release_notes.h3"></a> |
| <span class="phrase"><a name="geometry.release_notes.boost_1_55"></a></span><a class="link" href="release_notes.html#geometry.release_notes.boost_1_55">Boost |
| 1.55</a> |
| </h4> |
| <p> |
| <span class="bold"><strong>Additional functionality</strong></span> |
| </p> |
| <div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "> |
| <li class="listitem"> |
| Added centroid for segment type |
| </li> |
| <li class="listitem"> |
| Added intersects() and disjoints() for Segment-Box and Linestring-Box |
| </li> |
| <li class="listitem"> |
| Added rtree creation using packing algorithm |
| </li> |
| <li class="listitem"> |
| Added contains() and covers() spatial query predicates |
| </li> |
| <li class="listitem"> |
| Added iterative queries |
| </li> |
| </ul></div> |
| <p> |
| <span class="bold"><strong>Documentation</strong></span> |
| </p> |
| <p> |
| <span class="bold"><strong>Bugfixes</strong></span> |
| </p> |
| <div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "> |
| <li class="listitem"> |
| In some cases .back() or .clear() was called, violating the usage of Concepts. |
| Fixed for the reported cases |
| </li> |
| <li class="listitem"> |
| Use consistent side information in cart_intersect and get_turn_info and |
| handle_tangencies and enrich_intersection_info. This is done by switching |
| to integer (if necessary) for the specific 6 points only, zooming in on |
| the 4 or 3 segments |
| </li> |
| </ul></div> |
| <p> |
| <span class="bold"><strong>Solved tickets</strong></span> |
| </p> |
| <div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "> |
| <li class="listitem"> |
| <a href="https://svn.boost.org/trac/boost/ticket/6958" target="_top">6958</a> |
| Intersection generates self-intersection. Caused by spike, fixed |
| </li> |
| <li class="listitem"> |
| <a href="https://svn.boost.org/trac/boost/ticket/8364" target="_top">8364</a> |
| Invalid input exception, caused by spikes in previous steps, fixed |
| </li> |
| <li class="listitem"> |
| <a href="https://svn.boost.org/trac/boost/ticket/8365" target="_top">8365</a> |
| Invalid input exception, caused by spikes in previous steps, fixed |
| </li> |
| <li class="listitem"> |
| <a href="https://svn.boost.org/trac/boost/ticket/8969" target="_top">8969</a> |
| boost::geometry::model::point single argument constructor should be explicit |
| </li> |
| <li class="listitem"> |
| <a href="https://svn.boost.org/trac/boost/ticket/8825" target="_top">8825</a> |
| Patch adding member variable documentation to doxygen_xml2qbk |
| </li> |
| <li class="listitem"> |
| <a href="https://svn.boost.org/trac/boost/ticket/8652" target="_top">8652</a> |
| Intersection fails for triangle-triangle intersection. Caused by spike, |
| fixed |
| </li> |
| <li class="listitem"> |
| <a href="https://svn.boost.org/trac/boost/ticket/9047" target="_top">9047</a> |
| Boost files that include themselves (strategies/intersection.hpp), fixed |
| </li> |
| </ul></div> |
| <p> |
| <span class="bold"><strong>Internal changes</strong></span> |
| </p> |
| <div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "> |
| <li class="listitem"> |
| Adapted projected_point<> distance strategy, point-type in template |
| is replaced by calculation-type |
| </li> |
| <li class="listitem"> |
| Adapted transform strategies, they have points now as member-template, |
| and calculation-type as template. Similar to what was done for projected_point |
| distance |
| </li> |
| <li class="listitem"> |
| Spikes (could be generated in difference) in integer-based overlays are |
| now avoided during generation |
| </li> |
| <li class="listitem"> |
| Cleanup, removed old MSVC2005 project files |
| </li> |
| <li class="listitem"> |
| R*-tree balancing algorithm optimized |
| </li> |
| </ul></div> |
| <h4> |
| <a name="geometry.release_notes.h4"></a> |
| <span class="phrase"><a name="geometry.release_notes.boost_1_54"></a></span><a class="link" href="release_notes.html#geometry.release_notes.boost_1_54">Boost |
| 1.54</a> |
| </h4> |
| <p> |
| <span class="bold"><strong>Additional functionality</strong></span> |
| </p> |
| <div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "> |
| <li class="listitem"> |
| added Spatial Index, developed for Boost.Geometry by Adam Wulkiewicz. The |
| spatial index was originally started by Federico J. Fernandez during the |
| Google Summer of Code 2008 program, mentored by Hartmut Kaiser. |
| </li> |
| <li class="listitem"> |
| added SVG-output, this was already in extensions for several years |
| </li> |
| </ul></div> |
| <p> |
| <span class="bold"><strong>Documentation</strong></span> |
| </p> |
| <div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "> |
| <li class="listitem"> |
| small fixes of missing words |
| </li> |
| <li class="listitem"> |
| fixes in doc of template parameters (convex_hull, exterior_ring, return_buffer) |
| </li> |
| </ul></div> |
| <p> |
| <span class="bold"><strong>Bugfixes</strong></span> |
| </p> |
| <div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "> |
| <li class="listitem"> |
| collinear opposite segments did sometimes (in circles) have a robustness |
| issue, fixed |
| </li> |
| <li class="listitem"> |
| fixed insertion of false intersection point (found by buffer) |
| </li> |
| <li class="listitem"> |
| applied patch of Vladimir Petrovic for debugging traversals |
| </li> |
| </ul></div> |
| <p> |
| <span class="bold"><strong>Solved tickets</strong></span> |
| </p> |
| <div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "> |
| <li class="listitem"> |
| <a href="https://svn.boost.org/trac/boost/ticket/7462" target="_top">7462</a> |
| degenerate union result for float, fixed |
| </li> |
| <li class="listitem"> |
| <a href="https://svn.boost.org/trac/boost/ticket/7465" target="_top">7465</a> |
| wrong construtors access type in scale_transformer class, fixed |
| </li> |
| <li class="listitem"> |
| <a href="https://svn.boost.org/trac/boost/ticket/7802" target="_top">7802</a> |
| cart_intersect.hpp unused parameter warnings, fixed |
| </li> |
| <li class="listitem"> |
| <a href="https://svn.boost.org/trac/boost/ticket/8254" target="_top">8254</a> |
| faulty intersection, fixed |
| </li> |
| <li class="listitem"> |
| <a href="https://svn.boost.org/trac/boost/ticket/8393" target="_top">8393</a> |
| polygon model doesn't adhere to stated Polygon concept rules, doc updated. |
| </li> |
| <li class="listitem"> |
| <a href="https://svn.boost.org/trac/boost/ticket/8403" target="_top">8403</a> |
| silenced compiler warning C4127: conditional expression is constant |
| </li> |
| <li class="listitem"> |
| <a href="https://svn.boost.org/trac/boost/ticket/8405" target="_top">8405</a> |
| silenced compiler warning C4189: '...' : local variable is initialized |
| but not referenced |
| </li> |
| </ul></div> |
| <p> |
| <span class="bold"><strong>Internal changes</strong></span> |
| </p> |
| <div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem"> |
| Made several algorithms variant-aware (append, area, clear, convert, equals, |
| length, num_points) |
| </li></ul></div> |
| <h4> |
| <a name="geometry.release_notes.h5"></a> |
| <span class="phrase"><a name="geometry.release_notes.boost_1_53"></a></span><a class="link" href="release_notes.html#geometry.release_notes.boost_1_53">Boost |
| 1.53</a> |
| </h4> |
| <p> |
| <span class="bold"><strong>Bugfixes</strong></span> |
| </p> |
| <div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "> |
| <li class="listitem"> |
| avoid generating output polygons with interior rings below minimum size |
| (e.g. one or two points) |
| </li> |
| <li class="listitem"> |
| <code class="computeroutput"><span class="identifier">geometry</span><span class="special">::</span><span class="identifier">disjoint</span></code> for degenerate segments (patched |
| by Karsten Ahnert) |
| </li> |
| <li class="listitem"> |
| problem in <code class="computeroutput"><span class="identifier">geometry</span><span class="special">::</span><span class="identifier">difference</span></code> for missing handling tangency, |
| reported by H2 |
| </li> |
| <li class="listitem"> |
| fixed <code class="computeroutput"><span class="identifier">geometry</span><span class="special">::</span><span class="identifier">for_each</span></code> for use with Lambda's |
| </li> |
| <li class="listitem"> |
| fixed <code class="computeroutput"><span class="identifier">geometry</span><span class="special">::</span><span class="identifier">comparable_distance</span></code> point-linestring |
| (and -range, -polygon) |
| </li> |
| </ul></div> |
| <p> |
| <span class="bold"><strong>Additional functionality</strong></span> |
| </p> |
| <div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "> |
| <li class="listitem"> |
| combinations for <code class="computeroutput"><span class="identifier">geometry</span><span class="special">::</span><span class="identifier">disjoint</span></code>: |
| point/ring, point/polygon, point/multi_polygon |
| </li> |
| <li class="listitem"> |
| combinations for <code class="computeroutput"><span class="identifier">geometry</span><span class="special">::</span><span class="identifier">intersects</span></code>: |
| point/ring, point/polygon, point/multi_polygon |
| </li> |
| </ul></div> |
| <p> |
| <span class="bold"><strong>Internal changes</strong></span> |
| </p> |
| <div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "> |
| <li class="listitem"> |
| updates in specializations/not_implemented for various algorithms (as in |
| an earlier version, these changes are still going on; they take care for |
| simplified structs, better error reporting, and automatized documentation) |
| </li> |
| <li class="listitem"> |
| fixes in unit tests |
| </li> |
| </ul></div> |
| <h4> |
| <a name="geometry.release_notes.h6"></a> |
| <span class="phrase"><a name="geometry.release_notes.boost_1_51"></a></span><a class="link" href="release_notes.html#geometry.release_notes.boost_1_51">Boost |
| 1.51</a> |
| </h4> |
| <p> |
| <span class="bold"><strong>Breaking changes</strong></span> |
| </p> |
| <div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem"> |
| points accessed through a pointer (e.g. in a linestring) should now be |
| specialized without the pointer. In previous versions a type <code class="computeroutput"><span class="identifier">my_point</span></code> used like <code class="computeroutput"><span class="identifier">linestring</span><span class="special"><</span><span class="identifier">my_point</span><span class="special">*></span></code> had to be specalized like: <code class="computeroutput"><span class="keyword">template</span><span class="special"><></span> |
| <span class="keyword">struct</span> <span class="identifier">tag</span><span class="special"><</span><span class="identifier">my_point</span><span class="special">*></span></code>. Now the library itself removes the |
| pointer before calling the traits class, so now it should be like: <code class="computeroutput"><span class="keyword">template</span><span class="special"><></span> |
| <span class="keyword">struct</span> <span class="identifier">tag</span><span class="special"><</span><span class="identifier">my_point</span><span class="special">></span></code> |
| </li></ul></div> |
| <p> |
| <span class="bold"><strong>Bugfixes</strong></span> |
| </p> |
| <div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "> |
| <li class="listitem"> |
| intersection was sometimes wrong for integer points, fixed |
| </li> |
| <li class="listitem"> |
| documentation, order of parameters in simplify was wrong, fixed |
| </li> |
| </ul></div> |
| <p> |
| <span class="bold"><strong>Solved tickets</strong></span> |
| </p> |
| <div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem"> |
| <a href="https://svn.boost.org/trac/boost/ticket/7030" target="_top">7030</a> |
| spherical distance, fixed (by patch of Karsten Ahnert) |
| </li></ul></div> |
| <h4> |
| <a name="geometry.release_notes.h7"></a> |
| <span class="phrase"><a name="geometry.release_notes.boost_1_50"></a></span><a class="link" href="release_notes.html#geometry.release_notes.boost_1_50">Boost |
| 1.50</a> |
| </h4> |
| <p> |
| <span class="bold"><strong>Bugfixes</strong></span> |
| </p> |
| <div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "> |
| <li class="listitem"> |
| the return type of comparable projected point strategy for integer points |
| was wrong (integer), fixed |
| </li> |
| <li class="listitem"> |
| several robustness issues in intersection of segments and polygons, fixed |
| </li> |
| <li class="listitem"> |
| invalid intersection output is filtered out |
| </li> |
| <li class="listitem"> |
| disjoint for multi_polygon's might incorrectly return true, fixed |
| </li> |
| </ul></div> |
| <p> |
| <span class="bold"><strong>Solved tickets</strong></span> |
| </p> |
| <div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "> |
| <li class="listitem"> |
| <a href="https://svn.boost.org/trac/boost/ticket/6585" target="_top">6585</a> |
| patch for alternative syntax multipoint, applied |
| </li> |
| <li class="listitem"> |
| <a href="https://svn.boost.org/trac/boost/ticket/6584" target="_top">6584</a> |
| patch for bug in distance, applied |
| </li> |
| <li class="listitem"> |
| <a href="https://svn.boost.org/trac/boost/ticket/5730" target="_top">5730</a> |
| same issue as 6584, fixed |
| </li> |
| <li class="listitem"> |
| <a href="https://svn.boost.org/trac/boost/ticket/6166" target="_top">6166</a> |
| patch for missing transformation, applied |
| </li> |
| <li class="listitem"> |
| <a href="https://svn.boost.org/trac/boost/ticket/6696" target="_top">6696</a> |
| invalid intersection output, was (by chance) already fixed in Trunk before |
| reported |
| </li> |
| </ul></div> |
| <p> |
| <span class="bold"><strong>Additional functionality</strong></span> |
| </p> |
| <div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem"> |
| added algorithm "touches" (OGC SF compliant) for *polygon/*polygon |
| </li></ul></div> |
| <h4> |
| <a name="geometry.release_notes.h8"></a> |
| <span class="phrase"><a name="geometry.release_notes.boost_1_49"></a></span><a class="link" href="release_notes.html#geometry.release_notes.boost_1_49">Boost |
| 1.49</a> |
| </h4> |
| <p> |
| <span class="bold"><strong>Breaking changes</strong></span> |
| </p> |
| <div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem"> |
| point_xy was accidentally included in one of the headerfiles. If the point_xy |
| class is used, it should be included explicitly now. |
| </li></ul></div> |
| <p> |
| <span class="bold"><strong>Bugfixes</strong></span> |
| </p> |
| <div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "> |
| <li class="listitem"> |
| bugfix: distance for multi-geometries ignored specified distance strategy. |
| Fixed |
| </li> |
| <li class="listitem"> |
| bugfix: difference for polygon/multi_polygon (reported 2011/10/24 on GGL-list) |
| </li> |
| <li class="listitem"> |
| bugfix: raise exception for calculation of distances of multi-geometrie(s) |
| where one of them is empty |
| </li> |
| <li class="listitem"> |
| bugfix: multi DSV did not correctly use settings, fixed |
| </li> |
| <li class="listitem"> |
| bugfix: self-intersections could sometimes be missed (introduced in 1.48), |
| fixed |
| </li> |
| <li class="listitem"> |
| bugfix: convex hull crashed on empty range (e.g. empty multi point), fixed |
| </li> |
| <li class="listitem"> |
| bugfix: area/centroid/side/intersection/distance did not work for "int" |
| type filled with large (but not overflowing) integers. Fixed. |
| </li> |
| <li class="listitem"> |
| bugfix: disjoint/intersect did not work for degenerate linestrings. Fixed. |
| </li> |
| <li class="listitem"> |
| bugfix: covered_by did not compile for a ring. Fixed. |
| </li> |
| </ul></div> |
| <p> |
| <span class="bold"><strong>Solved tickets</strong></span> |
| </p> |
| <div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "> |
| <li class="listitem"> |
| <a href="https://svn.boost.org/trac/boost/ticket/6019" target="_top">6019</a> |
| convex_hull / area, fixed. |
| </li> |
| <li class="listitem"> |
| <a href="https://svn.boost.org/trac/boost/ticket/6021" target="_top">6021</a> |
| convex_hull / append (multipoint), fixed. |
| </li> |
| <li class="listitem"> |
| <a href="https://svn.boost.org/trac/boost/ticket/6028" target="_top">6028</a> |
| Documentation: closure, fixed. |
| </li> |
| <li class="listitem"> |
| <a href="https://svn.boost.org/trac/boost/ticket/6178" target="_top">6178</a> |
| Missing headerfile, fixed. |
| </li> |
| </ul></div> |
| <p> |
| <span class="bold"><strong>Additional functionality</strong></span> |
| </p> |
| <div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "> |
| <li class="listitem"> |
| support for line/polygon intersections and differences |
| </li> |
| <li class="listitem"> |
| support for convert of segment/box of different point types |
| </li> |
| <li class="listitem"> |
| support for append for multi point |
| </li> |
| <li class="listitem"> |
| the scalar function distance now throws an empty_input_exception on empty |
| input |
| </li> |
| </ul></div> |
| <p> |
| <span class="bold"><strong>Documentation</strong></span> |
| </p> |
| <div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "> |
| <li class="listitem"> |
| updated support status in several algorithms |
| </li> |
| <li class="listitem"> |
| updated conformance to OGC or std |
| </li> |
| <li class="listitem"> |
| other updates and fixes |
| </li> |
| </ul></div> |
| <p> |
| <span class="bold"><strong>Internal changes</strong></span> |
| </p> |
| <div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "> |
| <li class="listitem"> |
| updates in specializations/not_implemented for distance/convert/assign/area/with/covered_by |
| </li> |
| <li class="listitem"> |
| move of wkt/dsv to io folder, making domains redundant |
| </li> |
| <li class="listitem"> |
| warnings: strategy concepts assigned to zero to avoid clang warnings (patched |
| by Vishnu) |
| </li> |
| <li class="listitem"> |
| warnings: there were several unused parameters, for which gcc/clang warned |
| (patched by Christophe) |
| </li> |
| </ul></div> |
| <h4> |
| <a name="geometry.release_notes.h9"></a> |
| <span class="phrase"><a name="geometry.release_notes.boost_1_48"></a></span><a class="link" href="release_notes.html#geometry.release_notes.boost_1_48">Boost |
| 1.48</a> |
| </h4> |
| <p> |
| <span class="bold"><strong>Bugfixes</strong></span> |
| </p> |
| <div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "> |
| <li class="listitem"> |
| Robustness issue, in some circumstances the union failed to output. Fixed. |
| </li> |
| <li class="listitem"> |
| Robustness issue, in some circumstances the calculated intersection point |
| was outside the segment. Fixed. |
| </li> |
| <li class="listitem"> |
| Concept issue, cartesian intersect didn't understand segments other than |
| the provided one. Fixed. |
| </li> |
| <li class="listitem"> |
| Sometimes self-intersections in linestrings were missed. Fixed. |
| </li> |
| <li class="listitem"> |
| The fusion coordinate system was not registered correctly. Fixed. |
| </li> |
| </ul></div> |
| <p> |
| <span class="bold"><strong>Solved tickets</strong></span> |
| </p> |
| <div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "> |
| <li class="listitem"> |
| <a href="https://svn.boost.org/trac/boost/ticket/5726" target="_top">5726</a> |
| Segment intersection algorithm still assumes 'first', 'second' members |
| </li> |
| <li class="listitem"> |
| <a href="https://svn.boost.org/trac/boost/ticket/5744" target="_top">5744</a> |
| Mistake in fusion adapt example |
| </li> |
| <li class="listitem"> |
| <a href="https://svn.boost.org/trac/boost/ticket/5748" target="_top">5748</a> |
| Needed to include <boost/foreach.hpp> |
| </li> |
| <li class="listitem"> |
| <a href="https://svn.boost.org/trac/boost/ticket/5954" target="_top">5954</a> |
| distance_pythagoras skips sqrt() step |
| </li> |
| </ul></div> |
| <p> |
| <span class="bold"><strong>Improvements on algorithms</strong></span> |
| </p> |
| <div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "> |
| <li class="listitem"> |
| Checking self-intersections is now not done automatically, this can blast |
| performance. |
| </li> |
| <li class="listitem"> |
| Besides that, checking self-intersections is made faster. |
| </li> |
| <li class="listitem"> |
| Intersections now avoid outputting duplicate points. So they output the |
| minimal set. |
| </li> |
| </ul></div> |
| <p> |
| <span class="bold"><strong>Additional algorithms</strong></span> |
| </p> |
| <div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem"> |
| covered_by: within is defined as "within, not on boundary". covered_by |
| is "within or on boundary" |
| </li></ul></div> |
| <p> |
| <span class="bold"><strong>Additional functionality</strong></span> |
| </p> |
| <div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "> |
| <li class="listitem"> |
| within: strategies can now be specified for within<point, box> and |
| within<box, box> |
| </li> |
| <li class="listitem"> |
| convert: a much broader range of conversions is supported |
| </li> |
| <li class="listitem"> |
| assign: idem, (currently partly) synonym for convert (but reversed arguments) |
| </li> |
| </ul></div> |
| <p> |
| <span class="bold"><strong>Additional coordinate types</strong></span> |
| </p> |
| <div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem"> |
| Basic (limited) support for Boost.Rational |
| </li></ul></div> |
| <h4> |
| <a name="geometry.release_notes.h10"></a> |
| <span class="phrase"><a name="geometry.release_notes.boost_1_47"></a></span><a class="link" href="release_notes.html#geometry.release_notes.boost_1_47">Boost |
| 1.47</a> |
| </h4> |
| <p> |
| Original release |
| </p> |
| </div> |
| <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr> |
| <td align="left"></td> |
| <td align="right"><div class="copyright-footer">Copyright © 2009-2015 Barend Gehrels, Bruno Lalande, |
| Mateusz Loskot, Adam Wulkiewicz, Oracle and/or its affiliates<p> |
| Distributed under the Boost Software License, Version 1.0. (See accompanying |
| file LICENSE_1_0.txt or copy at <a href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>) |
| </p> |
| </div></td> |
| </tr></table> |
| <hr> |
| <div class="spirit-nav"> |
| <a accesskey="p" href="examples/example_source_code__adapting_a_legacy_geometry_object_model.html"><img src="../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../index.html"><img src="../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../index.html"><img src="../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="aboutdoc.html"><img src="../../../../../doc/src/images/next.png" alt="Next"></a> |
| </div> |
| </body> |
| </html> |