Commit graph

4185 commits

Author SHA1 Message Date
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
Blake Thompson
01dbf53a62 setting up for mapnik v3.0.0 release 2015-06-30 19:30:11 -05:00
Dane Springmeyer
48eb4abedb merge with master 2015-06-30 00:38:45 -07:00
artemp
8e40711ca4 Merge branch 'master' into large_csv 2015-06-23 17:54:38 +02:00
artemp
73e0ac6a77 Merge branch 'master' into large_csv 2015-06-23 09:43:38 +02:00
Dane Springmeyer
15589c8568 pull in latest master 2015-06-22 13:51:09 -07:00
Dane Springmeyer
e4631f15ae fix #2921 2015-06-22 13:43:07 -07:00
Dane Springmeyer
9a5cc81924 fix a few -Wunused-argument warnings [skip ci] 2015-06-22 13:29:57 -07:00
artemp
fec6d11560 Merge branch 'master' into large_csv 2015-06-19 17:30:18 +02:00
artemp
7e0c23815e remove boost::ptr_vector usage 2015-06-19 10:45:43 +02:00
Daniel Patterson
ca491d8aa9 Export svg_parser symbols so we can use these functions from node-mapnik 2015-06-18 15:13:52 -07:00
artemp
69236137e5 make 'closing' quote an optional 2015-06-18 14:09:33 +02:00
artemp
d893718343 Merge branch 'master' into large_csv 2015-06-18 13:06:28 +02:00
artemp
98d87f4c88 replace remaining boost::unordered_map 2015-06-18 11:08:35 +02:00
artemp
dd8394687d remove dupe hash 2015-06-18 10:57:03 +02:00
artemp
5b1f0d3ba8 Merge remote-tracking branch 'origin/master' 2015-06-18 10:49:26 +02:00
artemp
022c2f7255 add std::hash specialization for mapnik::value 2015-06-18 10:48:56 +02:00
artemp
b9ed80ecc8 add std::hash specialization for mapnik::value 2015-06-18 10:10:26 +02:00
Dane Springmeyer
70959e8576 safer conversion of unsigned in xml_attribute cast 2015-06-17 13:29:54 -07:00
Blake Thompson
bd9e580cd8 Merge branch 'master' into offset 2015-06-16 11:50:04 -05:00
artemp
8c6bf0eef6 update copyright notice 2015-06-16 12:49:16 +02:00
artemp
0a24e8cfca remove unused #include's 2015-06-16 10:04:50 +02:00
Dane Springmeyer
bb6c9a98a5 fix more -Wsign-conversion -Wconversion warnings 2015-06-15 20:41:52 -07:00
Dane Springmeyer
8a432ade33 fix -Wsign-compare warnings in topojson_utils 2015-06-15 20:41:52 -07:00
Dane Springmeyer
77a7eb3343 fix -Wshadow warning harfbuzz shaper 2015-06-15 20:41:52 -07:00
Dane Springmeyer
b2c85e0c65 fix a slew of -Wsign-conversion, -Wconversion, -Wunused-argument warnings 2015-06-15 20:41:51 -07:00
Dane Springmeyer
48d4bfb170 proper use of std:: in safe_cast 2015-06-15 20:41:50 -07:00
Dane Springmeyer
23e25ca432 share const rendering buffer impl to avoid const_cast + avoid various warnings 2015-06-15 20:41:50 -07:00
Dane Springmeyer
e23c263ba8 remove unused constructor for matrix_node 2015-06-15 20:41:50 -07:00
Dane Springmeyer
be4d6e70f8 use c++11 style const_cast + safe cast 2015-06-15 20:41:49 -07:00
Dane Springmeyer
6d124cc229 remove unused set_rectangle method 2015-06-15 20:41:49 -07:00
Dane Springmeyer
5d2be98cf2 Fix -Wsign-conversion warning 2015-06-15 20:41:48 -07:00
Dane Springmeyer
f36b451602 use safe cast and std::lround 2015-06-15 20:41:48 -07:00
Dane Springmeyer
c55662ab43 rename pixel_cast to safe_cast 2015-06-15 20:41:48 -07:00
Dane Springmeyer
93afb963e9 Fix -Wsign-compare warnings 2015-06-15 20:41:47 -07:00
Dane Springmeyer
34b9cb37f7 fix -Wsign-conversion warning in UnicodeString.hashCode() 2015-06-15 20:41:47 -07:00
Dane Springmeyer
45bda29a45 switch to c++11 library over boost (confirmed no speed drop on osx with test_marker_cache.cpp) 2015-06-15 20:41:47 -07:00
Dane Springmeyer
0d86afff36 start using -Wsign-compare and -Wshadow + fix heaps of warnings - refs #2907 2015-06-12 14:51:18 -07:00
Dane Springmeyer
8d3d136da7 fix hang on windows in pixel_cast
- manifested converting double -> int64_t.
  - it is unclear why this explicitness is needed on windows
    to avoid greater calling itself. But it is clear that the
    static_cast<double>(<std::int64_t>) is not enough for the
    template deduction to match the <double,double> case automatically
  - Making this explicit is probably better anyway, but odd it is needed.
  - Finishes closing #2893, refs #2893, amends 96f7120ecc and d29a0f18b1
  - Seen with both VS 2014 CTP 4 and VS 2015 Preview
