summaryrefslogtreecommitdiff
path: root/boost/geometry/io/svg/svg_mapper.hpp
diff options
context:
space:
mode:
Diffstat (limited to 'boost/geometry/io/svg/svg_mapper.hpp')
-rw-r--r--boost/geometry/io/svg/svg_mapper.hpp21
1 files changed, 14 insertions, 7 deletions
diff --git a/boost/geometry/io/svg/svg_mapper.hpp b/boost/geometry/io/svg/svg_mapper.hpp
index b53fef2ceb..c8e63d5ab7 100644
--- a/boost/geometry/io/svg/svg_mapper.hpp
+++ b/boost/geometry/io/svg/svg_mapper.hpp
@@ -1,6 +1,11 @@
// Boost.Geometry (aka GGL, Generic Geometry Library)
-// Copyright (c) 2009-2012 Barend Gehrels, Amsterdam, the Netherlands.
+// Copyright (c) 2009-2015 Barend Gehrels, Amsterdam, the Netherlands.
+
+// This file was modified by Oracle on 2015.
+// Modifications copyright (c) 2015, Oracle and/or its affiliates.
+
+// Contributed and/or modified by Menelaos Karavelas, on behalf of Oracle
// Parts of Boost.Geometry are redesigned from Geodan's Geographic Library
// (geolib/GGL), copyright (c) 1995-2010 Geodan, Amsterdam, the Netherlands.
@@ -16,6 +21,7 @@
#include <vector>
+#include <boost/config.hpp>
#include <boost/mpl/assert.hpp>
#include <boost/noncopyable.hpp>
#include <boost/scoped_ptr.hpp>
@@ -31,15 +37,11 @@
#include <boost/geometry/algorithms/envelope.hpp>
#include <boost/geometry/algorithms/expand.hpp>
+#include <boost/geometry/algorithms/is_empty.hpp>
#include <boost/geometry/algorithms/transform.hpp>
-#include <boost/geometry/algorithms/num_points.hpp>
-#include <boost/geometry/strategies/transform.hpp>
#include <boost/geometry/strategies/transform/map_transformer.hpp>
#include <boost/geometry/views/segment_view.hpp>
-#include <boost/geometry/multi/algorithms/envelope.hpp>
-#include <boost/geometry/multi/algorithms/num_points.hpp>
-
#include <boost/geometry/io/svg/write_svg.hpp>
// Helper geometries (all points are transformed to integer-points)
@@ -97,6 +99,11 @@ struct svg_map<box_tag, Box>
Box const& box, TransformStrategy const& strategy)
{
model::box<detail::svg::svg_point_type> ibox;
+
+ // Fix bug in gcc compiler warning for possible uninitialation
+#if defined(BOOST_GCC)
+ geometry::assign_zero(ibox);
+#endif
geometry::transform(box, ibox, strategy);
stream << geometry::svg(ibox, style, size) << std::endl;
@@ -307,7 +314,7 @@ public :
template <typename Geometry>
void add(Geometry const& geometry)
{
- if (num_points(geometry) > 0)
+ if (! geometry::is_empty(geometry))
{
expand(m_bounding_box,
return_envelope