Commit graph

4316 commits

Author SHA1 Message Date
artemp
c4fcee7b66 add geometry dir 2016-04-29 17:08:17 +02:00
artemp
3184034414 refactor geometry core and algorithms templates + add missing typedefs + prepare for geometry update 2016-04-29 14:24:57 +02:00
artemp
de927a1571 Merge branch 'master' into geometry-refactor 2016-04-29 10:47:43 +02: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
a89c3fc007 c++ - make bbox standalone method 2016-04-22 12:51:20 +02:00
artemp
4e57f7b115 Merge branch 'master' into geometry-refactor 2016-04-20 16:45:08 +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
633a2c1e07 Merge branch 'master' into geometry-refactor 2016-04-18 16:15:04 +02: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
artemp
9caac23d3c remove bogus fwd decl 2016-04-12 14:56:32 +02:00
artemp
271b70f960 geometry - template on container type + move multi geometries into separate headers 2016-04-12 14:49:23 +02:00
artemp
2e0d83aa91 geometry::multi_point - derive from std::vector<point<T>> instead of line_string<T> 2016-04-12 10:12:16 +02:00
artemp
fb385180cf include what you need 2016-04-12 09:27:37 +02:00
artemp
0f711c0863 geometry - move point/line_string/polygon into separate headers 2016-04-12 09:17:53 +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
Dane Springmeyer
0025f70a6b ensure geometry folder of headers is installed 2016-04-11 12:33:34 -07:00
artemp
19722595a9 move include/mapnik/geometry_fusion_adapted.hpp -> include/mapnik/geometry/fusion_adapted.hpp 2016-04-11 15:22:41 +02:00
artemp
caa03d78bd move geometry_adapters.hpp to geometry/boost_geometry_adapters.hpp 2016-04-11 15:14:52 +02:00
artemp
fa717bc698 Remove bogus updates from 90f06093ae "geometry - move point/line_string/polygon into separate headers" 2016-04-11 12:35:19 +02:00
artemp
90f06093ae geometry - move point/line_string/polygon into separate headers 2016-04-11 12:23:11 +02:00
artemp
c6425b8027 cleanup + make operator==, operator!= standalone 2016-04-08 10:43:06 +02:00
artemp
9705844399 fix operator==,operator!= impl 2016-04-08 10:08:16 +02:00
Dane Springmeyer
7ec640e989 register gdal once at plugin load - refs #3093 #3339 #3340 2016-04-05 16:43:07 -04:00
Dane Springmeyer
61cb4effb8 more explicit name for callback type from dlsym 2016-04-05 15:31:19 -04:00
Dane Springmeyer
f8a8ec616a c++ style: use nullptr rather than NULL 2016-04-05 15:27:32 -04:00
artemp
aac523f80e add no_skip directive in unquoted_ustring rule (ref: https://github.com/mapnik/mapnik/pull/3389#issuecomment-204344223) 2016-04-01 12:54:40 +02:00
artemp
751b691ff6 move unquoted_string to the end, remove ustring from top rule 2016-04-01 11:14:47 +02:00
artemp
890a5cff17 add back support for bare (unquoted strings) 2016-04-01 10:52:13 +02:00
artemp
7931295d33 quad_tree - fix offsets 2016-03-31 12:40:34 +02:00
artemp
51c1ed16ef c++ format 2016-03-31 11:22:40 +02:00
artemp
99bfd03b22 spatial_index - make generic 2016-03-31 11:21:57 +02:00
artemp
4faa9896bb quad_tree - make more generic by templating on bounding box type 2016-03-31 11:20:41 +02:00
artemp
450533ebc6 move boost::phoenix usage into _impl.hpp 2016-03-24 17:11:06 +00:00
artemp
b73a42131a box2<T> - add converting ctor 2016-03-24 17:08:44 +00:00
artemp
9bb20ce685 box2d<T> - expose value_type typedef + init(x, y) convinient method 2016-03-24 14:50:46 +00:00
artemp
0b18144859 GeoJSON - make extract_bounding_box grammar configurable 2016-03-23 11:28:51 +00:00
artemp
7b0740c3b7 remove unused symbolizer_grammar.hpp (ref #3343) 2016-03-18 18:52:17 +01:00
Dane Springmeyer
342b78dc52 more trimming of unneeded phoenix includes - refs #3343 2016-03-18 09:51:17 -07:00
artemp
8f9134c72d file_io - rename open to is_open to be consistent with STL i/o via @lightmare (0d032c2618 (commitcomment-16753722)) 2016-03-18 10:02:19 +01:00
artemp
3d555982fd file_io - make operator bool() explicit via @lightmare (0d032c2618 (commitcomment-16753722)) 2016-03-18 09:51:57 +01:00
artemp
04890c4915 topojson - move feature_generator into topojson_utils.hpp 2016-03-17 14:36:53 +01:00
artemp
0c2558c154 topojson bounding_box - fix multi_point logic (remove bogus if (num_arcs_ > 0) condition) 2016-03-17 14:19:29 +01:00
artemp
0d032c2618 mapnik:util::file_io - add bool operator bool() for STL I/O compatibility 2016-03-17 11:56:23 +01:00
artemp
b164e010fd topojson_grammar - don't allocate generic_json structure holding boost::spirit::qi rules on stack (ref #3361) 2016-03-15 17:19:16 +01:00
Dane Springmeyer
559ef78aca more agg ignores [skip ci] 2016-03-11 13:48:51 -08:00
Dane Springmeyer
d1b594e886 more agg ignores [skip ci] 2016-03-11 13:44:30 -08:00
artemp
1f61aa3981 TWKB - port CartoDB implementation to mapnik 3.x.x
ref https://github.com/CartoDB/mapnik/blob/2.3.x.cartodb/plugins/input/postgis/postgis_utils.cpp
ref https://github.com/CartoDB/mapnik/tree/2.3.x.cartodb/plugins/input/postgis#23xcartodb
2016-03-11 16:20:07 +01:00
Dane Springmeyer
1a10f271d8 ignore -Wfloat-equal from third party headers [skip ci] 2016-03-10 16:07:30 -08:00
Dane Springmeyer
a1ffbe1ec8 suppress warnings from image_io libs 2016-03-10 12:58:29 -08:00
Dane Springmeyer
8f4e211ebd suppress more third party warnings 2016-03-10 12:46:00 -08:00
Dane Springmeyer
192f5c26c1 use c++ style casts 2016-03-10 12:45:47 -08:00
Dane Springmeyer
51cabe0d34 ignore -Wshadow from agg 2016-03-10 11:45:48 -08:00
Dane Springmeyer
c715b142ec suppress more third party warnings 2016-03-10 11:44:44 -08:00
Dane Springmeyer
aa8c543744 use c++ style casts 2016-03-10 11:44:01 -08:00
Dane Springmeyer
3985014c04 Add agg warning suppression header 2016-03-09 17:42:24 -08:00
Dane Springmeyer
341db51aa7 finish wrapping boost includes to suppress warnings - add agg wrapper - refs #2907 2016-03-09 16:42:15 -08:00
Dane Springmeyer
7ae0e6d902 share stringify macro from common header 2016-03-09 16:16:14 -08:00
artemp
bde9e61e21 split csv_line_grammar into *.hpp *_impl.hpp ref #3343 2016-03-09 12:26:07 +01:00
artemp
1c29054dea csv_grammar - use expectation directives throughout 2016-03-09 12:26:07 +01:00
artemp
e3bd74aa55 remove unused phoenix include 2016-03-09 12:26:07 +01:00
artemp
d030fdd667 bump version to 3.0.11 2016-03-07 19:17:36 +01:00
Artem Pavlenko
cd3e484c04 Merge pull request #3349 from mapycz/raster-resample-division-by-zero
Raster resample division by zero
2016-03-07 14:54:44 +01:00
Mickey Rose
e75feceaca markers_placement_finder: dispatch by switch(placement_type) 2016-03-06 13:18:25 +01:00
Mickey Rose
f96631f8e4 un-template markers_basic_placement
- move Locator/Detector-dependent stuff back to markers_point_placement
- slightly reduces library size, by about 20% of what #3338 added
2016-03-05 19:33:22 +01:00
Jiri Drbalek
d4ac105eca raster scaling: use mapnik::safe_cast, fixes clipping negative floats 2016-03-04 16:59:12 +00:00
Jiri Drbalek
f1f65664cd raster scaling: a bit of optimization 2016-03-04 15:14:01 +00:00
Jiri Drbalek
1054e1bddb raster scaling: check for division by zero 2016-03-04 15:13:55 +00:00
artemp
71af6a8fe3 css_color_grammar + image_filters_grammar - move phoenix into ctors 2016-03-04 15:53:15 +01:00
artemp
a5cfd27594 split svg_path_grammar,svg_points_grammar,svg_transform_grammar into *.hpp, *_impl.hpp + move boost::phoenix::function initialisation into ctor's
(ref #3343)
2016-03-04 15:34:45 +01:00
Jiri Drbalek
4d402c5ef1 raster scaling: fix accessing out of bounds pixels 2016-03-04 13:55:01 +00:00
artemp
76bb2d9c01 make svg_transform_grammar stateless ref #3343
(https://github.com/mapnik/mapnik/pull/2231)
2016-03-04 13:15:11 +01:00
artemp
4659f40401 make svg_path_grammar and svg_points_grammar stateless ref #3343
(https://github.com/mapnik/mapnik/pull/2231)
2016-03-04 12:42:44 +01:00
artemp
12aec35e2f GeoJSON feature_grammar - make ctor explicit 2016-03-04 11:35:38 +01:00
artemp
4f8bc40b83 update old boost::phoenix syntax 2016-03-04 10:25:03 +01:00
Dane Springmeyer
9adafd71df avoid -Wshadow warning from boost [skip ci] 2016-03-03 07:36:33 -08:00
artemp
cbef855743 spirit grammars - move BOOST_FUSION_ADAPT_ADT into implementation files (*_impl.hpp) + reduce boost::phoenix includes to make headers lighter to include 2016-03-03 11:50:41 +01:00
Mickey Rose
489631ca34 remove reference on template parameter Detector 2016-03-03 00:17:41 +01:00
Dane Springmeyer
b5ac75cdf0 MAPNIK_DECL breaks on windows when compiled into static libmapnik-json.a 2016-03-02 13:56:01 -08:00
Dane Springmeyer
296f8d467d avoid grammar_impl usage in headers - other minor refactoring around json spirit 2016-03-02 12:48:07 -08:00
Dane Springmeyer
4edb57bf11 Merge pull request #3315 from mapnik/faster-csv-compile
Speed up CSV plugin / mapnik-index compile
2016-03-02 12:22:16 -08:00
Dane Springmeyer
10a9dba143 trim includes in json/error_handler.hpp 2016-03-02 12:17:12 -08:00
Dane Springmeyer
d148a966c8 from_geojson/to_geojson are now used in unit tests, csv plugin, and node-mapnik so move these to cpp 2016-03-02 11:26:56 -08:00
Dane Springmeyer
72459b3140 Merge branch 'master' of github.com:mapnik/mapnik into faster-csv-compile 2016-03-02 11:10:23 -08:00
artemp
9138d64725 value.hpp - fix error C2375: redefinition; different linkage 2016-03-02 17:15:05 +01:00
artemp
a549803b5b to_utf8 : fix visibility via MAPNIK_DECL 2016-03-02 17:02:25 +01:00
artemp
f11cc5920f revive lost to_utf8 method but move it into '<mapnik/unicode.hpp>' 2016-03-02 16:47:55 +01:00
artemp
65da617ec0 re-use vector_converter + move apply_marker_multi into *.cpp 2016-03-02 16:20:10 +01:00
Mickey Rose
66e7ef58d7 refactor markers_placement_finder
- refs #3327

Replace member variant of placement-type implementations with plain
union. The active implementation is chosen at construction time like
before.

Make placement-type implementation classes virtual to allow invoking
the active union member through a base class pointer.
2016-03-02 00:53:45 +01:00
artemp
77eaaa1259 move vertex_adapters implementation into .cpp - mark extern 2016-03-01 21:55:47 +01:00
artemp
053faa8a27 remove unused vars/cleanup 2016-03-01 20:49:54 +01:00
artemp
bb78b178cd reuse type 2016-03-01 20:37:23 +01:00
artemp
4c8928dd8c Merge branch 'master' into value-cpp 2016-03-01 17:43:02 +01:00
artemp
d374829b30 refactor apply_markers_multi and help compiler a bit more (re-enable support for GEOMETRYCOLLECTION) 2016-03-01 17:29:03 +01:00
artemp
45b54c703c apply_marker_multi - unroll template instantiation logic + drop 'GeometryCollection' support (experimental) 2016-03-01 17:28:09 +01:00
artemp
566c99807f minor formatting 2016-03-01 17:27:59 +01:00
artemp
3ee109f46b allow any trailing combinations of line-endings (unix, mac, dos) (ref #3320) 2016-02-26 19:19:32 +01:00
Dane Springmeyer
5c0d496c82 setting up for mapnik v3.0.10 release [skip ci] 2016-02-25 16:37:35 -08:00
Dane Springmeyer
f2782d0b67 [csv] move spirit usage to cpp 2016-02-24 17:42:51 -08:00
artemp
eea68adb40 add required include 2016-02-24 12:10:25 +01:00
artemp
50db396760 move value implementation into *.cpp 2016-02-23 23:05:19 +01:00
artemp
0c9a615c24 restore back compatibility shim ref #1859 (TODO: must go away in 3.1.x!!) 2016-02-23 14:01:06 +01:00
Mickey Rose
ea54876d79 remove unused includes 2016-02-20 01:16:11 +01:00
artemp
96175554ae Add explicit instantiation declaration of singleton<mapped_memory_cache, CreateStatic> to avoid multiple instantiations across translation units. (ref #3306) 2016-02-19 11:00:58 +01:00
artemp
5183c1da44 spatial_index - rename check_header to check_spatial_index and make it free function ref #3300 2016-02-18 11:38:29 +01:00
Mickey Rose
6557394dc8 re-add mapnik::to_utf8 stub for backward compatibility 2016-02-17 16:56:21 +01:00
Mickey Rose
1499475d04 remove to_utf8, instead use UnicodeString::toUTF8String 2016-02-15 21:07:01 +01:00
Mickey Rose
5d1fd56cef csv_grammar: make csv_white_space_skipper a primitive_parser 2016-02-15 15:17:26 +01:00
Mickey Rose
ccf579f450 csv_grammar: simplify csv_line_grammar 2016-02-15 15:15:51 +01:00
artemp
a9e1388b3b csv_grammar - always requre matching closing quoting character 2016-02-15 12:02:45 +01:00
Mickey Rose
2d88fec458 to_expression_string: fix backslash-escapes in strings 2016-02-15 02:45:29 +01:00
artemp
edc2e75474 Merge branch 'trim-filter-grammar' of https://github.com/lightmare/mapnik into lightmare-trim-filter-grammar 2016-02-11 15:43:18 +01:00
Dane Springmeyer
8ecb42894f restore << operator for mapnik::enumeration + add unit test 2016-02-09 10:08:29 -08:00
Dane Springmeyer
6c1b6e301d gradient does not need to be a fancy enumeration 2016-02-09 09:56:57 -08:00
artemp
f0cc65958f Merge branch 'expr-no-barewords' of https://github.com/lightmare/mapnik into lightmare-expr-no-barewords 2016-02-09 14:15:22 +01:00
Mickey Rose
15f841213a expression_grammar: restrict unquoted strings to single-atom expressions
- fixes #3017
- closes #3214
2016-02-08 17:15:13 +01:00
Mickey Rose
ed8c8df738 expression_grammar: use one symbol table for all constants 2016-02-06 18:40:33 +01:00
Mickey Rose
959d4ded23 image_filter_grammar: rewrite using Nabialek trick 2016-02-06 02:03:55 +01:00
artemp
cb708d7f5a transform_grammar: correct and simplify rules per bcc7495a87 (commitcomment-15915607)
image_filter: relax `agg-stack-blur` rule to allow `agg-stack-blur,agg-stack-blur(),agg-stack-blur(1),agg-stack-blur(1,1)` syntax + add image filter parsing tests
2016-02-05 16:50:49 +01:00
artemp
bcc7495a87 transform grammar - fix optional seprator logic 2016-02-05 13:08:17 +01:00
artemp
7ab93a30f2 mapnik::value_null - correct <=, >= return values ref #3285 2016-02-04 10:06:11 +01:00
artemp
35ab8cccdc follow up on previous commit - convert to common_type prior applying / (MSCV C4804) 2016-02-03 12:45:29 +01:00
artemp
376ffba7fe convert value_bool to value_integer before operator / (fixes unsafe use of bool - MSVC C4804) 2016-02-03 12:35:09 +01:00
artemp
c0724a6d95 value comparison - deduct return type automatically (fixes MSVC C4800) 2016-02-03 12:33:15 +01:00
Dane Springmeyer
1600bfe981 remove dead code in enumeration.hpp 2016-02-02 12:35:19 -08:00
Dane Springmeyer
09f137796d use std namespace for clib functions and fix spelling in comments 2016-02-02 12:35:19 -08:00
Dane Springmeyer
834028db7a remove miniz support - library is unused in mapnik and unmaintained since 2013 (https://code.google.com/archive/p/miniz/) 2016-02-02 11:37:26 -08:00
artemp
39a97865fc image_filter_grammar - move 'BOOST_FUSION_ADAPT_STRUCT` into *_impl.hpp 2016-02-02 11:30:00 +01:00
Mickey Rose
239623f976 remove unused variable [skip ci] 2016-01-30 03:24:07 +01:00
Mickey Rose
a8d8a0d74f make clang happy - const default initialization
http://www.open-std.org/jtc1/sc22/wg21/docs/cwg_active.html#253
http://stackoverflow.com/questions/7411515/why-does-c-require-a-user-provided-default-constructor-to-default-construct-a
http://stackoverflow.com/questions/21900237/do-i-really-need-to-implement-user-provided-constructor-for-const-objects
2016-01-30 02:03:25 +01:00
Mickey Rose
be5d772d6c attempt to fortify mapnik::value conversion construction
- including correct noexcept specifier
- adding conversion-assignment operator wasn't really necessary,
  but it might be more efficient since it avoids constructing an
  intermediate variant
2016-01-30 02:03:25 +01:00
Mickey Rose
400e05585f refine noexcept specifiers on forwarding conversion constructors 2016-01-30 02:03:25 +01:00
Mickey Rose
b2c14972de remove explicitly-defaulted constructors and assignment operators ...
... where they should be implicitly defined by the compiler
2016-01-30 02:03:25 +01:00
Dane Springmeyer
bc89f7f877 upgrade to latest variant - refs mapbox/variant#73 2016-01-29 15:54:15 -08:00
artemp
64c2ad1e93 Just let the compiler generate move/copy for mapnik::value - via @lightmare ref https://github.com/mapnik/mapnik/issues/3274#issuecomment-176730124 2016-01-29 15:05:08 +01:00
artemp
a50036d421 value - make noexcept conditional + add move assigment operator 2016-01-29 13:07:43 +01:00
Mickey Rose
1eb298f48c fix text_render_thunk construction
- this reverts render_thunk_extractor visitation by text/shield
  symbolizer back to how it works in master, only amended to avoid
  passing temporaries to text_symbolizer_helper
2016-01-29 00:12:18 +01:00
Mickey Rose
6d84094f77 move render_markers_symbolizer to separate .cpp 2016-01-29 00:12:18 +01:00
Mickey Rose
f99c0e5a6f refactor render_markers_symbolizer 2016-01-29 00:10:19 +01:00
Mickey Rose
8a55eefbb5 derive virtual_renderer_common from renderer_common 2016-01-29 00:10:19 +01:00
Mickey Rose
844021a892 make face_manager copyable 2016-01-29 00:10:18 +01:00
Mickey Rose
a7ecabcde3 move render_group_symbolizer to separate .cpp
- use abstract class render_thunk_list_dispatch for the callback
  instead of template parameter render_thunks
- add class scoped_glyph_positions_offset for temporary shifting
  of glyph positions
- remove render_offset_placements
2016-01-29 00:10:18 +01:00
Mickey Rose
9d7b3d00e1 minor namespace cleanup in group_layout_manager 2016-01-29 00:10:18 +01:00
Mickey Rose
7761d32ec5 split common group symbolizer stuff 2016-01-29 00:10:18 +01:00
lightmare
5663e2daaf Merge pull request #3245 from lightmare/movable
add util::movable to complement util::noncopyable
2016-01-28 19:16:26 +01:00
artemp
ea68e202be Merge branch 'master' into visitor-no-copy 2016-01-27 17:10:51 +01:00
artemp
d027ed67c7 more const strictness, update to work with latest mapbox::variant/visitor-no-copy branch 2016-01-27 14:50:17 +01:00
artemp
4e8bbe48df fix return type 2016-01-27 12:05:39 +01:00
Dane Springmeyer
753a0ad216 give users a hint on what to do when they hit 'Invalid index file' 2016-01-26 12:19:34 -08:00
artemp
fa5bbd99fa mapnik::value - refactor, synchronise and simplify comparisons implementations 2016-01-25 12:27:52 +01:00
artemp
9774f41b85 mapnik::value_null - add <,<=,>,>= implementations 2016-01-25 12:26:57 +01:00
Mickey Rose
0784e36754 add util::movable to complement util::noncopyable 2016-01-22 00:24:24 +01:00
artemp
0e836d7e20 mapnik::value - add value_bool/value_bool impl 2016-01-21 18:35:53 +01:00
artemp
85c3f5dbc1 improve type promotion across arithmetic ops 2016-01-21 18:14:55 +01:00
artemp
e100037288 mapnik::value - improve type promotion for impl::add 2016-01-21 12:47:56 +01:00
artemp
f41d515572 fix operator<< 2016-01-19 11:38:52 +00:00
artemp
c615708a2a restore local variant_io.hpp with specialisation for bool (https://github.com/mapnik/node-mapnik/issues/582) 2016-01-15 09:26:42 +00:00
Artem Pavlenko
7997f3725e Merge pull request #3235 from mapnik/raster_mem_ds
Raster Type Memory Datasource
2016-01-14 16:19:43 +00:00
artemp
3333f3e1fa inherit mapnik::util::variant from mapbox::variant and add mapbox::variant as submodule 2016-01-14 15:02:41 +00:00
Blake Thompson
044c21db13 Made it possible to change the type of a memory datasource by inspecting the features that are added to the memory datasource 2016-01-14 08:36:12 -06:00
artemp
0a5f006bb9 SVG : add support for stroke-dashoffset 2016-01-11 10:56:04 +00:00
artemp
d3fc7f8fed Merge branch 'master' into svg-dash-array 2016-01-08 16:08:11 +00:00
artemp
9494bc15d4 SVG path parser - correct handling optional separator (,) between multiple command parts (#3225)
http://www.w3.org/TR/SVG/paths.html#PathElement
2016-01-08 12:00:51 +00:00
artemp
a8bf7c72f9 Merge branch 'master' into svg-dash-array 2016-01-08 10:46:17 +00:00
artemp
c8932b3df3 svg2png : use SVG dimensions as a fallback when bounding box has zero width or height (e.g horizontal or vertical line) 2016-01-08 10:20:50 +00:00
artemp
b1c22ba853 SVG :initial support for "stroke-dasharray" 2016-01-07 15:54:34 +00:00
Artem Pavlenko
513cfa7c80 Merge pull request #3219 from mapnik/address-sanitizer-happy
keep address-sanitizer happy ref (https://github.com/mapbox/mapnik-ve
2016-01-07 14:23:54 +00:00
artemp
ca83ca167d svg - move stroke-dasharray setup into dash-array parser method 2016-01-07 11:20:22 +00:00
artemp
e296e554a8 sync with 3ac6e46d01 2016-01-06 12:24:24 +00:00
artemp
50905c3f9a c++ style pedantic 2016-01-06 12:23:59 +00:00
artemp
7b2da35c01 fix typo doh 2016-01-05 19:52:36 +00:00
artemp
5cd3645cd1 keep address-sanitizer happy ref (https://github.com/mapbox/mapnik-vector-tile/pull/171) 2016-01-05 16:58:37 +00:00
artemp
ee0395df7a add basic read/write header support (quad_tree + spatial_index) ref (#3216) 2016-01-05 10:20:21 +00:00
artemp
e0c756ee8d geometry_envelope - add missing linear_ring 2015-12-17 12:07:05 +00:00
Dane Springmeyer
bd21e452d1 fix minor header glitches to allow headers to compile standalone 2015-12-16 14:22:36 -08:00
Dane Springmeyer
a0719870ab remove out of date/unused header 2015-12-16 14:22:09 -08:00
Dane Springmeyer
ce98a5c811 fix header glitches uncovered by time-header script - refs #3208 2015-12-16 13:17:19 -08:00
artemp
599b021175 support arbitrary (nested) attributes in JSON Geometry 2015-12-14 11:46:39 +00:00
Dane Springmeyer
50d1e2fbb3 handle more gcc 4.9 -Wshadow warnings 2015-12-04 14:07:42 -05:00
Dane Springmeyer
a58ef62fc2 start fixing gcc 4.9 -Wshadow warnings 2015-12-02 15:54:58 -05:00
Jiri Drbalek
100e3c4995 centroid: enable algorithm on multi-geometries with empty sub-geometries 2015-11-24 15:41:34 +00:00
Dane Springmeyer
9a29b5005d fix #3178 2015-11-19 20:57:05 -08:00
Dane Springmeyer
c6d6153964 fix multiple -Wunused-parameter warnings [skip ci] 2015-11-19 17:14:58 -08:00
artemp
da617f92eb add scale_image_agg' and reproject_and_scale_raster` overloads for backward caps 2015-11-19 12:26:16 +00:00
artemp
7d8f7357ed GeoJSON - refactor FeatureCollection grammar to restore empty features condition (#3167) 2015-11-18 14:44:39 +00:00
artemp
6d599dff0a Merge branch 'fix-gray-scaling-2' of https://github.com/mapycz/mapnik into mapycz-fix-gray-scaling-2 2015-11-17 15:03:37 +00:00
Artem Pavlenko
4e922f6a64 Merge pull request #3164 from mapycz/postgis-empty-geoms
check input data of centroid algorithm
2015-11-11 10:21:39 +00:00
Jiri Drbalek
924aa62662 raster scaling: fixes nodata handling, acurracy when working with small floats and clipping floats by [0; 255] 2015-11-10 20:37:45 +00:00
Jiri Drbalek
071eeeb660 centroid algorithm: check for empty geometries 2015-11-10 13:49:12 +00:00
artemp
dd31b95bbb better namings (post 9c7149aad5 itr_end implies Iterator concept which is not the case) ref #3166 2015-11-10 10:42:39 +00:00
Dane Springmeyer
9c7149aad5 fix variable shadowing in simplify_converter - refs #3166 2015-11-09 12:25:10 -08:00
artemp
5370dac598 Merge branch 'issue-3050' of https://github.com/wmde/mapnik into wmde-issue-3050 2015-11-09 13:56:06 +00:00
Dane Springmeyer
3db15cb823 avoid warning on unknown pragmas with gcc and older clang 2015-11-07 18:09:38 -08:00
Dane Springmeyer
7608040906 centralize warning suppression 2015-11-07 17:53:09 -08:00
Johannes Kroll
d4eee42db4 comment harfbuzz shaper changes 2015-11-06 12:04:20 +01:00
Dane Springmeyer
90886e7992 now working on Mapnik v3.0.9 [skip ci] 2015-11-05 11:26:31 -08:00
artemp
32331e9b3e GeoJSON parsing - add more expectation points + refactor code 2015-11-05 15:30:25 +00:00
artemp
85ec771573 move 'null' geometry to the top level 2015-11-05 15:30:25 +00:00
Dane Springmeyer
da624b9ef4 update test-data to pull in 9f471a25e3 -refs #3160 2015-11-04 13:57:14 -08:00
Artem Pavlenko
c3c7513c7f Merge pull request #3160 from mapycz/FIX-offseting
Fix offsetting
2015-11-04 15:29:55 +00:00
Johannes Kroll
be98fb733d fix khmer problem 2015-11-04 10:33:13 +01:00
artemp
c752cf2d1c variant - update to 91ba0301a6 2015-11-03 15:32:52 +00:00
artemp
6aca4b17f8 extract_bounding_box - fail on nested "FeatureCollection" elements 2015-11-03 13:33:06 +00:00
artemp
47c93eaf15 more formatting 2015-11-03 13:33:06 +00:00
artemp
6f71ad56d4 format 2015-11-03 10:46:26 +00:00
artemp
2893ee4551 mapnik::value - add missing specialisations for mapnik::value_bool in comparison operators + update unit tests 2015-11-03 10:11:29 +00:00
Dane Springmeyer
dad4f64813 include mapnik/config to avoid BOOST_MPL_LIMIT_VECTOR_SIZE macro mismatch warnings 2015-11-02 09:09:14 -08:00
artemp
439fcd0426 correct clog message + formatting 2015-11-02 14:27:57 +00:00
artemp
58c7e5baa3 json - use unified error_handler accross grammars 2015-11-02 13:10:40 +00:00
artemp
25ed5d1e00 json error_handler : optional MAPNIK_LOG_ERROR + don't throw + return qi::fail 2015-11-02 12:46:18 +00:00
Roman Galacz
80fa21cc6f Fix offsetting 2015-11-02 12:32:06 +01:00
Johannes Kroll
9088ae49e1 Merge remote-tracking branch 'origin-mapnik/master' into issue-3050 2015-11-02 10:16:45 +01:00
artemp
2366eaf2f5 value - fix typo (up-cast value_bool to value_double in operator==()) 2015-10-30 14:48:10 +00:00
artemp
f3bed3a627 JSON - optimise geometry grammar 2015-10-30 13:10:51 +00:00
Johannes Kroll
47a2a22f60 less ternaries 2015-10-30 07:34:50 +01:00
Johannes Kroll
9d4134694c use vector instead of map for glyph table 2015-10-30 07:30:41 +01:00
Johannes Kroll
e9ac686b49 add spaces 2015-10-29 16:39:23 +01:00
Johannes Kroll
a44e64864c add spaces 2015-10-29 16:29:02 +01:00
artemp
8a762a0a19 GeoJSON - ensure error_handler doesn't read passed the end of stream re #3154 2015-10-29 14:08:51 +00:00
artemp
89aef9726a sync variant => cd8fe9ce3f 2015-10-28 12:37:55 +00:00
artemp
7b4e21e242 more cleanups 2015-10-28 10:09:22 +00:00
artemp
4dee3d3b51 don't skip iter_pos 2015-10-28 09:07:09 +00:00
artemp
6122cdf7a8 cleanup - remove commented out code 2015-10-28 09:07:09 +00:00
Johannes Kroll
a28e0b1588 Merge branch 'master' of https://github.com/mapnik/mapnik 2015-10-27 23:29:24 +01:00
artemp
b99a20378d remove swap and implement assign
https://github.com/mapnik/mapnik/issues/3103
    https://github.com/mapnik/mapnik/pull/3146
2015-10-27 14:59:17 +00:00
Johannes Kroll
7103ad6f35 change font handling in harfbuzz shaper (issue #3050) 2015-10-26 18:33:53 +01:00
artemp
bfbc72c484 feature : put back set_id() for upstream compatibility 2015-10-20 14:36:19 +01:00
artemp
ab2d86c617 shape.input: remove set_id() method as it's no longer required ref #1020 #1019 2015-10-20 14:18:17 +01:00
Dane Springmeyer
ee873aa17d fix compile with older harfbuzz that lacks HB_VERSION_ATLEAST 2015-10-16 14:55:43 -07:00
artemp
e88ecb86c4 add has_name(std::string const& name) const method 2015-10-16 13:14:41 +01:00
artemp
2437473e74 c++11 - upfate to canonical operator= impl 2015-10-16 12:46:24 +01:00
artemp
584fc5a61a Merge branch 'master' into smart-geojson 2015-10-16 10:33:32 +01:00
Dane Springmeyer
5da6563db4 maintain 'FT_LOAD_NO_HINTING' / adapt to changes upstream in harfbuzz 1.0.5 mapnik/test-data-visual#25 2015-10-15 13:56:02 -07:00
artemp
2906706a40 geojson.input - split parsing FeatureCollection and single Feature/Geometry into separate grammars 2015-10-15 15:12:16 +01:00
Dane Springmeyer
b75f075885 now working on mapnik v3.0.8 [skip ci] 2015-10-12 16:31:47 -07:00
Dane Springmeyer
03cc55f4f0 remove MAPNIK_VERSION_IS_RELEASE - refs #3123 2015-10-12 10:28:23 -07:00
Dane Springmeyer
393070ae6c remove unused code 2015-10-12 10:10:08 -07:00
Jiri Drbalek
51878b3321 remove needless header file 2015-10-12 15:29:20 +00:00
Dane Springmeyer
719135d755 start working on Mapnik v3.0.7 (https://github.com/mapnik/mapnik/milestones/Mapnik%203.0.7) [skip ci] 2015-10-08 10:24:17 -07:00
Blake Thompson
69a502043b Bump down to non release 2015-10-07 16:59:13 -07:00
Dane Springmeyer
3cebe9726b setting up for mapnik v3.0.6 release 2015-10-07 14:47:41 -07:00
Dane Springmeyer
20aaeac515 fix more boost -Wsign-compare warnings [skip ci] 2015-10-07 14:40:51 -07:00
artemp
0b1ae8bd01 csv_grammar - implament custom (white-space only) skipper + optimise grammar 2015-10-07 12:33:10 +01:00
Blake Thompson
6e47b1bd10 Updated the error handling of geojson parser so that it is more clear where an error orginates 2015-10-06 15:00:53 -07:00
artemp
8ec1e3e73d geometry_is_simple - fix handling multi-geometries (1.59) 2015-10-06 16:14:20 +01:00
artemp
4d08e3f62c spatial_index - implement `query_first_n' 2015-10-06 11:31:38 +01:00
Blake Thompson
c127620b6c Updated the way that is_valid and is_simple operate in mapnik and added lots of testing around them. 2015-10-05 15:10:24 -07:00
artemp
860631acc5 jpeg: fix re-occuring boolean/TRUE/FALSE issue + prefer using c++ headers 2015-10-05 15:23:20 +01:00
artemp
dfba56b23b quad_tree - pass node by *& 2015-10-05 15:23:20 +01:00
artemp
178e39e19a make separator single character and simplify/optimise csv_grammar 2015-10-05 15:23:20 +01:00
artemp
1bccca9ff8 Merge remote-tracking branch 'origin/master'
Conflicts:
	plugins/input/csv/csv_datasource.cpp
2015-10-02 12:27:28 +01:00
artemp
290c4d3e67 csv_grammar - handle 'quote' parameter dynamically 2015-10-02 12:19:09 +01:00
Jiri Drbalek
d6978c29b2 Merge pull request #3100 from mapycz/use_move
use move semantics instead of shared_ptr
2015-10-02 09:49:55 +02:00
Dane Springmeyer
be22a67b60 fix -Wshadow warnings 2015-10-01 13:35:23 -07:00
Dane Springmeyer
dd89552bc5 consistenly use pragma GCC for now instead of clang 2015-10-01 13:35:23 -07:00
Dane Springmeyer
5a97c3d541 fix variable shadowing 2015-10-01 13:35:23 -07:00
Jiri Drbalek
5c0aa52d22 apply constness 2015-10-01 20:11:37 +00:00
Jiri Drbalek
da678406b1 use move semantics instead of shared_ptr 2015-10-01 20:11:37 +00:00
Jiri Drbalek
68392f189b fix build on linux 2015-10-01 19:56:57 +00:00
Dane Springmeyer
c414526802 Merge pull request #3099 from mapycz/fix-todo
remove Feature alias of feature_impl
2015-10-01 10:53:27 -07:00
artemp
4273e37278 Merge branch 'master' into csv-disk-index 2015-10-01 15:26:47 +01:00
Jiri Drbalek
a03081c367 remove Feature alias of feature_impl 2015-10-01 14:16:11 +00:00
Dane Springmeyer
d70725b218 fix variable shadowing in extract_bounding_box_grammar 2015-09-30 15:42:42 -07:00
Dane Springmeyer
aa2c28b89c fix variable shadowing in image_any 2015-09-30 15:42:09 -07:00
Dane Springmeyer
761093457a restore support for single threaded build 2015-09-30 14:23:46 -07:00
artemp
848098baeb spatial_index/quad_tree - remove `operator>>' requirement, instead value_type stored must have standard layout for correct (de)serialisation + update unit test 2015-09-29 15:44:57 +01:00
artemp
2f35c71606 mapnik::quad_tree - add methods required for spatial_index construction and serialization
remove utils/shapeindex/quadtree.hpp
2015-09-29 12:20:46 +01:00
artemp
d87a04157c spatial_index - bug fixes + cleanup 2015-09-28 15:51:38 +01:00
artemp
99617ad71c spatial_index<...> - use operator>> for reading Value's + update shape_index_featureset 2015-09-25 10:43:10 +01:00
artemp
8c2f15c94a mapnik::value - always upcast to the higher definition numeric value (rhs or lhs) in operator== and operator!=
add unit test for comparing numeric mapnik::values
2015-09-24 17:38:16 +01:00
artemp
813924a6f2 mapnik::value - always upcast to the higher definition numeric value (rhs or lhs) in operator== and operator!=
add unit test for comparing numeric mapnik::values
2015-09-24 17:36:13 +01:00
artemp
8c16f267bb remove unused parameters from ctor 2015-09-24 11:36:24 +01:00
artemp
335f607c5a fux namings and typedefs 2015-09-24 11:20:19 +01:00
artemp
7927a9143c spatial_index - generalised 'on-disk' bounding box queyring interface 2015-09-24 11:19:03 +01:00
artemp
6eaf5b7b96 value - fix/add remaing static_cast<> 2015-09-21 15:38:17 +01:00
artemp
7938479bb4 value - apply explicit static_cast<lhs_value_type>(rhs) (ref #3078) 2015-09-21 15:31:25 +01:00
artemp
e559619855 value - cast rhs to value_bool (ref #3078) 2015-09-21 15:05:03 +01:00
Jiri Drbalek
91db109b37 fix parsing colors in hexadecimal notation 2015-09-18 13:54:05 +00:00
artemp
9ce2f337b3 post-release update 2015-09-17 14:21:20 +01:00
artemp
165c704b93 setting up for mapnik v3.0.5 release 2015-09-16 18:45:26 +01:00
artemp
d54eca9dca image - fix copy/move implementation and update/improve tests 2015-09-16 14:28:55 +01:00
artemp
d7d3da6935 image - add iterator interface 2015-09-16 11:37:03 +01:00
artemp
acb8feea01 image - update shallow constructor to take raw bytes pointer
detail::buffer - inline data() size() methods
update unit test
2015-09-16 10:14:40 +01:00
Artem Pavlenko
c4e0516ba6 Merge pull request #3061 from mapycz/colorize-alpha
colorize-alpha: add support for transparent colors
2015-09-15 16:11:28 +01:00
Dane Springmeyer
b2d08ea4ea re-enable zero allocation image interface - refs #3069 2015-09-14 16:45:58 -07:00
artemp
d9ab7fd25f CSV grammar : skip leading \n and/or \r which result from std::getline used with non-native line endings
The goal is to support LF, CR and CRLF on all platforms.
2015-09-14 11:46:11 +02:00
artemp
ad80c91657 cache processed layouts to ensure there are stay in scope (placement_finder) - via @talaj 2015-09-11 15:29:28 +02:00
Jiri Drbalek
6f0b4d438c colorize-alpha: add support for transparent colors 2015-09-11 11:31:08 +00:00
artemp
8128a2b1ef topojson - remove 'invalid' geometry type to avoid default constructed geometries 2015-09-10 19:28:15 +02:00
artemp
724bd56ec4 don't use curly brackets initializer for static member variables (keep vc++ happy) 2015-09-09 13:18:45 +02:00
Jiri Drbalek
a5f314fd87 colorize-alpha: remove needless conditions 2015-09-08 15:05:04 +00:00
Artem Pavlenko
282bdf178c Merge pull request #3058 from mapycz/colorize-alpha-fix-color-value-normalization
colorize-alpha: fix normalization of color components
2015-09-08 12:50:46 +02:00
artemp
a32fbdf635 use atomic<> where possible to avoid locking 2015-09-08 12:28:16 +02:00
artemp
81ead3dc78 make destroyed_ atomic<> 2015-09-08 12:26:43 +02:00
Jiri Drbalek
79f4e3ac8f colorize-alpha: fix normalization of color components 2015-09-08 10:14:20 +00:00
Jiri Drbalek
72222efad7 scale-hsla image filter: unlimit parameters 2015-09-03 11:33:53 +00:00
artemp
bd35054d27 update version 2015-08-27 13:07:51 +02:00
Jiri Drbalek
75a299ab1d remove incorrect and meaningless comments 2015-08-26 14:29:09 +00:00
artemp
45d5e39e22 update CHANGELOG for mapnik v3.0.4 release 2015-08-26 12:06:51 +02:00
Artem Pavlenko
85eebaaf57 Merge pull request #3038 from zerebubuth/fix/deadlock-in-recursive-datasource-registration
Fix deadlock in recursive datasource registration.
2015-08-25 15:07:00 +02:00
artemp
3753d50b75 CSV - revive row_limit parameter + fix stderr 2015-08-25 15:05:04 +02:00
artemp
8709fb6f7c CSV - optimise parsing by providing num_columns hint 2015-08-24 16:35:32 +02:00
Matt Amos
3d7b84a598 Fix deadlock in recursive datasource registration.
The datasource cache was taking an exclusive lock on the simple
mutex used to protect the singleton's data pointer. This works
okay when everyone always calls it non-recursively, but when the
recursive flag is true then it will always deadlock when called
on any directory with subdirectories.

Additionally, many methods which accessed private data members of
the cache were not protected by any locks.

Since the call pattern of registering datasources is strictly
tree-shaped then it's a good candidate for a recursive mutex. This
has a slightly higher overhead than a simple mutex, so rather than
change the singleton's mutex to be recursive, I've added a new
instance mutex to the datasource cache.

Also, added a very basic test which reproduces the problem and
shows that it's fixed with this patch.
2015-08-23 20:25:35 +01:00
artemp
4babec802a CSV - implement spatial index access to features on disk + preserve support for inline data (work-in-progress) 2015-08-21 13:52:42 +02:00
artemp
f7d1cf82a9 Merge branch 'master' into large_csv 2015-08-13 13:28:35 +02:00
artemp
332d875839 set MAPNIK_VERSION_IS_RELEASE 0 2015-08-13 11:30:33 +02:00
Jiri Drbalek
507c556386 remove superfluous line 2015-08-13 10:11:18 +00:00
Blake Thompson
10ad41d218 Removed unrequired MAPNIK_DECL from src/image_util_jpeg added pragma to prevent warning on linux with clang. 2015-08-12 13:00:04 -05:00
Blake Thompson
3d262c7426 Fixed linking errors in parse jpeg. closes #3031 2015-08-12 09:32:32 -05:00
artemp
715cff3f2a fix - pass by const ref 2015-08-12 12:09:40 +02:00
artemp
1f6c44a791 version : upate minor number 2015-08-12 11:38:10 +02:00
artemp
ebf4d66900 Merge branch 'master' into image_filters 2015-08-12 11:27:59 +02:00
artemp
751abba262 add parse_jpeg_quality method + uint test parsing jpegXX and jpeg:quality=XX options
ref #3024
2015-08-12 10:29:57 +02:00
Blake Thompson
0b6b11b9cf Added the ability for filter_image to throw properly with bad input and added the ability for a new image to be returned 2015-08-11 19:22:09 -05:00
Blake Thompson
75522c0cc5 Merge branch 'master' into image_filters 2015-08-11 15:31:41 -05:00
Blake Thompson
792e94ae90 Removed image-filter from map object, made it so that premultiplication/demultiplication only took place when correctly required in image filters. 2015-08-11 14:31:29 -05:00
Blake Thompson
ab2855a130 Made it so that singleton deleted at exit could be turned off. 2015-08-11 11:34:35 -05:00
artemp
6c01870397 expose mapnik::geometry::polygon<double>::rings_container to allow specialising interior rings container 2015-08-11 17:13:04 +02:00
Artem Pavlenko
e68da0d083 Merge pull request #3016 from mapycz/text-null-bbox
Null text collision box
2015-08-10 12:18:31 +02:00
artemp
2913982d31 const 2015-08-10 11:19:11 +02:00
Blake Thompson
a492028f25 Initial commit of changes for image_filters so they can be called outside of agg renderer 2015-08-07 15:54:39 -05:00
Blake Thompson
ec73b50557 Added ability for image filters to be used on the map object, so that the entire map has an image filter applied. Corrected issues with colorblind algorithms due to incorrect algorithm used as colorspace was required to be in sRGBA rather then RGBA. 2015-08-05 12:35:17 -05:00
Blake Thompson
6245790e72 Added new image filters that allow an image to be viewed in colorblind modes, allow cartographers to see what their maps would appear like to a color blind person 2015-08-04 17:41:31 -05:00
Jiri Drbalek
162f82cba5 ensure null text has no bbox 2015-08-04 13:29:16 +00:00
Blake Thompson
8305e74eaf setting up for mapnik v3.0.2 release 2015-07-31 14:31:21 -05:00
Artem Pavlenko
727341f41a Merge pull request #3003 from mapnik/svg-parser-errors
SVG parser refactoring and improvements
2015-07-31 17:06:30 +02:00
artemp
f9bd21eeb5 Merge branch 'svg-parser-errors' into large_csv 2015-07-31 11:18:55 +02:00
Dane Springmeyer
a552518541 avoid a few -Wsign-conversion warnings 2015-07-30 11:10:23 -07:00
artemp
362a2ee0b1 use std::ptrdiff_t and remove static_cast's - ref #3006 2015-07-30 14:32:18 +02:00
artemp
42c8da72e9 Merge branch 'master' into svg-parser-errors 2015-07-28 10:29:59 +02:00
Dane Springmeyer
a78a89564b back to development of > Mapnik 3.0.1 [skip ci] 2015-07-27 20:27:21 -07:00
Dane Springmeyer
28f6f4d63b setting up for mapnik v3.0.1 release 2015-07-27 18:30:26 -07:00
Dane Springmeyer
4e2890bb18 iwyu for spirit_transform_attribute.hpp - closes #2993 2015-07-27 17:41:10 -07:00
Dane Springmeyer
411486eaf3 ignore warnings for karma 2015-07-27 17:38:36 -07:00
Dane Springmeyer
abf04d6305 Merge pull request #2988 from mapycz/collision-extent
do not store out of extent collision boxes
2015-07-27 17:25:45 -07:00
Dane Springmeyer
871a881634 Merge pull request #3002 from mapnik/issue-2971
Fix windows compile around glyph_info forward declare
2015-07-27 14:59:18 -07:00
Dane Springmeyer
ba8d51e029 include fixups 2015-07-27 14:57:57 -07:00
artemp
ce2eaa02ee add operator==() 2015-07-23 12:58:14 +02:00
artemp
43b3770a95 make gradient movable 2015-07-21 14:12:47 +02:00
artemp
52007b8019 Merge branch 'master' into svg-parser-errors 2015-07-21 09:46:38 +02:00
Jiri Drbalek
43dcf35a93 do not store out of extent collision boxes (fixes #2963) 2015-07-20 15:37:05 +00:00
artemp
9da6b9b389 format 2015-07-20 15:41:04 +02:00
artemp
9ab1935a36 add boolean flag for tracking when to re-calculate extent (ref #2985) 2015-07-17 20:17:51 +02:00
Dane Springmeyer
25af931f58 don't forward declare glyph_info in text_line.hpp 2015-07-17 07:49:41 -07:00
Dane Springmeyer
bb16cf90ff make text_itemizer noncopyable 2015-07-17 07:49:16 -07:00