Commit graph

2308 commits

Author SHA1 Message Date
artemp
62af2e6765 + replace <boost/shared_ptr.hpp> with <memory> 2013-09-20 14:13:23 +01:00
artemp
b315eb2167 + use std::shared_ptr and std::make_shared 2013-09-20 14:01:27 +01:00
artemp
6e6cff4613 remove has_nothrow_copy
as it was triggering requirement for move ctor in UnicodeString
which is not _yet_ available
2013-09-20 14:01:27 +01:00
Dane Springmeyer
0619477238 optimize rule::active which is called in loop in feature_style_processor_impl 2013-09-19 20:24:59 -07:00
Dane Springmeyer
576271d5ca merge 2013-09-19 18:40:48 -07:00
Dane Springmeyer
9bd3dd0e21 fix viewer compile 2013-09-19 18:39:44 -07:00
Dane Springmeyer
5c534c1ac6 make rule_cache noncopyable 2013-09-19 18:01:51 -07:00
artemp
a8d49b8112 + use mapnik::polygon_clipper by default 2013-09-19 09:12:50 +01:00
Dane Springmeyer
25ee36f74e merge 2013-09-18 20:41:20 -07:00
Dane Springmeyer
2ebd3e9bf8 iwyu 2013-09-18 20:40:30 -07:00
Dane Springmeyer
8b5323f101 drop suncc support from singleton class 2013-09-18 20:29:46 -07:00
Dane Springmeyer
c77e9fed5c c++ style 2013-09-18 20:29:01 -07:00
Dane Springmeyer
5c77edcc5e remove uneeded usage of std::move 2013-09-18 20:24:51 -07:00
Dane Springmeyer
121e5b59b0 mapnik::value: avoid extra copy of value_unicode_string + define copy and assignment 2013-09-18 20:14:50 -07:00
Dane Springmeyer
111bdccebc various post-merge fixes 2013-09-18 19:51:14 -07:00
Dane Springmeyer
ee2378a6d2 port minor fixes around type handling from c++11 branch 2013-09-18 19:50:04 -07:00
Dane Springmeyer
b2d1363011 remove expression optimizer for now since it is currently unused - refs #1002 2013-09-18 19:19:41 -07:00
Dane Springmeyer
6496a44465 drop boost::interprocess::bufferstream and optimized wkb output 2013-09-18 19:12:14 -07:00
Dane Springmeyer
30c8ca5f66 minor formatting to sync cleaner with master 2013-09-18 19:04:44 -07:00
Dane Springmeyer
9770985ead port box2d cleanups from c++11 branch to master 2013-09-18 19:04:20 -07:00
Dane Springmeyer
d79ecf882f merge with master 2013-09-18 18:49:32 -07:00
Dane Springmeyer
d2f50a0158 no need to define BOOST_SPIRIT_USE_PHOENIX_V3 in each header, it is now set in SConstruct 2013-09-18 18:27:04 -07:00
Dane Springmeyer
ebf9dd39d4 be explicit about inlining feature.hpp methods 2013-09-18 14:59:06 -07:00
Dane Springmeyer
d4d5b617d2 re-enable miniz 2013-09-18 14:06:46 -07:00
Dane Springmeyer
33766e9370 merge with master 2013-09-18 13:56:23 -07:00
artemp
ec0bdb21ad Merge branch 'geometry-types' into c++11 2013-09-16 14:18:22 +01:00
Dane Springmeyer
1dd12755c6 optimize expression evaluation of text by avoiding extra copy 2013-09-15 23:18:11 -07:00
Dane Springmeyer
d3ab601e30 integrate various minor c++ style and cast fixes into master from c++11 branch 2013-09-15 23:08:04 -07:00
David Marteau
7495d2f381 [mappy] Parallel feature requests supports - PostGIS async requests 2013-09-11 14:04:10 +02:00
artemp
b690015d63 Merge branch 'master' into c++11 2013-09-09 12:32:47 +01:00
Dane Springmeyer
c5dd5487a5 Merge pull request #1966 from mapnik/background-image-comp-op
Map background-image-comp-op and background-image-opacity
2013-09-05 12:25:47 -07:00
artemp
d4b9a48cb1 + geometry::types Exterior/Interior polygon loops 2013-09-03 12:15:31 +01:00
artemp
4f4e2b001e Merge branch 'master' into c++11
Conflicts:
	SConstruct
	benchmark/run.cpp
	bindings/python/mapnik_datasource.cpp
	bindings/python/mapnik_feature.cpp
	bindings/python/python_optional.hpp
	include/mapnik/css_color_grammar.hpp
	include/mapnik/expression_grammar.hpp
	include/mapnik/feature.hpp
	include/mapnik/feature_style_processor_impl.hpp
	include/mapnik/image_filter_types.hpp
	include/mapnik/image_util.hpp
	include/mapnik/json/geometry_generator_grammar.hpp
	include/mapnik/json/geometry_grammar.hpp
	include/mapnik/processed_text.hpp
	include/mapnik/tiff_io.hpp
	include/mapnik/util/geometry_svg_generator.hpp
	include/mapnik/util/geometry_wkt_generator.hpp
	include/mapnik/utils.hpp
	include/mapnik/webp_io.hpp
	include/mapnik/wkt/wkt_grammar.hpp
	plugins/input/shape/shape_datasource.cpp
	plugins/input/shape/shapefile.hpp
	src/expression_grammar.cpp
	src/expression_string.cpp
	src/image_util.cpp
	src/json/feature_collection_parser.cpp
	src/json/feature_parser.cpp
	src/miniz.c
	src/symbolizer_helpers.cpp
	src/tiff_reader.cpp
	src/webp_reader.cpp
	tests/cpp_tests/geometry_converters_test.cpp
	tests/cpp_tests/image_io_test.cpp
	tests/cpp_tests/map_request_test.cpp
	tests/python_tests/image_test.py
	tests/visual_tests/test.py
