Commit graph

3794 commits

Author SHA1 Message Date
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