Commit graph

3684 commits

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