2013-08-30 09:46:09 +01:00
Petr Dlouhý
69185339a5 offset enabled for LinePatternSymbolizer 2013-08-22 10:35:44 +02:00
Dane Springmeyer
42d3bb11af webp: WebPConfig.lossless, WebPPicture.use_argb, and WebPPictureImportRGBX all became available in libwebp v0.1.99 or ABI v1 - refs #1986 2013-08-15 15:15:07 -04:00
Dane Springmeyer
1a8287da06 Add support for webp:alpha=false to create rgb images without alpha + other webp encoding cleanups - closes #1986 2013-08-15 14:47:28 -04:00
Dane Springmeyer
5667343ad9 use U_NAMESPACE_QUALIFIER to most cleanly support when icu is built with -DU_USING_ICU_NAMESPACE=0 - refs #1985 2013-08-14 21:56:40 -04:00
Dane Springmeyer
e0026f3df2 use icu:: namespace and start isolating icu impl by consistenly using mapnik::value_unicode_string 2013-08-13 18:52:04 -04:00
Dane Springmeyer
80cc235ff9 pass by const ref 2013-08-13 18:35:18 -04:00
Dane Springmeyer
134cbc3eec forward declare mapped_region in mapped_memory_cache.hpp and other shared memory fixups 2013-08-13 14:13:56 -04:00
Dane Springmeyer
78b4980352 finish exposing mapnik.Feature.from_geojson 2013-07-30 15:45:46 -04:00
Dane Springmeyer
79d1e6e5c0 add note about miniz porting and #1967 2013-07-30 12:32:32 -04:00
Dane Springmeyer
bbfd111900 fix PHOENIX_V3 compile of svg generator 2013-07-28 12:54:31 -04:00
Dane Springmeyer
76f111cc97 support optionally compiling with -std=c++11 on OSX / clang / apple libc++ / boost 1.53 - refs #1683 2013-07-27 01:57:24 -04:00
Dane Springmeyer
fd14edcd56 fix compile of expression grammer with clang++/libc++/c++11 2013-07-26 19:33:35 -04:00
Dane Springmeyer
fad9af5263 add support for applying custom comp_op and opacity when blending map background image into background color at render time - refs mapnik/mapnik-support#8 2013-07-25 01:00:38 -04:00
Dane Springmeyer
0ac9c7f4c9 re-write scale-hsla filter to work in doubles, allowing proper clamping at the right time - refs #1954 2013-07-24 21:13:46 -04:00
Dane Springmeyer
88d42c48a9 enhance scale-hsla validation - refs #1954 2013-07-24 20:25:07 -04:00
Dane Springmeyer
ec950bd983 handle duplicate hsl hue_to_rgb code 2013-07-24 19:26:26 -04:00
Dane Springmeyer
eaeccc3c3a enforce valid hsla values - refs #1954 2013-07-24 14:24:33 -04:00
artemp
7c63b666f9 cast toff_t to std::streamoff
remove 'C' style comments!!
2013-07-24 11:44:19 -04:00
Dane Springmeyer
ef4dfeb747 make it possible to disable compilation of grid_renderer - closes #1962 2013-07-23 19:37:25 -04:00
Dane Springmeyer
f682fcc6d1 deal with various -Wunused-parameter warnings that are not importatn 2013-07-23 18:44:16 -04:00
Dane Springmeyer
72bfa282fa iwyu 2013-07-23 18:43:19 -04:00
Dane Springmeyer
0ac4ec0dd9 iwyu 2013-07-23 18:42:53 -04:00
Dane Springmeyer
fd7164bd3c use pixfmt pre for the sake of clarity 2013-07-23 18:42:47 -04:00
Dane Springmeyer
6269b42ffc iwyu 2013-07-23 18:41:59 -04:00
Dane Springmeyer
c5b7cd0e3e remove dead code 2013-07-23 16:10:00 -04:00
Dane Springmeyer
31931b89cb git rid of a few fixme 2013-07-23 16:00:16 -04:00
Dane Springmeyer
3bd2e6501f fix a batch of unused variable warnings (leaving several with are true bugs/missing features) 2013-07-23 15:51:22 -04:00
Dane Springmeyer
d1667c125c return human readable cairo error 2013-07-22 16:21:18 -04:00
Dane Springmeyer
3beba890f8 make scale_factor accessible off renderers - no need to store as member of feature_style_processor 2013-07-22 13:25:04 -04:00
Dane Springmeyer
b6739efa6a clean up render_style code to avoid excessive function calls for marking a renderer as painted 2013-07-19 19:43:30 -04:00
Dane Springmeyer
a4efd6b73e simplify render_style further after 6bbbe155fe 2013-07-19 19:33:11 -04:00
Dane Springmeyer
032e33cc9f remove filter_factor as option to gdal datasource, clean up pass down from query object - closes #1488 - refs #625 2013-07-19 19:22:45 -04:00
Dane Springmeyer
9b9e42ce5d use featureset_buffer for simplier render time feature cache from @mappy 2013-07-19 18:32:47 -04:00
Dane Springmeyer
3864fada72 pass string by const ref 2013-07-19 15:46:01 -04:00
Dane Springmeyer
6bbbe155fe remove RENDERING_STATS compile time option - refs #1956 2013-07-19 15:09:59 -04:00
Dane Springmeyer
a141c5c27d webp encoding/decoding support - refs #1955 2013-07-19 01:09:17 -04:00
Dane Springmeyer
0872061993 renable hsla filter as 'scale-hsla' - refs #1954 2013-07-19 00:37:51 -04:00
Dane Springmeyer
a834d2941a fix initialization of hue and sat in rgb2hsl + fix rounding in hsl2rgb to be stable on 32 bit systems (no change on 64 bit) - refs #1954 2013-07-19 00:22:52 -04:00
Dane Springmeyer
aedc3512c2 rollback to copying bbox member of filter_in_box - previous change led to odd node-mapnik shapefile query failure 2013-07-17 18:47:07 -04:00
Dane Springmeyer
04c1808703 avoid a few uneeded copies 2013-07-17 18:47:07 -04:00
Dane Springmeyer
9bf6abd988 add missing attribute collector for markers symbolizer path expression - closes #1952 2013-07-16 20:00:51 -04:00
artemp
cbfe228790 + improve c++ style
+ formatting
2013-07-16 11:16:52 +01:00
Dane Springmeyer
bcf1454884 optimize svg rendering by moving bbox calc only needed by gradient rendering into gradient code 2013-07-10 16:44:20 -04:00
Dane Springmeyer
068f759fb5 fix height clamping in image_view and grid_view - closes #1940 2013-07-04 13:56:58 -04:00
Dane Springmeyer
c011524b67 add mapnik.Image.premultiplied() to query status of pixel premultiplication 2013-07-02 16:01:23 -04:00
Dane Springmeyer
90c9a39a66 remove debugging line 2013-06-28 15:54:04 -04:00
Dane Springmeyer
3ae432ac96 fix behavior of marker-ignore-placement on lines - closes #1931 2013-06-28 15:53:08 -04:00
Dane Springmeyer
25dabd6f24 support scale_denominator override in save_to_cairo_file - closes #1930 2013-06-27 20:07:25 -04:00
Dane Springmeyer
ba4d06a530 protect against negative image dimensions - closes #1927 2013-06-26 16:46:36 -04:00
Dane Springmeyer
fd428cf11b svg_renderer: group layers in inkscape capatible way - refs #1917 2013-06-24 20:29:57 -07:00
Dane Springmeyer
d1f1104ebe svg_renderer: start paying attention to scale_factor, collision, and fonts 2013-06-24 20:26:30 -07:00
Dane Springmeyer
18ab68f03f iwyu 2013-06-21 12:00:48 -07:00
Dane Springmeyer
e3c5ae9cf4 svg_renderer: use precision of 4, accept map request/scale_factor, and fix output of multipart geometries 2013-06-20 21:27:42 -07:00
artemp
386f6a5b24 + use auto 2013-06-17 10:47:53 +01:00
Dane Springmeyer
64947f8540 now working on mapnik v3.0.0-pre 2013-06-03 18:56:56 -07:00
Dane Springmeyer
9231205573 setting up for mapnik v2.2.0 release 2013-06-03 18:26:28 -07:00
Dane Springmeyer
3b2bdba7b0 iwyu 2013-06-02 20:19:33 -07:00
Dane Springmeyer
0365d3e081 start centralizing filesystem operations in mapnik::util::fs - refs #1177 2013-06-02 19:28:24 -07:00
Dane Springmeyer
e1c299decf remove whitespace 2013-06-02 17:34:36 -07:00
Dane Springmeyer
1036eb1c99 support base_path adjustment when reading from xml file as well as from a string 2013-06-02 16:24:21 -07:00
Dane Springmeyer
7c8dbacdb6 fix compile against boost 1.47 - closes #1885 2013-06-02 13:32:15 -07:00
Dane Springmeyer
88ca6fca5d Followup to #1642, closes #1859
This change adds back the ability to throw out both empty strings
and null values with the not equals statement like `[attr] != ''`

