Commit graph

4145 commits

Author SHA1 Message Date
artemp
8cc7060ef1 remove bounding box validity check (ref #3611) 2017-02-03 17:20:25 +01:00
Artem Pavlenko
e35bca7381 Merge pull request #3610 from mapnik/v3.0.x-3609
GeoJSON - backport positions grammar changes from master, fixes #3609
2017-02-03 11:28:22 +01:00
artemp
6cb3bce2d7 GeoJSON - backport positions grammar changes from master, fixes #3609 2017-02-03 11:22:24 +01:00
lightmare
17dcffaf78 Merge pull request #3583 from mapnik/v3.0.x-cherry-pr3566
v3.0.x cherry-pick #3566
2017-02-02 15:32:29 +01:00
Dane Springmeyer
7578534dc8 pass std::string to std::out_of_range 2017-02-01 21:54:27 -08:00
artemp
ab206321b5 update version to 3.0.13 2017-01-20 14:40:35 +01:00
Mickey Rose
0a5495e442 change render_thunk_list to std::list<render_thunk>
Wrapping render_thunk in std::unique_ptr is one extra allocation per
element, with no purpose. The somewhat costly xyz_render_thunk move
constructor is only called once upon insertion, regardless of whether
we're emplacing render_thunk or unique_ptr.
2017-01-03 22:53:39 +01:00
Jiri Drbalek
b5c04cc132 find max element instead of std::sort 2017-01-02 03:53:53 +01:00
Dane Springmeyer
283481b347 backport warnings fix from master for enumeration 2016-12-15 11:33:23 -08:00
Mickey Rose
fdd542a3c4 make mapnik_value_type_t C++11-friendly 2016-12-15 12:13:42 +01:00
Mickey Rose
06201e3842 bring C++14 type traits aliases for C++11 support 2016-12-15 12:12:12 +01:00
Mickey Rose
f00470dc02 simplify mapnik::value conversion rules
- fixes #3570

- avoids recursive exception-specification on value constructor
  by only constructing a temporary for arithmetic types (everything
  else passes a reference to the base variant constructor)

- also removes `is_same<decay_t<T>, value>` SFINAE check -- because
  we're only passing a reference down, explicitly forcing the compiler
  to use the implicitly-defined copy/move instead is pointless
2016-12-14 18:24:32 -08:00
artemp
fa2d63c601 remove hash_combine (unused) 2016-12-14 18:24:19 -08:00
artemp
204d30e58d simplify hash calculation (we don't need combine with which(), using hash<T> is sufficient) 2016-12-14 18:24:15 -08:00
artemp
8dee1a9088 use mapbox namespace to fix name resolution 2016-12-14 18:23:02 -08:00
Dane Springmeyer
4cd55330dd avoid -Wshadow and 'unrecognized command line option' with gcc 2016-12-14 18:21:03 -08:00
Jiri Drbalek
27a0f3562d remove methods that are not referenced anywhere 2016-12-14 18:19:54 -08:00
artemp
4d4ea3a576 Fix clang >= 3.9.0 compilation by using mapbox::util::variant as alias (via deps/mapbox/variant => "types" branch) 2016-12-14 18:18:50 -08:00
talaj
994a327c7f remove superfluous declaration 2016-11-25 13:31:55 +01:00
Dane Springmeyer
5a6d16d4fe default scale_factor for filter_visitor (unbreaks node-mapnik compile) 2016-11-14 15:31:18 -08:00
artemp
eea427b19f cleanup include directives 2016-10-19 13:15:59 +02:00
artemp
e74af890fb Silence -Wundefined-var-template warnings in enumeration.hpp 2016-10-17 16:58:22 +02:00
Jiri Drbalek
b830469d2d multiply blur radius by scale_factor 2016-10-17 11:59:21 +00:00
Jiri Drbalek
0f3eecbe5e fix intersecting extents in different projections 2016-09-27 20:36:34 +00:00
artemp
8a8427daed GeoJSON feature/geometry grammars - split (a | b | ...) % lit(',') rule to avoid creating bogus temp synthesised attribute e.g boost::variant<a,b,..> which causes clang compiler >= 3.9 to segfault. (ref #3507)
NOTE: In general many Boost.Spirit gotchas can be fixed by simplifying rules (better control what gets synthesied under the bonet)
2016-09-22 12:18:34 +02:00
Mickey Rose
870b890042 remove redundant member pData_ from mapnik::image
I believe this is better than fixing swap() by also
swapping pData_
2016-09-07 20:03:17 +02:00
artemp
747ca7470c remove duplicate #pragma 2016-09-05 11:39:36 +02:00
Dane Springmeyer
3741a7f348 fix -Wshadow warnings caught by g++-5 2016-09-03 09:58:40 -07:00
Dane Springmeyer
4b06dfe9b4 Avoid warnings when building the g++5 2016-08-31 11:09:27 -07:00
artemp
f360f50eed JSON - make generic_json a proper spirit grammar and reduce code bloat 2016-08-31 14:36:35 +01:00
Jiri Drbalek
8b18c605fd no need for heap allocation 2016-08-25 08:01:31 +00:00
Jiri Drbalek
6da9de5739 fix closing segment 2016-08-25 08:01:25 +00:00
artemp
fe007915df Revert "Revert "mapnik::variant - use std::tuple<Typess...> instead of mpl::vector<Types...> and remove Boost.MPL dependency""
and remove `<boost/fusion/adapted/std_tuple.hpp>`

This reverts commit b6cc48fd40.
2016-08-23 15:45:15 +01:00
Dane Springmeyer
b6cc48fd40 Revert "mapnik::variant - use std::tuple<Typess...> instead of mpl::vector<Types...> and remove Boost.MPL dependency"
This reverts commit 6613222b84.
2016-08-22 11:40:06 -07:00
artemp
6613222b84 mapnik::variant - use std::tuple<Typess...> instead of mpl::vector<Types...> and remove Boost.MPL dependency 2016-08-22 12:16:48 +01:00
artemp
1e8f471448 minor formatting 2016-08-16 10:53:57 +01:00
artemp
b9279feee2 fix is_valid logic (ref #3494) 2016-08-15 12:49:43 +01:00
artemp
0471f3369a add order_by_name helper method 2016-08-15 12:20:19 +01:00
artemp
31814b32d0 rename empty_featureset => invalid_featureset to avoid ambiguity + add helper is_valid method 2016-08-15 10:41:30 +01:00
artemp
8dca305e7e json stringifier - add missing quoting in nested json objects (ref #3491) 2016-08-12 11:04:30 +01:00
Jiri Drbalek
621a5e51ac style level comp-op and opacity for Cairo renderer 2016-08-03 20:14:56 +00:00
Mickey Rose
f9d5c3a2f8 use proper feature-test macro for inheriting constructors 2016-08-03 00:29:51 +02:00
Artem Pavlenko
68db7ee224 Merge pull request #3475 from mapycz/logarithm
Add support for natural logarithm in expressions (via @talaj)
2016-08-01 15:07:01 +02:00
Jiri Drbalek
c1ab5c8e6c add support for natural logarithm function in expressions 2016-08-01 12:58:21 +00:00
Dane Springmeyer
148783da25 Revert "inherit ctor's from geometry_base"
- Fixes #3473 (windows compile)
 - TODO: @artemp get to the bottom of how to inherit from base class
   in a way that works with boost::variant and across platforms

This reverts commit bf99177da7.
2016-07-29 04:51:18 -07:00
artemp
bf99177da7 inherit ctor's from geometry_base 2016-07-25 15:55:20 +02:00
Dane Springmeyer
bd920daa16 fix decltype forwarding 2016-07-25 14:51:45 +02:00
Dane Springmeyer
f734368a73 limit mpl list size as well as vector size 2016-07-25 14:51:45 +02:00
artemp
2864d90460 more explicit conversions to the target variant type 2016-07-25 13:45:35 +02:00
artemp
7fa35f481e Support creating paletted images for any number of pixels e.g < 3 (ref #3466) 2016-07-20 14:01:14 +02:00
artemp
6f8f286b8d Revert "allow "null" values when genrating Feature GeoJSON"
This reverts commit 8ce58ea29c.
2016-07-15 12:22:03 +01:00
artemp
54d51e2728 Revert "feature_kv_iterator - change logic in 'increment' to skip key/value's when value doesn't exist"
This reverts commit 3397b8f14f.
2016-07-15 12:21:41 +01:00
artemp
8ce58ea29c allow "null" values when genrating Feature GeoJSON 2016-07-14 10:09:34 +01:00
artemp
3397b8f14f feature_kv_iterator - change logic in 'increment' to skip key/value's when value doesn't exist 2016-07-14 09:46:37 +01:00
artemp
c457d93804 use count(key) 2016-07-14 09:45:55 +01:00
artemp
75781a999c add empty_featureset (returning feature_ptr()) implementation 2016-07-13 15:17:41 +01:00
artemp
45c5a3768f extract_bounding_box_grammar - make features optional / ref #3463 2016-07-12 17:44:19 +01:00
artemp
3536ad0902 even more tidy - remove left over stderr 2016-06-22 17:35:09 +01:00
artemp
2e8c0d36c2 implement custom char_array_bufrer and remove boost::iostreams dependency 2016-06-22 17:21:25 +01:00
artemp
beb34f9c5e topojson_grammar - rename properties to properties_ to avoid compilation error (gcc) ref #3446 2016-06-03 14:45:49 +02:00
artemp
01967cfaff topojson grammar - re-factor to allow geometry elements to be in any order 2016-05-23 10:51:05 +02:00
Artem Pavlenko
aec5949d5a Merge pull request #3416 from mapycz/scale-factor-improvements
Scale factor improvements
2016-05-18 15:05:04 +02:00
artemp
7b3f607a01 remove omit directive as it breaks type deduction and insists on boost::optional<boost::variant<int, mapnik::json::coordinates> attribute signature (boost 1.61.0) 2016-05-18 13:13:25 +02:00
artemp
c85c0fd025 prealloc memory with reserve 2016-05-18 11:18:26 +02:00
artemp
c10c271430 dereference once 2016-05-18 10:35:58 +02:00
artemp
7d72cc1930 more cleanups 2016-05-17 13:47:31 +02:00
artemp
c66fd480b5 simplify rules 2016-05-17 13:05:53 +02:00
artemp
4ca0c21d73 move phoenix functions into ctor 2016-05-17 13:00:03 +02:00
artemp
25217549f1 fix topojson parsing (work-in-progress) 2016-05-17 12:53:07 +02:00
artemp
6e326f035d minor formatting 2016-05-17 12:44:46 +02:00
artemp
dc84943575 Fixed https://github.com/mapbox/windows-builds/issues/88
(inheriting constructors not working with msvc-14.0 2015)
2016-05-13 15:23:47 +02:00
artemp
4e6aeaedfc handle empty arrays and objects ref #3426 2016-05-13 11:50:43 +02:00
artemp
38ec14c739 topojson - use json.value directly 2016-05-12 18:52:05 +02:00
artemp
5e33dc0551 feature_grammar - simplify further, remove redundant rule 2016-05-10 15:53:14 +02:00
artemp
3909fe5b7d JSON - store 'object' properties in std::vector to preserve order 2016-05-10 15:52:02 +02:00
artemp
f0386e0469 issue pre-processor #warning if BOOST_MPL_LIMIT_VECTOR_SIZE is defined before config.hpp is included ref #3425 2016-05-10 15:15:03 +02:00
artemp
75189905d6 upgrade to latest variant.hpp 2016-05-09 11:42:46 +02:00
artemp
97b8a11a72 fix includes + use typedefs for json types 2016-05-06 10:57:35 +02:00
artemp
7544f57efe Merge branch 'master' into json-properties 2016-05-06 10:27:18 +02:00
artemp
c2bf2be7ba json - simplify generic_json rules: remove redundant rule 2016-05-06 10:24:25 +02:00
artemp
21487f36b9 json - refactor stringifier and attribute_value_visitor into separate *.hpp and share between geojson and topojson grammars 2016-05-06 10:15:44 +02:00
artemp
6bd708af86 fix generic_json usage across grammars 2016-05-06 09:55:54 +02:00
artemp
e528b433d4 geojson feature_grammar - parse objects and arrays into json_value before applying "stringifier" #3419 https://github.com/mapnik/node-mapnik/issues/642 2016-05-06 09:50:45 +02:00
artemp
7374f82414 generic_json - add support for JSON object and array type in json_value + update rules attributes 2016-05-06 09:47:40 +02:00
Dane Springmeyer
966a4ae366 avoid warnings with boost 1.60 [skip ci] 2016-05-05 19:09:05 -07:00
artemp
db912d9b67 disable white skipping in stringify_object/stringify_array (ref #3419) 2016-05-05 10:33:36 +02:00
artemp
d9e75f4ddb c++ prettify formatting 2016-05-05 10:31:58 +02:00
artemp
471d6dfe94 remove redundant recursive_wrapper (via @jfirebaugh : f00a7aebf1) 2016-05-03 18:13:41 +02:00
artemp
ff821c9239 geometry::envelope - deduct value_type of box2d<T> automatically + add missing typedefs 2016-05-03 18:02:42 +02:00
Jiri Drbalek
cfc6b37d71 fix passing scale factor to evaluate_transform() 2016-05-03 12:09:39 +00:00
artemp
31e8cfc659 improve hash calc ref #3406 2016-04-26 15:29:27 +02:00
artemp
4b3b62a40c minor formatting 2016-04-25 20:43:40 +02:00
artemp
650e8eea8a bump up version to 3.0.12 in preparation to release 2016-04-25 20:43:40 +02:00
artemp
988aa3ea43 add guard to get_object_severity ref #3322 2016-04-25 11:49:10 +02:00
artemp
ed87cd2883 c++ - make bbox standalone method 2016-04-22 12:54:57 +02:00
artemp
6105463602 split box2d<T> implementation into *.hpp, *._impl.hpp and *.cpp ref #3405 2016-04-20 10:51:33 +02:00
Dane Springmeyer
b0894bfda3 fix debug assert compile 2016-04-18 08:06:30 -07:00
artemp
66160e9754 mapnik::util::is_clockwise - translate coordinates relative to the origin (0,0) to avoid numeric precision issues while using double precision.
(ref #3402)
2016-04-18 16:08:30 +02:00
Dane Springmeyer
15acb2b23f Add missing files after revert 2016-04-11 17:58:58 -07:00
Dane Springmeyer
abe943c983 revert geometry changes for now - will develop them in branch to reduce downstream breakage 2016-04-11 14:00:27 -07:00