2015-06-12 12:38:22 -07:00
Dane Springmeyer
29b464e868 simplify numeric_compare template logic 2015-06-12 12:01:26 -07:00
Dane Springmeyer
a5e10aa25c std::numeric_limits are not yet constant on windows - see #2911 2015-06-12 11:48:49 -07:00
artemp
a030f5531d add <limits> 2015-06-12 14:43:56 +01:00
artemp
15041ba334 replace boost::numeric::bounds with detail::bounds where highest/lowest return constexpr
( since c++11 std::numeric_limits<T>::min/max return `static constexpr T`)
prefer if/else if..  over if/if...)
2015-06-12 13:40:47 +01:00
Dane Springmeyer
d29a0f18b1 fix pixel_cast by avoiding comparing across sign<->unsigned - refs #2893 2015-06-12 00:02:59 -07:00
Dane Springmeyer
6a3d63aa40 consistent initialization in scriptrun and placement_finder 2015-06-11 11:44:27 -07:00
Blake Thompson
d3f37d8f1e Updated clipper to be reversed and fixes to the way the algorithm operates. 2015-06-11 12:47:00 -05:00
artemp
ed3a74afed disambiguate naming 2015-06-11 13:20:49 +01:00
artemp
eabe5b50e6 Merge branch 'master' into mapycz-fix-raster-scaling 2015-06-11 13:15:38 +01:00
artemp
96f7120ecc add pixel_cast<T>() ref #2893
replace boost::numeric_cast with mapnik::pixel_cast
2015-06-11 13:10:02 +01:00
artemp
e32465368b Merge branch 'fix-raster-scaling' of https://github.com/mapycz/mapnik into mapycz-fix-raster-scaling 2015-06-11 10:28:41 +01:00
Dane Springmeyer
f5a792807e fully header only impl should not use MAPNIK_DECL 2015-06-10 23:03:07 -07:00
artemp
40b963f9ad csv_grammar - handle various quotting options + disable csv_utils::fix_json_quoting(csv_line) 2015-06-10 13:40:55 +01:00
artemp
e5f1379fea handle escape characters 2015-06-10 11:41:45 +01:00
artemp
f1feedc54c Merge branch 'master' into large_csv 2015-06-10 11:14:19 +01:00
artemp
8e30a89522 remove wkt_generator_grammar_int to minimise code duplication
remove redundant template parameter - we can deduce coord_type from Geometry
add coord generator traits to control generator instantiation at compile time
2015-06-10 11:10:17 +01:00
artemp
89d258743a use inheritance to define geometry ( struct geometry : geometry_base<T> ) + provide value_type type alias in geometry 2015-06-10 10:55:34 +01:00
Blake Thompson
08602392a3 Merge branch 'master' into offset 2015-06-09 13:18:31 -05:00
Blake Thompson
d209e5bc33 After some tweaking determined what I feel like are the best values for threshold and limiting sharp corners 2015-06-09 13:15:12 -05:00
Blake Thompson
dd104b0b1b Updated offset converter to remove large spikes 2015-06-09 11:31:50 -05:00
artemp
11e58275e9 fix typedef's 2015-06-09 15:22:01 +01:00
Blake Thompson
75f7cb26bb Reversed the offsets 2015-06-09 09:18:52 -05:00
artemp
f4ec97489d add 'csv' dir 2015-06-09 10:33:01 +01:00
artemp
908f03bc19 add csv_grammar 2015-06-09 10:21:38 +01:00
Blake Thompson
a74c4abe57 Reverted to original offset directions for now 2015-06-08 19:33:00 -05:00
Dane Springmeyer
2a01b2da03 Merge branch 'master' of github.com:mapnik/mapnik into offset 2015-06-08 13:54:04 -07:00
Jiri Drbalek
76b7466719 fix rendering raster without scaling 2015-06-08 17:31:56 +00:00
Dane Springmeyer
d7bffd51f2 shuffle marker_helpers includes 2015-06-06 08:19:54 -07:00
Dane Springmeyer
29c9e97d76 minor code cleanup in process_group_symbolizer 2015-06-06 08:09:06 -07:00
Blake Thompson
4de33bd483 Updated offset so that it only requires onetime through and rewind is not required to be called. This was done because some adapters do not respond well to rewind. 2015-06-05 17:12:42 -05:00
Blake Thompson
35f4ae5bc7 Tune threshold some for offset converter 2015-06-05 12:03:52 -05:00
Blake Thompson
c3574c1008 Initial commit changing offsets 2015-06-05 10:04:24 -05:00
Dane Springmeyer
dcfa0b655c fix #2863 by adding back compatibility of point symbolizer interior placement on point geometries + update visual tests 2015-06-04 07:45:44 -07:00
Dane Springmeyer
4bf4bb0104 Merge pull request #2880 from zerebubuth/fix/rapidxml-loader-trim-whitespace
Fix rapidxml XML loader to trim whitespace
2015-06-03 14:03:53 -07:00
Matt Amos
1778d19b22 Added headers required on Mac OS - not sure why not on Linux. 2015-06-03 15:56:37 +01:00
Artem Pavlenko
a235316573 Merge pull request #2883 from mapycz/missing-style
better handling of missing styles
2015-06-03 11:54:06 +01:00
artemp
3c159f7163 remove unused dump_xml.hpp 2015-06-03 11:18:32 +01:00
Jiri Drbalek
abf64342f9 raise missing style message to MAPNIK_LOG_ERROR 2015-06-03 10:04:33 +00:00
Matt Amos
dd112b33e2 Added visibility attribute to XML symbols.
Thanks to @flippmoke, symbol visibility is exactly the cause of
the previous compilation error. Until it's decided whether or not
to turn this off (at least for testing & coverage builds?), I've
added the necessary annotations to allow it to compile.
2015-06-02 18:10:59 +01:00
artemp
8e1e5f19d1 Merge remote-tracking branch 'origin/master' 2015-06-02 15:39:35 +01:00
artemp
90a27abccb catch and remove more spurious std::move's 2015-06-02 15:36:31 +01:00
Dane Springmeyer
f8370acc9c fix a few files that need utf_conv_win.hpp 2015-06-02 07:14:31 -07:00
artemp
82a98a6d85 catch and remove more spurious std::move's 2015-06-02 14:48:02 +01:00
artemp
df4226a825 remove spurious std::move's (clang - moving a temporary object prevents copy elision [-Wpessimizing-move]) 2015-06-02 14:26:35 +01:00
artemp
de568ff054 polygon<T> - add default ctor 2015-06-02 14:23:22 +01:00
artemp
2eaa90033a move singleton to util/singleton.hpp
move windows UTF conversion routines to util/utf_conv_win.hpp
2015-06-02 11:10:41 +01:00
artemp
9a93b21159 remove unused member variable + make singleton always thread safe 2015-06-02 10:32:30 +01:00
artemp
8653508a9a use std::aligned_storage in CreateStatic policy 2015-06-02 10:27:22 +01:00
artemp
b3af8bd5f9 implement DCLP using c++11 (http://preshing.com/20130930/double-checked-locking-is-fixed-in-cpp11/)
ref #2838
2015-06-02 10:24:38 +01:00
artemp
c399469d95 use constexpr instead of BOOST_STATIC_CONST 2015-06-01 17:23:51 +01:00
Matt Amos
ebab4df95f Remove unused source memory.[ch]pp.
I could not find any references to this source file from any
other, and it looks like it has been largely unmodified for the
past 5 years. This suggests that it has been orphaned.
2015-05-29 19:06:13 +01:00
Blake Thompson
847a9f0d45 Merge pull request #2839 from mapnik/static_strategy
Changed from numeric casts to static casts in strategies
2015-05-26 16:19:13 -05:00
Blake Thompson
ee551cd949 Removed vector tile strategy 2015-05-26 16:18:10 -05:00
Blake Thompson
85e2b53490 Changed from floor to round 2015-05-26 15:52:41 -05:00
Blake Thompson
506d2f435f Added vector tile strategy 2015-05-26 15:52:41 -05:00
Blake Thompson
611eb6e7a3 Changed from numeric casts to static casts 2015-05-26 15:52:41 -05:00
Jiri Drbalek
344a6ec8ba grid: formatting 2015-05-25 21:03:40 +00:00
Jiri Drbalek
51064a9479 grid: use correct types 2015-05-25 21:03:40 +00:00
Dane Springmeyer
4667e9470a more portable workaround for gil c++11 bug - closes #2859 2015-05-24 13:48:04 -07:00
artemp
bbbe24ac9f format - remove extra ; 2015-05-22 09:09:50 +01:00
Dane Springmeyer
c2e94c68a5 fix crash + add crashing testcase for #2842 2015-05-21 20:39:14 -07:00
artemp
3b663af863 use boost::spirit::standard instead of boost::spirit::ascii to avoid assertions failing (isascii_(ch)) in debug builds - ref #2829 2015-05-21 11:27:21 +01:00
Dane Springmeyer
84e4d8bf22 Start calling geometry::correct everywhere possible - refs #2834 2015-05-20 14:00:30 -07:00
Blake Thompson
2031215247 Renamed set_opacity to apply_opacity, reverted it to the old logic of set_alpha. Updated tests, clamping is now used. 2015-05-20 13:08:18 -05:00
Blake Thompson
b68d079255 Changed the name of the set_alpha and multiply_alpha to be set_opacity and multiply_opacity 2015-05-20 12:39:01 -05:00
Dane Springmeyer
5d7c43457e Merge pull request #2825 from mapycz/improve-interior
improve interior placement
2015-05-20 10:37:39 -07:00
artemp
a8a90b7656 use std::lock_guard instead of unique_lock (better fit for the job) 2015-05-20 16:12:22 +01:00
artemp
433741877d fix - use std::size_t to avoid narrowing 2015-05-20 11:31:41 +01:00
artemp
6c14ff9b7a fix char type 2015-05-20 11:31:24 +01:00
artemp
3ce65e8b65 rename view_to_string to view_to_stream and tempalate on stream type 2015-05-19 11:58:20 +01:00
artemp
05b5d16e87 more std::size_t fixes (consistent usage) 2015-05-19 11:43:39 +01:00
Jiri Drbalek
efd554a04e interior placement: always compute center of the longest segment 2015-05-19 08:37:57 +00:00
Jiri Drbalek
5ab59c860d fix deprecation warning 2015-05-18 08:01:27 +00:00
Blake Thompson
219ad1f2cc Updated min zoom and max zoom to use maximum scale denom and minimum scale denominator #1447 2015-05-15 14:34:12 -05:00
Dane Springmeyer
fd23aacd7b shuffle includes based on iwyu findings 2015-05-14 23:38:36 -07:00
Dane Springmeyer
3ae6e49a2e Merge pull request #2812 from mapnik/feature/add_tests
Adding tests and cleanup
2015-05-14 23:05:48 -07:00
Dane Springmeyer
53be585240 iwyu in view_strategy.hpp 2015-05-14 17:59:40 -07:00
artemp
75a77882e8 image_options - add key0=value0:key1:key2=value2 parser
remove tokenizer usage from image_util_png
2015-05-14 15:37:21 +01:00
Artem Pavlenko
2a8086fbcc Merge pull request #2788 from mapycz/fix-labeling-on-polygons
fix labeling on polygons
2015-05-14 14:10:02 +01:00
artemp
881dba4fc9 fix camel case 2015-05-14 12:53:21 +01:00
Jiri Drbalek
a8e3174817 text on polygon: fix missing closing segment 2015-05-14 11:26:01 +00:00
Blake Thompson
d1616737f2 Removed the mapnik type of 'byte' because it seemed sparsely used and simply providing data type should be easier as it is never going to change. Also added some tests around mapnik palette 2015-05-13 19:32:54 -05:00
Blake Thompson
f3abe7fc25 Added test coverage to image buffer 2015-05-13 16:50:31 -05:00
Blake Thompson
c3dfda4977 Merge pull request #2808 from mapnik/bugfix/strategy_rounding
Bugfix/strategy rounding
2015-05-13 13:45:26 -05:00
Blake Thompson
f9acd07aaf Merge pull request #2807 from mapnik/drop-big-endian
Drop obsolete and unsupported big endian support
2015-05-13 13:43:09 -05:00
artemp
3e16c4b8f2 remove unused vars 2015-05-13 15:15:52 +01:00
artemp
ba117c6384 update SVG path generator to avoid using boost::phoenix::if_() which doesn't work with boost 1.58 2015-05-13 11:33:09 +01:00
artemp
270679bc20 style 2015-05-13 11:32:34 +01:00
Blake Thompson
39428585f0 Added the rounding_cast utility, and added a scale_rounding_strategy to support this new casting type. Added tests for it 2015-05-12 14:36:29 -05:00
Blake Thompson
1dddfd17ef Removed try catch around set_alpha, and just checked bounds. Added unit tests for image_view 2015-05-12 12:24:14 -05:00
Dane Springmeyer
613766b104 drop obsolete and unsupported big endian support - refs #2806 2015-05-12 10:19:37 -07:00
artemp
a9ae6c111c Merge branch 'master' into fix-topojson 2015-05-12 09:42:29 +02:00
Dane Springmeyer
706be7397f Merge branch 'master' of github.com:mapnik/mapnik 2015-05-11 17:49:42 -07:00
Dane Springmeyer
d57f1cbb71 display deprecated value in enumeration warning [skip ci] 2015-05-11 17:49:35 -07:00
Dane Springmeyer
834ae832be tuple adapter is needed in the end 2015-05-11 16:52:08 -07:00
Dane Springmeyer
14c73304de iwyu 2015-05-11 16:52:08 -07:00
Blake Thompson
e44cdef805 Fix get_pixel with image_view 2015-05-11 18:19:24 -05:00
Blake Thompson
f54164da75 Changed the way that set alpha worked, renaming old method to multiply_alpha, added new set_alpha, that simply sets the alpha. Added protection for overflows and underflows. Added unit tests to cover all code 2015-05-11 13:12:13 -05:00
Dane Springmeyer
23872dcd26 ensure topojson parser is robust to invalid arc index 2015-05-09 07:04:03 -07:00
Dane Springmeyer
61c2cd5ed5 tuple adapter is needed in the end 2015-05-09 06:59:14 -07:00
Dane Springmeyer
7ceba047c0 iwyu 2015-05-09 06:54:38 -07:00
Dane Springmeyer
5162027034 avoid closing empty path 2015-05-07 16:12:38 -07:00
Dane Springmeyer
340ed85e4e fix windows compile 2015-05-06 07:10:35 -07:00
Dane Springmeyer
4c76edaef7 algorithm is a somewhat large stl header, move it to cpp 2015-05-06 06:37:06 -07:00
Dane Springmeyer
b11eeef4b6 remove std::clog print 2015-05-06 06:35:37 -07:00
Dane Springmeyer
0bfb7bae7a Add deprecation warning for enum's using _ 2015-05-06 06:35:17 -07:00
Dane Springmeyer
b10a6f7a92 remove unused coord_array header 2015-05-06 06:34:54 -07:00
Dane Springmeyer
126c777c8d shuffle around boost/geometry usage in headers to reduce compile time 2015-05-05 22:04:49 -07:00
Dane Springmeyer
f2863a7d2a explicitly use mapnik::tags to avoid boost::geometry::tags conflict 2015-05-05 20:46:19 -07:00
artemp
47c272b874 c++ constness, formatting 2015-05-05 14:12:29 +02:00
Blake Thompson
0eecbd3e0f Modified marker cache to store shared_ptrs in order to prevent threading issues and to close #2713 2015-05-04 14:11:41 -05:00
Blake Thompson
9439279f53 hopefully solved linux compile issues 2015-05-04 09:37:45 -05:00
artemp
6d4a4139b3 is_switchable to control switchabilty of vertex_converters -- revive stroke_tag
fix vertex_converter in cairo/agg
2015-05-04 14:49:17 +02:00
artemp
470da20d53 fix remanining cAmEl case names 2015-05-04 12:49:11 +02:00
artemp
377c5e56b8 image_view - add move ctro, delete assignment operator, use std::size 2015-05-04 12:11:24 +02:00
artemp
ba0c18a228 c++ style 2015-05-04 11:22:06 +02:00
artemp
081cf02dcf fix method signitures to use std::size_t
rename getSize() -> size(), getRowSize() -> row_size
2015-05-04 10:57:57 +02:00
artemp
663a7db8fd use std::size_t 2015-05-04 10:14:01 +02:00
Dane Springmeyer
147602244b disable is_switchable for stroking and offsets - refs #2791 2015-04-30 11:42:36 -07:00
Jiri Drbalek
78d7ea007a fix labeling 2015-04-30 07:20:10 +00:00
Dane Springmeyer
919bf27dc3 close polygon paths 2015-04-29 15:41:18 -07:00
artemp
c64dc3672a vertex_converter - refactor to pass Processor to apply function (while it allows to instantiate vertex_converter object only using converter tags, it doesn't reduce object code)
make offset_converter 'non-switchable' relying on be able to shortcut in `vertex(*x, *y)` when offset is 0.0 -> results in reduced binary size
2015-04-28 14:18:33 +02:00
artemp
666ce82ae4 add is_switchable to control switchabilty of vertex_converters 2015-04-27 14:00:52 +02:00
Dane Springmeyer
e60dfbba38 remove unused close_poly_tag 2015-04-26 19:34:58 -07:00
Dane Springmeyer
f9439a590f define BOOST_MPL_LIMIT_VECTOR_SIZE before boost/geometry 2015-04-26 19:34:42 -07:00
Dane Springmeyer
bf92a90648 silence boost geometry warnings [skip ci] 2015-04-27 00:32:09 +02:00
Dane Springmeyer
8489bb12f8 Add operator!= to datasource (needed for copy_move_test.cpp) 2015-04-25 10:34:25 +02:00
artemp
d89033a0ca reduce binary size providing overloads for forward method
```
template <typename Geometry, typename Processor>
static void forward(Dispatcher & disp, Geometry & geom, Processor & proc,
                        typename std::enable_if<!std::is_same
                        <typename detail::converter_traits<Geometry,Current>::conv_type,
                        transform_path_adapter<view_transform, Geometry> >::value >::type* = 0)
```
2015-04-24 18:13:18 +02:00
artemp
69afcdf9bf fix hardcoded detector type 2015-04-24 15:15:01 +02:00
artemp
f9bd031243 pass and store feature by const ref 2015-04-24 15:12:48 +02:00
artemp
68510afdc1 remove const 2015-04-24 12:35:21 +02:00
Jiri Drbalek
8d78e8bfcb fix compile with gcc 2015-04-23 14:49:06 +00:00
Dane Springmeyer
d591600c04 include boost/version.hpp where needed - refs #2770 2015-04-23 09:31:46 +02:00
Matt Amos
79f29f3894 Disable missing geometry functions in older Boost versions.
The functions `is_valid` and `is_simple` and their associated
headers are only present in versions of Boost >= 1.56, and will
cause compilation errors with previous versions of Boost. This
masks them with preprocessor macros to allow the compilation to
complete, at the cost of some (currently not widely used)
functionality.
2015-04-23 03:52:46 +01:00
Dane Springmeyer
2c35a0f8a1 Merge pull request #2739 from mapnik/mapnik-geometry
New geometry storage and API
2015-04-22 15:35:07 +02:00
artemp
3366e804c9 hit_test - cache x,y for MOVE_TO and use on CLOSE_PATH command 2015-04-22 15:30:59 +02:00
artemp
86cc903835 point_symbolizer - revive interior point placement 2015-04-22 15:01:52 +02:00
Dane Springmeyer
124362d2d4 stop correcting geometries at decode time
- the original motivation for this was to avoid needing to
   mutate a copy later on (for operations needing correct winding order)
 - but mutating a copy is looking feasible, so removing this now.
2015-04-22 14:27:43 +02:00
artemp
1f83eaa6ac geometry_adapters - make generic 2015-04-22 12:22:52 +02:00
artemp
2768aa6a4a Merge branch 'mapnik-geometry' into mapnik-geometry-template 2015-04-22 12:13:29 +02:00
Blake Thompson
d7f7bc18c1 A large set of changes that help allow WKT for int64_t type geometeries, modified some strategies, made it so that the clipper would use mapnik geometries. 2015-04-21 09:34:52 -05:00
Blake Thompson
edda6cb13f Updated several sections of code, noteably added strategy_group_first as another way to perform transforms with groups, added tests similar to uses of vector tiles in geometry_strategy_test.cpp 2015-04-17 15:49:23 -05:00
Blake Thompson
8ad5648c10 Working version of strategy grouping 2015-04-17 11:15:45 -05:00
Blake Thompson
75ccfdf934 A venture into variadic templates for strategies and transforms. 2015-04-16 23:37:20 -05:00
Blake Thompson
a19da799e0 Slight fixes after merge 2015-04-15 16:05:56 -05:00
Blake Thompson
7a50bb5214 Merge branch 'mapnik-geometry' into mapnik-geometry-template 2015-04-15 15:16:47 -05:00
Dane Springmeyer
cdb9a2ead4 add debug symbolizer mode for visualizing exterior and interior rings and their winding order 2015-04-14 02:44:14 +02:00
Dane Springmeyer
1dc77443ab add vertex_adapter to work per polygon ring 2015-04-13 18:48:45 +02:00
artemp
87e978a6b9 prefer c++11 alias type declaration over typedef for consistency 2015-04-13 15:03:19 +02:00
artemp
41aa591878 Merge branch 'master' into mapnik-geometry 2015-04-13 12:47:41 +02:00
artemp
4f3c8663a3 visual tests : fix marker-on-hex-grid 2015-04-13 11:38:38 +02:00
artemp
c1bc8ffc64 simlified_converter - use start (move_to) x,y on close_path command (drops tiny islands) 2015-04-13 11:17:17 +02:00
Blake Thompson
f98fd0da7c Added tests for non standard projections, forcing use of proj4. 2015-04-10 14:05:58 -05:00
Blake Thompson
2392c7eb12 Added geometry_reprojection_impl 2015-04-10 10:55:30 -05:00
artemp
33661c818d Merge branch 'mapnik-geometry' into mapnik-geometry-template
Conflicts:
	benchmark/test_polygon_clipping.cpp
	include/mapnik/geometry.hpp
	include/mapnik/geometry_adapters.hpp
	include/mapnik/marker_helpers.hpp
2015-04-10 14:52:40 +02:00
artemp
90b6fee2ac don't return from void function 2015-04-10 14:15:12 +02:00
Blake Thompson
87fb41907a Added template to geometries 2015-04-09 15:22:51 -05:00
artemp
fb61a2bb90 ref #2755 test if centroid is within bounding box 2015-04-09 12:40:06 +02:00
artemp
3f1aa7b4b4 geometry : allow boost::geoemetry algorithms to work directly with box2d<double>, removing bounding_box 2015-04-09 12:33:31 +02:00
artemp
2581e48087 vertex_converters - attempt to improve size and compilation times 2015-04-09 10:55:09 +02:00
artemp
938709955e support all geomtry types 2015-04-08 18:48:41 +02:00
artemp
24dbaf5217 add geometry_to_path implementation 2015-04-08 18:48:41 +02:00
artemp
bfae2a8df6 cleanup 2015-04-08 18:48:41 +02:00
Blake Thompson
c5d5a1f22e Added several unit tests around reprojection. 2015-04-07 17:20:29 -05:00
Blake Thompson
0fec41a87e Updated reprojection code 2015-04-07 11:55:45 -05:00
artemp
6afc4531ec add value_type alias 2015-04-07 15:39:47 +02:00
artemp
10a07bc142 generic geometry transform algorithm 2015-04-07 15:38:00 +02:00
Blake Thompson
6be658f5b5 Moved geometry envelope to an impl 2015-04-06 11:00:03 -05:00
Dane Springmeyer
159997fe25 avoid -Wsign-compare warning 2015-04-05 08:56:06 -04:00
Dane Springmeyer
c4273ffed6 be explicit about where value_converter is 2015-04-05 03:10:53 -04:00
Dane Springmeyer
bc77157c57 re-expose geometry_empty test / fix compile 2015-04-04 13:24:00 -04:00
Dane Springmeyer
d4ce36a41e remove unneeded headered detected by iwyu 2015-04-04 13:21:33 -04:00
Dane Springmeyer
bd673c0dbe more iwyu 2015-04-04 13:21:09 -04:00
Dane Springmeyer
ae50ce7321 add headers detected as needed by include-what-you-use 2015-04-04 13:20:40 -04:00
Dane Springmeyer
633668f1d2 no need for iostream in geometry_envelope 2015-04-04 13:20:11 -04:00
Dane Springmeyer
9bd171bcd1 geometry_is_empty should only accept const& 2015-04-04 13:19:55 -04:00
Blake Thompson
19eaf4cfff Fix for geometry envelope with geometry collections and added tests. 2015-04-03 18:56:57 -05:00
Blake Thompson
fb0ea81606 Modified envelope so that it no longer keeps creating new bboxes, fix in hit filter for rings with too little geometry 2015-04-03 11:24:47 -05:00
Blake Thompson
4091504dac Optimization for when point is found in a hole 2015-04-03 11:24:47 -05:00
Blake Thompson
2460f7ba04 Corrected ray casting check in polygon hit test 2015-04-02 14:27:39 -05:00
Blake Thompson
6f4f7a07be Added a feature to geojson helper method 2015-04-02 09:28:45 -05:00
artemp
63b97e2e52 attempt to fix SEG_CLOSE command handling 2015-04-02 16:12:56 +02:00
Blake Thompson
5ca850a17e Added proper use of auto in several for loops 2015-04-01 17:55:36 -05:00
Blake Thompson
78835c9d87 Initial commit for new method to provide geometry reprojection 2015-04-01 16:18:05 -05:00
Dane Springmeyer
928ebad6b9 Avoid inf recursion in geometry::is_empty 2015-03-31 12:29:14 -07:00
Dane Springmeyer
f96744c0e2 split out to_wkt and from_wkt as was previously done 2015-03-31 09:15:23 -07:00
artemp
3c2430150d add 'is_clockwise' as generic function
shape_io -- rely on RVO optimisation (remove an extra std::move)
2015-03-31 13:43:37 +02:00
artemp
7775089a24 make is_simple and is_valid work typed geometries directly 2015-03-31 13:43:37 +02:00
Jiri Drbalek
9862ac66bf fix compile json grammar with boost 1.49 2015-03-31 10:29:33 +00:00
Dane Springmeyer
7cbabd9b46 workaround boost bug on osx - refs #2747 2015-03-30 13:34:46 -07:00
artemp
8735311f83 radial distance - set x=y=0 on SEG_CLOSE command 2015-03-30 12:40:28 +02:00
artemp
6a6af26566 handle SEG_CLOSE in visvalingam_whyatt and douglas_peucker 2015-03-29 19:11:07 +02:00
artemp
3593f3c52c attempt to fix zhao simplification to handle zZ (SEG_CLOSE) command correctly 2015-03-29 18:49:09 +02:00
artemp
919d41aeb6 remove unused member variable 2015-03-29 13:55:46 +02:00
Dane Springmeyer
d5f98ba07c avoid duplicated line_to - matches 6a827f50, rolls back a2185bb9d8 2015-03-28 23:55:20 -07:00
Dane Springmeyer
a2185bb9d8 add vertex_adapter.cpp tests
- focus is on behavior of polygons (including with holes)
 - reverts 6a827f501 because it seems incorrect to me and without it the vertex_adapter.cpp tests pass
 - @artemp if you see something I don't please restore 6a827f501, but updated the vertex_adapter.cpp tests
   to show what the expected behavior should be
2015-03-27 23:16:49 -07:00
artemp
51b65534f5 geojson bounding box grammar - don't require "type": "Feature" to appear in particular order (ref #2745) 2015-03-27 10:36:04 +01:00
artemp
64312a8dc1 geojson bounding box grammar - don't require "type": "Feature" to appear in particular order 2015-03-27 10:32:52 +01:00
artemp
6aae88f90f only apply unique to line_string and polygon 2015-03-26 18:41:15 +01:00
artemp
75699eb5b4 remove duplicate include 2015-03-26 18:33:17 +01:00
artemp
b025071b28 add geometry_unique algo (removes coincident points) 2015-03-26 18:32:09 +01:00
artemp
b0587a01c0 correct line_string/multi_line_string 2015-03-26 18:13:44 +01:00
artemp
a2933f9cb1 fix includes 2015-03-26 17:31:19 +01:00
artemp
330bc5686c avoid relying on x and y in SEG_CLOSE command - instead cache MOVE_TO's coordinates 2015-03-26 17:30:00 +01:00
artemp
6a827f5018 don't output last-vertex (== first-vertex) - SEG_CLOSE should be sufficient 2015-03-26 17:27:40 +01:00
artemp
bc913bcc59 fix names 2015-03-26 17:26:39 +01:00
artemp
a05225d8b1 move vertex_adpaters into separate header 2015-03-26 17:20:38 +01:00
artemp
74fb3ddde0 Merge branch 'master' into mapnik-geometry 2015-03-25 16:19:02 +01:00
artemp
06f512f584 markers_helper - add support for geometry collections 2015-03-25 16:15:48 +01:00
artemp
ba423f0955 wkt parser/genrator - handle POINT EMPTY by constructing geometry::geometry_empty 2015-03-25 15:52:12 +01:00
artemp
389d00d442 make geometry methods templated to allow using modified geometry types ( e.g variant<reference_wrapper<T>..>
symbolizer_helper - store geometries in custom varaint using reference_wrapper<T const>
2015-03-25 12:58:50 +01:00
artemp
22de30bb37 update variant (add support for 'unwrapping' std::reference_wrapper<T> and accessing std::reference_wrapper<T>::type through get<T>()) 2015-03-25 10:52:33 +01:00
Dane Springmeyer
834a74b1ed make geometry_correct more flexible but harder to misuse 2015-03-24 18:43:05 -07:00
Dane Springmeyer
93e825d727 delete previous incantation of boost polygon clipper 2015-03-24 16:44:50 -07:00
Dane Springmeyer
852776d5e3 geometry is_empty refactoring 2015-03-24 14:16:58 -07:00
Blake Thompson
3270d42b74 Standardizing on the output of a boolean to string is true or false rather then 0 or 1. 2015-03-24 14:32:25 -05:00
artemp
4389c80d84 and finaly, rename 'new_geometry' namespace to 'geometry' 2015-03-24 14:21:28 +01:00
artemp
7e03d41606 rename geometry_impl.hpp to geometry.hpp 2015-03-24 13:32:05 +01:00
artemp
323fdd5212 rename geometry -> path ( geometry_type -> path_type) 2015-03-24 13:17:07 +01:00
artemp
ac1ffa2bfb move geometry.hpp into path.hpp and update code base to reflect this change 2015-03-24 12:42:09 +01:00
artemp
1cf0a897ac move datasource::geometry_t into separate header and rename -> datasource_geometry_t to avoid cyclic dependencies issue
to_ds_type - return actual datasource_geometry_t (remove optional)
update across datasources
experssions - revert to using
2015-03-24 12:13:31 +01:00
artemp
163da958f4 mapnik-geometry - add 'geometry_empty' type to support unintialised geometries 2015-03-24 10:30:33 +01:00
artemp
446e6be7bd json geometry generator - output "null" for uninitialised geometry 2015-03-23 19:09:31 +01:00
artemp
2420604d8c check if geometry has been initialised before dispathing 2015-03-23 12:17:43 +01:00
artemp
807a940f1e ensure [mapnik::geometry_type] attribute is stored as mapnik::value_integer 2015-03-23 12:16:21 +01:00
artemp
e6905272b7 mapnik::feature_impl - add set_geometry_copy(geometry const&) 2015-03-23 10:43:20 +01:00
Dane Springmeyer
cb6f5a7ca4 add empty method on new_geometry::polygon 2015-03-22 12:14:43 -07:00
Dane Springmeyer
95ca3a02f8 update pgsql2sqlite to new geometry 2015-03-22 12:14:11 -07:00
Dane Springmeyer
1a57aef9c6 implement hit_test for new_geometry 2015-03-22 11:41:44 -07:00
Blake Thompson
63c72789d9 Fixed a segfault from occuring if to_wkb was called with a null geometry 2015-03-20 17:03:49 -05:00
artemp
a7174f181c handle collections 2015-03-20 11:06:04 +01:00
artemp
9352d69987 refactor local pattern alignment calc 2015-03-20 10:43:42 +01:00
artemp
360f920924 Merge branch 'master' into mapnik-geometry 2015-03-20 09:51:59 +01:00
Blake Thompson
be9d2ad53c Removed perhaps unrequired MAPNIK_DECL 2015-03-19 23:11:12 -05:00
Blake Thompson
0f76580f6e Tweaked image view null a little 2015-03-19 22:35:09 -05:00
Blake Thompson
08a3911b0a Added the introduction of an image_view_null, this could possibly fix windows build issues 2015-03-19 21:28:16 -05:00
Blake Thompson
f8010f0ba1 Updated image_view any with < and == operators, removed default constructor from image_view and image_view_any 2015-03-19 14:58:01 -05:00
Blake Thompson
702b91e369 Included image_view headers in impl 2015-03-19 14:39:37 -05:00
Dane Springmeyer
0cb9cec686 remove header gaurd from impl file 2015-03-19 12:14:24 -07:00
Blake Thompson
9fd4ea2829 Possibly fixing windows issues 2015-03-19 14:01:22 -05:00
Blake Thompson
454398985c Implementing < and == operators in image 2015-03-19 13:42:17 -05:00
artemp
8a0b4a6b6e Merge branch 'master' into mapnik-geometry 2015-03-19 19:17:01 +01:00
artemp
ea465b06a9 geojson generator - null geometries 2015-03-19 13:44:34 +01:00
Jiri Drbalek
5c65dadd72 add comment about compatibility 2015-03-19 12:32:30 +01:00
artemp
8de2621b99 datasource : temporary reinstate get_geometry_type() method to increese test coverage and ease migration to mapnik-geometry 2015-03-19 12:09:07 +01:00
artemp
8635c87118 wkt generator - handle 'EMPTY' geometries 2015-03-19 11:00:18 +01:00
Dane Springmeyer
4a831b4936 fix msvs compiler error: C2899: typename cannot be used outside a template declaration 2015-03-19 00:44:59 -07:00
Dane Springmeyer
85b20f45d7 Merge pull request #2682 from mapycz/fix-enum-word-separator
fix enum word separator
2015-03-19 00:22:31 -07:00
artemp
6a8e78ab9c fix group_symbolizer_helper 2015-03-18 13:50:15 +01:00
artemp
c1fca4f539 add vertex_adapter_traits 2015-03-18 13:49:51 +01:00
artemp
1bb06d89fa group_symbolizer - update to mapnik-geometry 2015-03-18 12:10:21 +01:00
artemp
e516583d6c building_symbolizer - update to mapnik-geometry 2015-03-17 15:47:51 +01:00
artemp
beb705acb3 Merge branch 'master' into mapnik-geometry 2015-03-17 09:45:19 +01:00
Blake Thompson
5a49842952 Moved image_null into a header 2015-03-16 12:18:07 -05:00
artemp
8747e0ff19 fix - don't forget to add poly's 2015-03-16 17:27:37 +01:00
artemp
71c9c04e92 Merge branch 'master' into mapnik-geometry 2015-03-16 16:20:46 +01:00
artemp
c528a31684 to_wkb - optimise to multi_point geometries 2015-03-16 16:19:24 +01:00
artemp
5f073ee299 mapnik-geometry based to_wkb() implementation 2015-03-16 16:14:17 +01:00
artemp
58d07338e9 polygon vertex adapter - output SEG_CLOSE for each loop 2015-03-16 12:01:57 +01:00
Blake Thompson
bd94cc6a60 Updated the image_view to add mapnik_decl 2015-03-13 18:21:24 -05:00
Blake Thompson
46ea6a5b1a Added impl for image_view_any and fix to benchmark that was missing include for mapnik/color.hpp 2015-03-13 17:28:22 -05:00
Blake Thompson
c262e51428 Fix for operator= in image 2015-03-13 16:49:28 -05:00
Blake Thompson
29099ece46 Added image_view implementation 2015-03-13 16:34:49 -05:00
artemp
12613b59d4 fix typo 2015-03-13 17:12:23 +01:00
Blake Thompson
bf61a033d3 Intial commit for impl 2015-03-13 10:52:39 -05:00
artemp
924536e0f2 formatting 2015-03-13 14:29:05 +01:00
artemp
0b90fe7209 avoid unnecessary copying 2015-03-13 13:40:29 +01:00
artemp
58b36badd9 minor formatting 2015-03-13 13:23:36 +01:00