Note: this does not mean null == '' because the needed compatibility
fix only addresses the "not equals` operator to retain the historical
usage of not matching nulls.
2013-05-31 13:23:59 -07:00
Dane Springmeyer
1da3bee032 implement == and != operators on the value_null struct - no functional change, but helpful to consolidate logic for comparisions 2013-05-31 12:24:59 -07:00
artemp
4a60bc7be5 + add value_bool support in not_equals 2013-05-31 18:51:11 +01:00
artemp
c8630696d4 + add explicit value_bool/value_integer/value_double equality comparison 2013-05-31 18:48:13 +01:00
Dane Springmeyer
b0f15bf5de avoid muffling proj_init at render time and instead catch at load_map - closes #646 2013-05-29 15:16:44 -07:00
Dane Springmeyer
7302b3b654 fix #1865 2013-05-24 16:45:02 -07:00
Dane Springmeyer
9107046508 avoid including cairo-ft in header 2013-05-22 23:23:22 -07:00
Dane Springmeyer
31ae5e632b rollback accidentally commited change in 126d1b73d6 - not quite yet 2013-05-22 10:22:25 -07:00
Dane Springmeyer
126d1b73d6 reflect debug symbolizer in python 2013-05-22 06:49:38 -07:00
Dane Springmeyer
8634a04938 add support for drawing all geometry verticies with debug symbolizer mode=vertex and expose in python - closes #1848 2013-05-21 19:21:35 -07:00
artem@windows
35a8582043 put implementatio into .cpp to avoid exposing <windows.h> 2013-05-20 13:43:31 -07:00
Dane Springmeyer
84a15f9090 iwyu 2013-05-20 12:50:26 -07:00
Dane Springmeyer
29578410c2 fix marker bbox calculation - closes #1849 2013-05-20 12:50:26 -07:00
artem@windows
15e059a9ac put implementatio into .cpp to avoid exposing <windows.h>
Conflicts:
	include/mapnik/utils.hpp
