Commit graph

3891 commits

Author SHA1 Message Date
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
Dane Springmeyer
f9d65d0167 Merge branch 'master' of github.com:mapnik/mapnik into issue-2971 2015-07-17 07:23:10 -07:00
artemp
5423f4c5bf relax grammar rules to allow arbitary ordering - currently we're looking for features skipping anything else
ref: https://github.com/mapnik/mapnik/issues/2983
2015-07-17 10:59:59 +02:00
artemp
55215a7b30 Merge branch 'master' into svg-parser-errors 2015-07-16 12:18:25 +02:00
artemp
c664394397 remove duplicate operator= 2015-07-16 12:17:21 +02:00
artemp
eded32d27d formattin 2015-07-15 11:30:05 +02:00
artemp
dfe73b7995 mapnik c++ style 2015-07-15 11:26:45 +02:00
Dane Springmeyer
0a126a3765 attemp to fix #2971 2015-07-14 22:54:32 -07:00
Dane Springmeyer
2b8abc4bfa fix #2975 - remove usage of boost/algorithm/clamp.hpp 2015-07-14 19:19:39 -07:00
artemp
a46af76216 initial commit - make parse and parse_from_string return boolean ,collect error messages 2015-07-14 19:45:50 +02:00
artemp
6d6cb15b45 skewX/skewY - add input validation ref https://github.com/mapbox/mapbox-studio/issues/1409
* convert input angle into -90,90 range
* clamp to -89,89 range
2015-07-14 11:53:50 +02:00
artemp
6325bf21cd geojson : correct parsing feature boundaries ref #2964 2015-07-10 09:45:24 +02:00
Dane Springmeyer
153051d020 add test to ensure icu/harfbuzz shapers can be compiled 2015-07-08 23:28:38 -07:00
Dane Springmeyer
a6a4f1eb2e fix compile of dormant icu_shaper 2015-07-08 23:27:41 -07:00
Dane Springmeyer
784bd8d194 use correct include type in scrptrun.hpp 2015-07-08 23:25:55 -07:00
artemp
73cae70a41 correctly populate close_points when skipping duplicate (coincident vertices) 2015-07-07 18:38:25 +02:00
artemp
2fd1525269 remove redundant check 2015-07-07 15:02:13 +02:00
artemp
bb815dacf8 offset_converter - skip duplicate SEG_CLOSE (after LINETO (startx,starty)) commands to normalise input 2015-07-07 14:20:54 +02:00
Dane Springmeyer
a6fd89df3e Merge pull request #2941 from mapnik/offset_fix
Fix situation where offset_converter might start off with an SEG_END …
2015-07-06 18:50:52 -07:00
Dane Springmeyer
3ed7e347cb use unique_ptr instead of shared_ptr for glyph_positions_ptr - refs #2516 2015-07-06 18:47:47 -07:00
Dane Springmeyer
418855118a remove un-implemented method on glyph_positions 2015-07-06 17:45:59 -07:00
Dane Springmeyer
ff720d6231 support clipping in markerssymbolizer on multi-types - refs #2951 2015-07-06 15:40:34 -07:00
Blake Thompson
d5c11af019 Fixed issues with multi-line paths in offset_converter, line offsets were following the polygon offset logic when they shouldn't. Closes #2942 2015-07-06 15:31:10 -05:00
Dane Springmeyer
66a67dff5c remove unused header 2015-07-01 10:00:00 -07:00
Dane Springmeyer
a42e93a259 remove unneeded assert - refs #2943 2015-07-01 09:58:37 -07:00
Blake Thompson
770d93b7cc Fix situation where offset_converter might start off with an SEG_END from the vertex, therefore starting invalid processing. Tests added to confirm fix. Ref #2937 2015-06-30 22:23:44 -05:00