2013-05-20 14:54:06 +01:00
artemp
fa99757154 + add accidentally removed config.hpp 2013-05-20 14:00:03 +01:00
artemp
6e4169d2b9 + utf8 to/from utf16 implementation
Conflicts:
	include/mapnik/utils.hpp
2013-05-20 14:00:03 +01:00
Dane Springmeyer
ae2e33de34 msvc on windows breaks with singleton declared but gcc needs default visibility to avoid double singleton registration across dlls when using -fvisiblity=hidden
Conflicts:
	include/mapnik/utils.hpp
2013-05-20 14:00:02 +01:00
artemp
9348fffa8d + filter_at_point - cache inflated bbox 2013-05-20 14:00:02 +01:00
artemp
6412b43d6c + utf8 to/from utf16 implementation 2013-05-20 12:05:22 +01:00
artem@windows
293d4829a8 MAPNIK_DECL feature_parser 2013-05-17 16:20:01 -07:00
Dane Springmeyer
03d8b6d9d7 msvc on windows breaks with singleton declared but gcc needs default visibility to avoid double singleton registration across dlls when using -fvisiblity=hidden 2013-05-17 13:16:36 -07:00
artemp
5be9640742 + filter_at_point - cache inflated bbox 2013-05-17 16:22:04 +01:00
Dane Springmeyer
5a6ea9ee6f finish to rename of mapnik::Feature -> mapnik::feature_impl 2013-05-16 11:55:58 -07:00
Dane Springmeyer
3fbf4df67d add support for statically linking datasource input plugins - closes #1810 and #1821 - refs #249 2013-05-16 11:55:58 -07:00
Dane Springmeyer
879225abfb rollback MAPNIK_DECL on exceptions - which breaks linking of python bindings on msvc - refs #1826 2013-05-15 18:47:46 -07:00
Dane Springmeyer
9c66d0ec1d move expresion_grammar impl to impl header 2013-05-15 18:24:49 -07:00
Dane Springmeyer
bedcde02cb rename css_color_grammar_def.hpp -> css_color_grammar_impl.hpp to be consistent with other headers 2013-05-15 18:23:46 -07:00
Dane Springmeyer
14d6c3b80b remove expression_grammar from public api 2013-05-15 18:22:28 -07:00
Dane Springmeyer
9682af53da fix compile in master after 8d5b983cb6 since master still uses phoenix v2 2013-05-14 10:31:13 -07:00
artemp
8d5b983cb6 Geometry/Feature parsers -truncate 'where' message in on_error handler (currently 16 chars max) 2013-05-14 15:02:05 +01:00
artemp
0e5013fb03 + add feature_parser implementation 2013-05-14 14:55:08 +01:00
artemp
5d0c36fb65 Geometry/Feature parsers -truncate 'where' message in on_error handler (currently 16 chars max) 2013-05-14 14:51:28 +01:00
artemp
1e1e2d1e79 + prefer ``const& `` style (mapnik c++ style) 2013-05-14 12:31:05 +01:00
artemp
abc5d39dbd + comment out as msvc++ doesn't support 'noexcept' 2013-05-14 12:06:55 +01:00
artemp
677a0a68c6 TIFF I/O
+ use c++ casts
+ better naming
2013-05-13 10:25:09 +01:00
artemp
b816a47de2 + fix writing to std::stringstream
* if seeking pass the end  - grow buffer (stringstream!)
* seekp beyond current buffer size doesn't set failbit (clang/libcxx)
2013-05-10 14:17:31 -07:00
artemp
e9733d8a9b + fix writing to std::stringstream
* if seeking pass the end  - grow buffer (stringstream!)
* seekp beyond current buffer size doesn't set failbit (clang/libcxx)
2013-05-10 16:50:28 +01:00
artemp
3223836874 + potential boost::variant optimization 2013-05-10 16:45:54 +01:00
Dane Springmeyer
d36a7323ac support -fvisibility=hidden in core library - refs #1826 2013-05-09 18:22:40 -07:00
Dane Springmeyer
7c4adea08e support visibility attribute with gcc/clang - refs #1826 2013-05-09 17:07:58 -07:00
Dane Springmeyer
5bb1c067af fix build on windows by ensuring singleton base is exported (avoids inconsistent dll linkage error) 2013-05-09 17:06:41 -07:00
Dane Springmeyer
a7a106109d make mapped_memory_cache a class not struct for consistency with other singletons 2013-05-09 17:05:39 -07:00
Dane Springmeyer
e6bfd12b95 make public the singleton template to ensure it can be shared across shared library boundaries if the library is built with -fvisibility=hidden - refs #1826 2013-05-09 15:26:50 -07:00
Dane Springmeyer
36bdde82e7 no need to use MAPNIK_DECL with typedefs 2013-05-09 15:25:14 -07:00
artemp
dd0c4701c5 + hold actual values in expressions tree (experimental)
(result gets converted to mapnik::value)
2013-05-09 15:31:31 +01:00
artemp
6bfb92811e + make default ctor nothrow 2013-05-09 13:46:09 +01:00
artemp
39f21c16b9 mapnik::value
to_expression_string - add missing specialization
for mapnik::value_integer and remove usage of std::stringstream
2013-05-08 10:31:14 -07:00
artemp
656c9e724f + re-arrange expression 2013-05-08 17:21:34 +01:00
artemp
75aa6e94d8 + expression_optimizer (experimental)
at the moment very basic ops are supported e.g

```
expr = 1+1+1 ---> expr = 3
expr = 1+1+[ATTR] ---> 2+[ATTR]

expr = [ATTR] + 1 + 1  ---> ([ATTR] + 1) + 1  ### stays unchaged
expr = [ATTR] + 1/3.14159 + 1 ---> ([ATTR] + 0.31831) + 1
```
2013-05-08 16:54:25 +01:00
artemp
4138a70a52 mapnik::value
to_expression_string - add missing specialization
for mapnik::value_integer and remove usage of std::stringstream
2013-05-08 16:51:28 +01:00
artemp
b086e2d20c + small optimization - pass and return const ref 2013-05-07 16:12:57 +01:00
artemp
4915bf138e mapnik::value + add move ctor
mapnik::feature + pass attributes by r-value.
2013-05-07 12:04:06 +01:00
Dane Springmeyer
944eb5e2f7 rename variable for clarity 2013-05-06 12:38:41 -07:00
artemp
42d8dfa322 + add move ctor and 'canonical' assignment operator 2013-05-06 15:54:17 +01:00
artem@windows
b29fe11e35 + fix font_set::size return type 2013-05-03 16:43:25 -07:00
artemp
6490245218 + remove more cruft 2013-05-03 14:21:34 +01:00