Commit graph

2625 commits

Author SHA1 Message Date
Dane Springmeyer
775215e874 Merge branch 'master' of github.com:mapnik/mapnik into bigint-feature-id 2012-12-19 20:13:19 -08:00
Dane Springmeyer
66a5c26fdc leverage mapnik::value_integer for feature.id() and grid rendering buffer - refs #1662 2012-12-19 19:24:52 -08:00
Dane Springmeyer
326b980172 cleanup usage of grid pixel types 2012-12-19 19:19:30 -08:00
Dane Springmeyer
fa1ac1307f use grid value_type instead of hardcoding int for feature id type 2012-12-19 19:17:42 -08:00
artemp
f5dd9e53c4 + calc int_parser/generator type from mapnik::value_integer 2012-12-18 18:05:45 +00:00
artemp
a38b252ccd Merge branch 'master' into bigint
Conflicts:
	plugins/input/geojson/geojson_datasource.cpp
	plugins/input/postgis/postgis_featureset.cpp
2012-12-18 13:57:39 +00:00
artemp
274fbf8f7a + ensure 'close path' handled correcly
(currenlty SEG_CLOSE command must have valid x,y)
+ implement real_policies in wkt and geojson generators
2012-12-18 11:44:35 +00:00
Dane Springmeyer
c7ed1f93d7 update svg_renderer 2012-12-17 19:13:00 -08:00
Dane Springmeyer
43244efb7d Merge branch 'master' of github.com:mapnik/mapnik into no-bind 2012-12-17 13:03:11 -08:00
Dane Springmeyer
c5410fac7e remove bind option for datasources - refs #962 2012-12-17 10:03:07 -08:00
Dane Springmeyer
bb27156df0 use internal noncopyable class to speed up compile times slightly 2012-12-16 18:19:52 -08:00
artemp
c4bae9d30a Merge branch 'master' into bigint
Conflicts:
	bindings/python/mapnik_feature.cpp
	plugins/input/shape/dbfile.cpp
2012-12-14 10:01:21 +00:00
Dane Springmeyer
772c7f52fc knock out some msvc compiler warnings 2012-12-12 15:59:27 -08:00
Dane Springmeyer
3fd7909ba0 fix compile on windows with msvc 2010 - closes #1646 2012-12-12 15:09:07 -08:00
Dane Springmeyer
6b84269343 add pad method on box2d to help tighten otherwise verbose code 2012-12-11 13:56:25 -08:00
Dane Springmeyer
7c58bf9fcb replace boost::trim with faster custom trim - closes #1633 2012-12-07 14:06:13 -08:00
Dane Springmeyer
c0021d0760 remove unused iostream includes and unnecessary usage of ostringstream - refs #1055 2012-12-06 23:06:12 -08:00
Dane Springmeyer
390706b8c7 remove all remaining stringstream usage in load_map to avoid perf hit from locale lock - refs #1055 2012-12-06 20:15:27 -08:00
Dane Springmeyer
80630e905b formatting 2012-12-06 18:46:23 -08:00
artemp
cd435172d4 + fix expression grammar to work with mapnik::value_integer 2012-12-06 09:51:38 +00:00
artemp
8fa88a71b6 Merge branch 'master' into bigint 2012-12-03 13:14:31 +00:00
artemp
855aea95e0 + mapnik::value and mapnik::parameters - initial support for 64-bit integers 2012-12-03 13:12:09 +00:00
Dane Springmeyer
95ceee84fa sync cairo shield rendering with agg - closes #1602 - amends bd9609c370 2012-12-02 22:46:58 -08:00
Dane Springmeyer
7d408d523c close #1548 with explict handling of point geometries and amend 629d768eae for cairo/grid renderers to ensure proper placement on lines (refs #1604,#1350,#1607) 2012-12-02 19:53:44 -08:00
Dane Springmeyer
388ac9799d add a local symlink on linux to libmapnik.so.MAJOR.MINOR to enable easy local testing (without install) - refs #1618 2012-12-02 19:15:22 -08:00
Dane Springmeyer
be05aa5b60 add palette.to_string() method and add python tests of fixed palette functionality 2012-11-30 12:31:58 -08:00
Dane Springmeyer
4436721371 fix potential compile due to error problematic defines that did not get properly cleaned up in a986aedd05 - refs #1400 2012-11-30 11:27:06 -08:00
Dane Springmeyer
52c3f8ff6e disable bbox intersection testing when caching features on the fly during rendering - closes #1543 2012-11-28 20:56:08 -08:00
Dane Springmeyer
53922be94e fix method name - refs #1562 2012-11-28 20:54:39 -08:00
Dane Springmeyer
57aa6dd052 add serialization of line_symbolizer offset - closes #1562 2012-11-28 20:21:22 -08:00
Dane Springmeyer
5f900206d1 formatting 2012-11-28 19:33:09 -08:00
Dane Springmeyer
46f8ce3ce7 finish bringing back to life the SVG_RENDERER - now outputs geometries again - closes #1438 2012-11-28 17:45:05 -08:00
Dane Springmeyer
f39c3ad857 add marker-multi-policy parameter to support user-configurable rendering behavior for multi-geometries when using either point or interior placement - closes #1573, refs #1555 2012-11-20 17:58:39 -08:00
Dane Springmeyer
1ae4a03f68 avoid calls to fixAspectRatio() if current dimensions == dimension being set 2012-11-11 21:48:51 -08:00
Dane Springmeyer
eebc8cc73e add image/grid clear methods to make it easier to quickly re-use previously allocated objects for rendering - closes #1571 2012-11-11 21:35:50 -08:00
Alexandre Bonnasseau
267975c388 Coding style correction : tabs to spaces 2012-11-09 11:57:10 +01:00
Dane Springmeyer
d0f0f9690f zero color images are not valid - catch this earlier on - closes #1568 2012-11-08 16:39:31 -05:00
Alexandre Bonnasseau
efff5f0ef0 Issue #1545 - override buffer-size parameter at layer level - revised 2012-11-08 15:51:22 +01:00
Dane Springmeyer
211b102ec5 support writing full color png with rgb only (no alpha) - closes #1559 2012-11-06 11:44:44 -05:00
Dane Springmeyer
2874664d70 throw if tdefl_init fails 2012-11-06 11:33:11 -05:00
Dane Springmeyer
cd3cc31752 support writing rgb (no a) images with miniz - refs #1554 2012-11-06 09:19:40 -05:00
Dane Springmeyer
5a99d7fbdb add miniz support - closes #1554 2012-11-04 07:10:05 -05:00
Dane Springmeyer
f9fa9c2461 Add support for missing user ability to set Z_FIXED zlib strategy 2012-11-04 06:58:25 -05:00
Dane Springmeyer
eda4436b51 ensure that the transparency level option is passed to the octree encoder - closes #1556 2012-11-04 06:16:18 -05:00
Dane Springmeyer
2b767d650c fix string representation of expr when not built against a boost with icu support 2012-11-01 10:31:45 -07:00
Dane Springmeyer
cea31234fa allow building svg_renderer again - refs #1438 2012-11-01 10:07:29 -07:00
Dane Springmeyer
2cf429db08 start disabling svg_renderer features to get closer to compiling - refs #1438 2012-11-01 10:05:50 -07:00
Dane Springmeyer
0ccf9254ec include what you use 2012-11-01 10:02:08 -07:00
Dane Springmeyer
82b15bdd68 be more explicit about unsigned type for rgba_palette::quantize 2012-10-30 16:55:06 -07:00
Dane Springmeyer
ee68734975 use empty instead of size as per mapnik c++ style 2012-10-30 11:00:51 -07:00
Dane Springmeyer
10f6fbc731 improve error message when datasource plugin is not available 2012-10-30 11:00:24 -07:00
Dane Springmeyer
9040d2ac9d fix feature-cache for rasters - TODO: no intersection check option for memory_featureset 2012-10-26 18:18:35 -07:00
Dane Springmeyer
f7bd53c0d3 make a note about what Z_DEFAULT_COMPRESSION means to zlib 2012-10-25 13:30:14 -07:00
Dane Springmeyer
42661cf6e4 wrap long code lines 2012-10-20 16:20:32 -07:00
Dane Springmeyer
b46c5ddeb1 fix error language when a file cannot be found 2012-10-16 17:45:33 -07:00
Dane Springmeyer
0cafbc9460 warn if a Datasource template is not found 2012-10-10 14:33:56 -07:00
Dane Springmeyer
ccda92fed1 Revert "finish moving symbolizers out of rule"
This reverts commit 20a317860d.
2012-10-10 10:51:06 -07:00
Dane Springmeyer
1f11aeb95a Revert "move symbolizers typedef out of rule and be explicit about including config.hpp for MAPNIK_DECL - refs #1527"
This reverts commit bf5ffd04f4.
2012-10-10 10:50:56 -07:00
Dane Springmeyer
a7f2eacd76 scons: only depend on libagg if it will be built 2012-10-10 10:19:24 -07:00
Dane Springmeyer
20a317860d finish moving symbolizers out of rule 2012-10-10 10:02:45 -07:00
Dane Springmeyer
bf5ffd04f4 move symbolizers typedef out of rule and be explicit about including config.hpp for MAPNIK_DECL - refs #1527 2012-10-10 09:32:29 -07:00
Dane Springmeyer
a4b5549282 before caching marker premultiply only those image formats that might potentially need to be premultiplied 2012-10-04 16:07:24 -07:00
Dane Springmeyer
357e711312 -avoid potentially premultiplying colors more than once in agg_renderer::setup - closes #1515 2012-10-04 14:24:29 -07:00
Dane Springmeyer
a6129e9a80 add premultiply/demultiply methods for mapnik::color - refs #1519 2012-10-04 13:53:58 -07:00
Dane Springmeyer
72793fe9b6 explicitly include deque - thanks @lightmare - should fix gcc compile 2012-10-04 12:03:40 -07:00
Dane Springmeyer
c0fd6802ed pattern source is only used by line_pattern_symbolizer so move it to that cpp 2012-10-03 18:23:07 -07:00
Dane Springmeyer
7d5642640d use the proper premultiplied pixel type for render_marker 2012-10-03 13:49:06 -07:00
Dane Springmeyer
a27b95558b remove uneeded includes 2012-10-03 13:48:05 -07:00
Dane Springmeyer
05195ca68d Merge pull request #1444 from sigmapi/issue1107
Fix for issue #1107
2012-10-03 13:06:45 -07:00
Dane Springmeyer
86e805b33e Merge pull request #1499 from manelclos/master
Query tolerance for features_at_point
2012-10-03 11:50:29 -07:00
Dane Springmeyer
8674e463a6 premultiply before image scaling - closes #1508 (at least for gdal.input) and refs #1498 2012-10-02 21:50:42 -07:00
Dane Springmeyer
1b5a1f0ffc agg scaling assumes/requires a premulitiplied renderer (and optionally a source defined as premultiplied) - to avoid any confusion use purely premultiplied types - refs #1508 and #1489 2012-10-02 21:49:52 -07:00
Dane Springmeyer
1468133bc0 ensure we rebuild libmapnik if agg sources change 2012-10-01 18:22:12 -07:00
Dane Springmeyer
798b101f0c finish #1512 and adjust tests to use new parameter 2012-10-01 17:09:28 -07:00
Dane Springmeyer
09726626cf add 'premultiplied' property on raster symbolizer to allow user to control (in rare cases) the premultiplied status of images in cases where tiffs mis-report it - closes #1512 2012-10-01 16:14:41 -07:00
Dane Springmeyer
acaee09598 fix debug output symbolizer name 2012-10-01 15:35:35 -07:00
Dane Springmeyer
ef28a1db80 cleanup includes in rule/feature_style_processor and move code to rule.cpp and raster_symbolizer.cpp 2012-10-01 15:01:12 -07:00
Dane Springmeyer
3845d56c06 add code comments from mcseem relevant to agg usage questions around scaling and compositing 2012-10-01 14:13:54 -07:00
artemp
30f14e0878 Merge branch 'master' into conv_simplify 2012-10-01 10:21:56 +01:00
artemp
b9fed932b9 + template vertex_iterator on path_type
+ rename vertex_iterator to path_iterator
2012-10-01 10:20:10 +01:00
artemp
780ea26af3 Merge remote-tracking branch 'origin' into conv_simplify 2012-09-28 19:49:01 +01:00
artemp
3ffe8ec21c + add premultiplied_alpha flag to mapnik::raster 2012-09-28 16:43:05 +01:00
artemp
77e585895f + add premultiplied_alpha method to image_reader
* tiff - TIFFTAG_EXTRASAMPLES
  * png  - non-premultiplied alpha (http://www.libpng.org/pub/png/spec/1.1/PNG-Rationale.html)
  * jpeg - no-alpha channel, ensure pre-multiplied model
2012-09-28 16:37:21 +01:00
Manel Clos
8f7083d14d Add tolerance parameter to features_at_point
Make map.query_point() always pass tolerance to datasources
2012-09-28 15:12:10 +02:00
artemp
2427daa403 + make WKT generator templated on geometry type - the goal is to be able
to use generator for any type that implements 'vertex' concept
2012-09-27 16:07:14 +01:00
artemp
42bcf4ea98 + make WKT generator templated on geometry type - the goal is to be able
to use generator for any type that implements 'vertex' concept
2012-09-27 16:04:29 +01:00
artemp
d7abfc267b Merge branch 'master' into conv_simplify 2012-09-27 08:54:32 +01:00
Dane Springmeyer
b9b97ba652 after #1483 fontset is boost optional so check appropriately in load_map (solves assert) 2012-09-26 12:56:57 -07:00
Dane Springmeyer
b6c7e319d6 Merge branch 'master' of github.com:mapnik/mapnik 2012-09-26 08:49:40 -07:00
artemp
d91cd510aa + ensure warp polygons are aligned exactly (avoid padding!) - #1501 2012-09-26 14:27:42 +01:00
artemp
a63df933d5 + only log transform evaluation if trans_expr is not null 2012-09-26 14:26:58 +01:00
artemp
fe011a988d + only log transform evaluation if trans_expr is not null 2012-09-26 14:24:26 +01:00
Dane Springmeyer
1af2faf56b formatting 2012-09-25 14:52:32 -07:00
artemp
32d52a1a78 Merge branch 'master' into conv_simplify 2012-09-25 10:35:53 +01:00
artemp
8fe932b7d1 + tiff_reader: make TIFF* 'cacheable', to avoid initialization under
certain conditions.
2012-09-24 13:35:22 +01:00
artemp
a7c02cf1d8 Merge remote-tracking branch 'origin/master' into conv_simplify 2012-09-19 14:07:34 +01:00
artemp
97463abf3d + ensure mesh doesn't overflow source raster extent - #1480 2012-09-19 13:53:56 +01:00
artemp
2834b2ad92 + not sure why we have do { } while(false); - removing 2012-09-19 13:51:53 +01:00
artemp
01ae1a179d Merge branch 'master' into conv_simplify 2012-09-17 11:35:15 +01:00
Dane Springmeyer
2d5287c298 rollback 1b4e7a8fd5 - refs #1489 and #1227 2012-09-14 18:45:09 -07:00
Dane Springmeyer
f3589ab4f9 Revert "no need for premultiplied types in warper"
This reverts commit 61e8a9c236.
2012-09-14 18:42:47 -07:00
Dane Springmeyer
ad8e4e4cc7 Merge pull request #1366 from mapnik/debugsymbolizer
Debug Symbolizer
2012-09-14 16:43:38 -07:00
Dane Springmeyer
1b3dcda87d add method off style to check for active rules 2012-09-14 16:11:37 -07:00
Dane Springmeyer
8cfb40ae2f refactor fontsets making them optional on the symbolizer and removing the dangerous default contructor - closes #1483 (TODO - consider modifying insert_fontset to only take single arg of fontset instance) 2012-09-14 14:17:45 -07:00
artemp
f66d4b1afe Merge branch 'master' into conv_simplify 2012-09-13 08:50:59 +01:00
Dane Springmeyer
2a3a402f5d finish fixing pixel alignment for raster rendering in cairo - closes #1471 2012-09-12 13:25:40 -07:00
Dane Springmeyer
61e8a9c236 no need for premultiplied types in warper 2012-09-12 13:22:37 -07:00
Dane Springmeyer
1b4e7a8fd5 the blender is not called when scaling and if it were using pixfmt_rgba32_pre would be wrong, so switch back to pixfmt_rgba32 2012-09-12 12:34:35 -07:00
artemp
8cb2ce41ac raster scaling issue
+ fix rasterizer polygon to be equal to target image
+ align raster to pixel bouyndaries (?)
  ( fixes grey border issue - #1471)
2012-09-12 14:41:27 +01:00
artemp
f5b4ff9429 Merge branch 'master' into conv_simplify 2012-09-10 10:26:14 +01:00
Dane Springmeyer
0de2beac3e improve interplay of maximum-extent and map.zoom_all, now properly clipping to maximum-extent - closes #1473 2012-09-07 10:36:14 -07:00
artemp
29423cfc1c Merge branch 'master' into conv_simplify
Conflicts:
	bindings/python/mapnik_markers_symbolizer.cpp
	plugins/input/ogr/ogr_index_featureset.cpp
	plugins/input/shape/dbfile.cpp
	plugins/input/shape/shapefile.hpp
	src/load_map.cpp
2012-09-07 16:46:02 +01:00
artemp
967d6110bf + singleton: return ref from instance() method 2012-09-07 16:23:03 +01:00
artemp
11e6ba0c09 + make client methods non-static in classes derived from
mapnik::singleton<> (TODO: apply to all)
+ ensure client methods are accessed through instance() method
2012-09-07 14:56:30 +01:00
artemp
8fa0742a53 + make client methods non-static in classes derived from
mapnik::singleton<> (TODO: apply to all)
+ ensure client methods are accessed through instance() method
2012-09-07 14:51:25 +01:00
artemp
5f8bb423e8 Merge branch 'conv_simplify' of git://github.com/kkaefer/mapnik into kkaefer-conv_simplify 2012-09-06 13:12:39 +01:00
artemp
a513d3f97d + code: avoid exposing unsafe static methods in datasource_cache ( #1451)
+ python: remove redundent 'instance' method (mapnik.DatasourceCache)
+ python: reflect plugin_directories method
+ tests: update python usage

TODO: consider using similar approach in FontEngine etc..
TODO: consider returning reference from singleton::instance() to
      safeguard from accidental deleting a 'singleton' pointer
2012-09-05 12:53:37 +01:00
Hermann Kraus
786f798cab Use double instead of unsigned while parsing XML.
Closes #1469.
2012-09-05 02:15:58 +02:00
Dane Springmeyer
b385370126 fix spelling of opacity in text/formatting - refs #1470 2012-09-04 13:17:09 -07:00
Dane Springmeyer
551f1e0c66 c++ style 2012-09-03 10:52:36 -07:00
Dane Springmeyer
a12b8f1d2f c++ style 2012-09-03 10:27:48 -07:00
Dane Springmeyer
b8f6b16a56 more portable rounding behavior - refs ##1454 2012-08-31 20:31:06 -07:00
Dane Springmeyer
3d9aa3db10 avoid double drawing of lines with RASTERIZER_FAST 2012-08-30 23:34:43 -07:00
Colin Rundel
bd5df80f75 Minimal roll back const changes
Changes to expression_ptr and path_expression_ptr are causing runtime issues with the python bindings
2012-08-29 16:41:48 -04:00
Colin Rundel
dc3763885c More parser clean up - color parser
Dropped color_factory class in favor of single color_parser function. Moved implementation to new color_factory.cpp since it is odd to have two headers (color.hpp, color_factory.hpp) and only one source file.
2012-08-29 16:41:48 -04:00
Colin Rundel
10001f1d4b Expression parsing simplification
Similar idea to path expression parsing cleanup
2012-08-29 16:41:44 -04:00
Colin Rundel
1d0c817170 Make path_expression_ptr have const contents, cleanup 2012-08-29 16:41:43 -04:00
Colin Rundel
0e5f71408e Simplified path_parse implementation
path_parse and path_parse_from_string were redundant, replaced with overloaded path_parse function to achieve the same functionality.

Additional consistency cleanup in load_map.cpp.
2012-08-29 16:41:43 -04:00
Dane Springmeyer
de5970f45e shuffle the mapnik::hue_to_rgb method - no need for it to be in the cpp file 2012-08-28 20:08:43 -07:00
Konstantin Käfer
ae865a59fb Merge branch 'master' into conv_simplify
Conflicts:
	include/mapnik/vertex_converters.hpp
2012-08-28 20:37:27 +02:00
Dane Springmeyer
c9bd0c8e51 Merge branch 'master' of github.com:mapnik/mapnik 2012-08-27 17:59:14 -07:00
Dane Springmeyer
5120d0398d add build file for headers and svg/output code directories to hold the svg_renderer used for output - refs #1438 2012-08-27 17:58:49 -07:00
Dane Springmeyer
ac418a7d4e remote the last references 2012-08-27 16:43:40 -07:00
Colin Rundel
12f2c247b3 Added set_name to font_set class 2012-08-27 16:09:29 -04:00
Dane Springmeyer
c7c8c468ab apply patch from @rundel to make color grammar more modular (TODO - do this with all grammars) - closes #1440 2012-08-26 17:50:30 -07:00
Konstantin Käfer
49a07c64f5 copy algorithm value when copying symbolizer 2012-08-25 15:33:24 +02:00
Konstantin Käfer
fd3aa8a01a Merge branch 'expose_feature_style_processor' into conv_simplify 2012-08-25 15:02:18 +02:00
Konstantin Käfer
7c9700237f move feature_style_processor to an implementation header file
This allows other applications to create custom instances of the feature_style_processor with their own template arguments without forcing freuquent recompiles in mapnik itself
2012-08-25 13:35:41 +02:00
Panagiotis Skintzos
e34dc99f3a Exposed the label collision detector outside of Cairo renderer and added Python bindings (issue #1107) 2012-08-25 11:43:31 +02:00
Konstantin Käfer
13c46b6cc6 Merge branch 'master' into conv_simplify
Conflicts:
	bindings/python/mapnik_line_symbolizer.cpp
	bindings/python/mapnik_polygon_symbolizer.cpp
2012-08-24 23:29:43 +02:00
Konstantin Käfer
4e1423cefe Merge branch 'master' of git://github.com/mapnik/mapnik into conv_simplify
Conflicts:
	src/cairo_renderer.cpp
2012-08-24 23:24:31 +02:00
Dane Springmeyer
6806ca1509 load in load_map if image/svg files are not available when not using stock markers or dynamic expressions - closes #1439 2012-08-23 14:31:50 -07:00
Dane Springmeyer
1ca4bcf78d further improve the reporting of unprocessed nodes and attributes - refs #1441 2012-08-23 14:11:25 -07:00
Dane Springmeyer
03860b1728 improve error messages for exceptions thrown in symbolizers during load_map - closes #1441 2012-08-23 14:04:03 -07:00
Dane Springmeyer
05fdb5424b more fully disable the svg_renderer backend - refs #1438 2012-08-23 10:10:18 -07:00
Dane Springmeyer
bf3efbeab8 move image filter grammar to cpp and re-use in load map by attaching to xml_tree - closes #1435 2012-08-23 08:13:22 -07:00
Dane Springmeyer
a256008283 fix typo 2012-08-22 18:08:06 -07:00
Dane Springmeyer
c3dae01055 avoid clipping polygons if reprojecting to work around #1399 until we have a more proper solution (refs #1282) 2012-08-22 17:38:34 -07:00
Dane Springmeyer
57363c13c1 sync agg with grid renderer for polygon patterns - refs #1309 2012-08-22 17:37:03 -07:00
Dane Springmeyer
eecffc264b better fontset and font failure messages - refs #1101 2012-08-22 17:01:24 -07:00
Dane Springmeyer
a02801beb9 geometry.hpp does not need to use geom_util.hpp - this include cleanup exposed #1430 2012-08-22 13:27:44 -07:00
Dane Springmeyer
50e603c896 use correct total_distance variable - closes #1430 2012-08-22 13:25:40 -07:00
Dane Springmeyer
948531e9d0 fix namespacing for wkt generator code - refs #1330 2012-08-22 09:54:01 -07:00
Dane Springmeyer
e8101a070a partially repair backward compatibility in python for 'marker-type' - refs #1427 and #1285 2012-08-21 16:36:15 -07:00
Dane Springmeyer
d1d782254b xml: support 'label-spacing' as alias to 'spacing' - refs #1427 2012-08-21 14:50:24 -07:00
Dane Springmeyer
9539ce96a6 for 2.1 release hold back clipping on lines with markers to avoid #1426 (refs #1424) 2012-08-21 13:27:35 -07:00
Dane Springmeyer
0eff77c03e return without rendering if label placement algorithm returns false indicating a degenerate geometry - closes #1423 and refs #1424 2012-08-21 12:51:39 -07:00
Dane Springmeyer
b76c8e5c64 +reflect building symbolizer in python 2012-08-20 18:17:00 -07:00
Dane Springmeyer
7b7e556850 formatting 2012-08-20 16:27:38 -07:00
Dane Springmeyer
55646ce236 fix group_by on layer to be std::string const& and reflect in python 2012-08-20 16:26:41 -07:00
Mickey Rose
5ca715c1e0 transform expressions: disallow space-separated compound arguments, refs #1389 2012-08-19 19:30:51 +02:00
artemp
9810557cdc + geojson geometry parser implementation 2012-08-17 12:47:41 +01:00
artemp
21f86761a7 + json: split feature_grammar into geometry and feature grammars 2012-08-17 11:25:21 +01:00
Dane Springmeyer
ad2250a4b5 back compatibility for raster-mode values using _ and shield-no-text 2012-08-16 19:20:29 -07:00
Dane Springmeyer
d95f81a588 c++ style 2012-08-16 17:58:08 -07:00
Dane Springmeyer
e0608a4aa4 only throw for unknown attributes if in strict mode 2012-08-16 16:10:23 -07:00
Dane Springmeyer
a986aedd05 remove 'info' and 'fatal' severities for logging to simplify framework - closes #1400 2012-08-16 15:52:32 -07:00
Konstantin Käfer
b243f03c90 use a set to make visvalingam a lot faster 2012-08-16 22:26:58 +02:00
Dane Springmeyer
a3e27ed726 Merge branch 'master' of github.com:mapnik/mapnik 2012-08-16 12:29:27 -07:00
Dane Springmeyer
bfc92a469c fix and doc out behavior of register_fonts 2012-08-16 12:29:13 -07:00
Dane Springmeyer
9964eefb55 remove now unused variable 2012-08-16 12:28:36 -07:00
Dane Springmeyer
d850ee8b76 correct various old trac links to point to github - closes #1396 2012-08-16 12:27:58 -07:00
Konstantin Käfer
22150f908f add facilities to choose the simplification algorithm 2012-08-16 16:53:38 +02:00
artemp
572f3d3f49 + avoid applying scale_factor twice 2012-08-16 10:42:12 +01:00
artemp
7702a904f3 + cairo : fix point_symbolizer transform calc 2012-08-16 10:37:51 +01:00
Dane Springmeyer
2af768a69b restore compile with <= boost 1.47 2012-08-15 18:15:01 -07:00
Dane Springmeyer
d87d9fd16d Merge branch 'master' of github.com:mapnik/mapnik 2012-08-15 16:59:30 -07:00
Dane Springmeyer
de3afda3bc remove css_color_grammar_deprecated.hpp 2012-08-15 16:59:22 -07:00
Dane Springmeyer
5c0e1de35b repair boost 1.46 compile in json/feature_grammar.cpp - closes #1342 2012-08-15 16:49:13 -07:00
Dane Springmeyer
4390f14e9e repair boost 1.42 compile with transform_expression_grammar.cpp 2012-08-15 16:45:18 -07:00
Dane Springmeyer
9aa0eec63d fix naming of wkt_generator 2012-08-15 16:44:23 -07:00
Dane Springmeyer
4cf1484b53 disable colorize-alpha comp-op as per #1371 2012-08-15 14:46:58 -07:00
Dane Springmeyer
f8e563b4fa fixup includes 2012-08-15 10:25:29 -07:00
artemp
a991c73a98 + geojson grammar : close linear_rings 2012-08-15 16:53:28 +01:00
artemp
e2b657251d + various cleanups
+ remove alpha pre-multiplication from cairo_pattern to
  match agg output
2012-08-15 10:55:12 +01:00
artemp
aecf0531f5 + remove metawriters for the upcoming 2.1 release 2012-08-15 09:47:03 +01:00
Dane Springmeyer
a57996e661 sync markers rendering between agg and grid - closes #1309 2012-08-14 17:18:44 -07:00
Dane Springmeyer
7a5f06656c allow setting marker width/height together with transform 2012-08-14 17:11:08 -07:00
Dane Springmeyer
7961a12281 Merge branch 'master' of github.com:mapnik/mapnik 2012-08-14 10:44:29 -07:00
Dane Springmeyer
fbf9ac8399 support new clipping extent padding method in cairo line_symbolizer rendering as per #1282 - partial revert of 76569cccb8 2012-08-14 10:43:46 -07:00
artemp
bee09477a8 + cairo : fix shield scaling 2012-08-14 17:14:30 +01:00
Konstantin Käfer
dcd7a07c8e simplify-tolerance property boilerplate 2012-08-14 17:04:57 +02:00
artemp
f35f394b30 + cairo : impl raster markers support 2012-08-14 12:58:00 +01:00
Dane Springmeyer
9f450bd986 avoid silencing invalid transform throw and use LOG_ERROR for invalid maximum-extent - closes #1363 2012-08-13 15:35:22 -07:00
artemp
2d20e4aee4 + agg : building_symbolizer - apply scale_factor to stroke width 2012-08-10 11:12:31 +01:00
artemp
b05344863a + implement markers_dispatch to match AGG output 2012-08-09 17:46:55 +01:00
artemp
3a8ef52eb1 + cairo: apply scale_factor to dash calc 2012-08-08 12:24:51 +01:00
artemp
f802a4a60b + ident 2012-08-08 12:12:23 +01:00
artemp
66a6ec78c7 + cleanup 2012-08-08 11:13:02 +01:00
artemp
87e89287b0 + call cairo_show_glyphs and airo_glyph_path directly to
avoid std::vector allocation per glyph
2012-08-07 12:35:03 +01:00
artemp
c6e5639e9d + cairo : fix halo size 2012-08-07 12:00:31 +01:00
artemp
d7fa56b307 Merge remote-tracking branch 'origin/master' 2012-08-07 11:39:11 +01:00
artemp
afa4d3d833 + text_size is a float - parse XML as floats 2012-08-07 10:01:50 +01:00
Dane Springmeyer
cf192ee771 further refactoring of marker_helpers to help set up for using from grid renderer 2012-08-06 11:39:09 -07:00
Dane Springmeyer
6ac9bb8804 Merge branch 'master' of github.com:mapnik/mapnik 2012-08-06 09:42:24 -07:00
artemp
39b07ccfcb + cairo : building_symbolizer - fix fill and stroke settings to match agg 2012-08-06 16:51:31 +01:00
Dane Springmeyer
3d91ca3821 sync agg/grid line symbolizer rendering - refs #1309 2012-08-06 08:29:08 -06:00
Dane Springmeyer
6acd352d40 workaround clang bug on oneiric - closes #1352 2012-08-03 17:13:09 -07:00
Dane Springmeyer
9284c6369d correct rendering behavior of marker-opacity, which should not, as per svg, override fill-opacity and stroke-opacity but should combine with it 2012-08-03 14:14:03 -07:00
artemp
6fc8f3ab89 + instantiate svg_renderer with pixfmt_comp_type 2012-08-03 15:39:44 +01:00
artemp
8c98d8a199 + pre-multiply rendering buffer after applying background color and/or pattern 2012-08-03 15:37:05 +01:00
Dane Springmeyer
8ea21d866d move more code to marker_helpers.hpp to set up for grid impl of new markers code - refs #1282 2012-08-02 22:52:21 -07:00
Dane Springmeyer
c1d124f6d9 Account for offset value to avoid severe clipping with large offsets - refs #1282 2012-08-02 21:00:52 -07:00
Dane Springmeyer
e62739d146 fix render_marker for grid renderer and other minor syncing - refs #1309 2012-08-02 13:10:05 -07:00
Dane Springmeyer
693cc88142 sync grid renderer with agg for point_symbolizer - refs #1309 2012-08-02 11:13:44 -07:00
Dane Springmeyer
c2c006f9c2 support setting opacity on bitmaps in render_marker - refs #1364 2012-08-02 10:52:09 -07:00
Dane Springmeyer
56e11423ef inflate clipping extent for line patterns - refs #1282 2012-08-02 07:26:55 -07:00
Dane Springmeyer
7211436313 avoid clipping artifacts with line_symbolizer by using stroke sensitive clipping extent - refs #1282, #1185, #1215 2012-08-01 16:43:00 -07:00
Dane Springmeyer
092a1bf625 impl debug box drawing in geo extents 2012-08-01 16:40:48 -07:00
Dane Springmeyer
2351877cad Merge branch 'master' of github.com:mapnik/mapnik 2012-08-01 11:08:04 -07:00
artemp
8ff71a24bd + fixed naming (as per SVG) 2012-08-01 17:29:22 +01:00
artemp
3db39f2b78 + revert using clip_poly_line to avoid rendering artifacts
(TODO: consider modifying agg::conv_clip_polyline)
2012-08-01 17:06:35 +01:00
artemp
6c173cd9d4 + cleanup 2012-08-01 16:30:11 +01:00
Dane Springmeyer
e90ccb7a3a Merge branch 'master' of github.com:mapnik/mapnik 2012-08-01 08:00:55 -07:00
artemp
5541ea0271 + layer : minimum-extent and buffer-size
+ agg::process_xxx : remove ad-hoc query_extent modifiers
+ ctrans : simplify vertex skipping
2012-08-01 15:44:36 +01:00
artemp
2dcf940853 Merge remote-tracking branch 'origin/master' 2012-08-01 14:00:36 +01:00
artemp
fc6a22c014 + c++ style 2012-08-01 11:07:45 +01:00
Dane Springmeyer
295c661af2 start setting up to sync markers_symbolizer between agg and grid renderer 2012-07-31 19:19:45 -07:00
Dane Springmeyer
16084ff335 support both interior placement and point for markers - helps prepare for #952 2012-07-31 18:13:50 -07:00
Dane Springmeyer
3821afd74d inherit default placement types from class instance 2012-07-31 18:06:52 -07:00
Hermann Kraus
cdbba2eb38 Remove unnecessary includes. 2012-08-01 02:50:53 +02:00
Dane Springmeyer
9d9c525de0 revert 1dfde78 and properly avoid clipping for point type geometries in markers_symbolizer while moving markers_placement to cpp file to avoid overhead of declaring all possible permutations of vertex convertors - closes #1341 2012-07-31 17:27:52 -07:00
Dane Springmeyer
c3c2902b92 move ellipse contruction code to marker_helpers 2012-07-31 16:40:30 -07:00
Hermann Kraus
f3326115ac Add debug symbolizer. 2012-08-01 01:16:48 +02:00
Dane Springmeyer
d5a6564fe2 Merge branch 'master' of github.com:mapnik/mapnik into marker-ellipse-fix 2012-07-31 13:46:35 -07:00
Dane Springmeyer
967589442c serialize transform for points and sheild 2012-07-31 11:23:53 -07:00
artemp
d7d833dd13 + cleanup/small fixes 2012-07-31 13:31:22 +01:00
artemp
c7af665cc7 + process SEG_CLOSE 2012-07-31 10:59:09 +01:00
artemp
76569cccb8 + select clipper based on geometry type
+ process SEG_CLOSE command
2012-07-31 10:57:42 +01:00
artemp
a3b7d07da0 + select clipper based on geometry type 2012-07-31 10:56:13 +01:00
Dane Springmeyer
39a1477eb2 allow marker-width and marker-height to apply directly to ellipse rx/ry - maintaining ability to precisely control ellipse dimensions, combine with transforms, and avoid scaling line-widths - refs #1348 and #1347 2012-07-30 23:20:20 -07:00
Dane Springmeyer
e482998c51 rename path_ptr to the more explicit svg_path_ptr and set up markers_symbolizer rendering for upcoming changed 2012-07-30 21:45:46 -07:00
Dane Springmeyer
0d97b851fa markers: support opacity on bitmaps, and move to supporting both opacity and fill-opacity 2012-07-30 18:31:21 -07:00
Dane Springmeyer
6f174287a2 amend 822531a which broke polygon geometry labeling - refs #1350 2012-07-30 18:29:26 -07:00
artemp
b963b6c2b3 Merge remote-tracking branch 'origin' 2012-07-30 18:35:03 +01:00
artemp
822531a114 + filter on geometry type to use centroid (Polygon) or
middle_point (LineString) label placement
2012-07-30 18:32:42 +01:00
Dane Springmeyer
81937f7317 only allow restyling of svg paths that already have visible display of stroke/fill 2012-07-28 09:27:37 -07:00
Dane Springmeyer
e213f49d7c re-implement conditional stroke application in markers_symbolizer initially added in 9d756165e0, amended in 9f064960e3, and wrongly disabled in bd74d18f6d 2012-07-27 19:21:46 -07:00
artemp
fe4cfea536 + add call to close_path() if SEG_CLOSE 2012-07-26 15:49:58 +01:00
artemp
ec2d0cc210 + wkb reader : close polygons 2012-07-26 15:20:56 +01:00
artemp
07ec5c31d0 + turns off white space skipping 2012-07-26 11:45:34 +01:00
Dane Springmeyer
4fbe353d4a make stock ellipse a true ellipse 2012-07-25 19:29:43 -07:00
Dane Springmeyer
bd74d18f6d no need anymore to have parse_stroke return a bool 2012-07-25 18:26:34 -07:00
Dane Springmeyer
9f064960e3 load_map: a stroke-width=0 is valid for markers now (for restyling svg) 2012-07-25 18:19:41 -07:00
Dane Springmeyer
2680f941eb clean up unused code and includes 2012-07-25 09:31:57 -07:00
artemp
774e1b1d77 + avoid applying scaling_factor twice for raster markers
+ cleanup
2012-07-25 11:43:43 +01:00
artemp
f0ada2b284 + remove colorizer (@springmeyer - was it intentional?) 2012-07-25 10:00:08 +01:00
Dane Springmeyer
ad90db2eb0 remove duplicate declaration 2012-07-24 23:40:28 -07:00
Dane Springmeyer
1dfde7846b default to not clipping for markers_symbolizer as a temporarily workaround for #1341 2012-07-24 19:56:08 -07:00
Dane Springmeyer
6396b443ef default to MARKER_POINT_PLACEMENT for markers 2012-07-24 19:48:22 -07:00
Dane Springmeyer
074b385999 include what you use 2012-07-24 19:08:26 -07:00
Dane Springmeyer
b4f3d6da11 include what you use 2012-07-24 18:35:41 -07:00
Hermann Kraus
3860ae9447 Merge branch 'master' of github.com:mapnik/mapnik 2012-07-25 01:18:51 +02:00
Dane Springmeyer
ebf87969e4 move css_color and path_expression grammars to cpp 2012-07-24 15:43:32 -07:00
Hermann Kraus
3054145103 Merge branch 'master' of github.com:mapnik/mapnik 2012-07-25 00:21:30 +02:00
Hermann Kraus
d35821d058 Fix deprecation warnings. Part 1
Refs #1340.
2012-07-25 00:20:58 +02:00
Dane Springmeyer
3f444302f0 move wkb_generator.cpp to cpp to reduce grammar compilation burden in the python bindings 2012-07-24 15:04:39 -07:00
Dane Springmeyer
ec12d02209 iterate image_filters by const& - refs #1330 2012-07-24 14:01:46 -07:00
artemp
5ac4d2ec93 + add raster markers support 2012-07-24 14:04:25 +01:00
artemp
553e767169 + remove const modifiers 2012-07-24 09:44:14 +01:00
Dane Springmeyer
29deca8db8 shave off 4 seconds from xml_node.cpp compile time (16 -> 12) by moving transform grammar to cpp - refs #1267 2012-07-23 18:12:10 -07:00
Dane Springmeyer
348dfff0c7 move feature_grammar to cpp file reducing compile time mem usage for feature_collection_parser.cpp - refs #1267 2012-07-23 17:03:06 -07:00
Dane Springmeyer
8f803b9897 reduce build time of xml_tree by half and memory usage by 1/3 - refs #1267 2012-07-23 16:15:27 -07:00
Dane Springmeyer
9c5dbc20c5 properly skip empty geometries - refs #1333 and #1305 an #1132
+ remove redundant ar.size() > 0 check
+ use std::auto_ptr<geometry_type> to avoid memory leaks and
  improve exception safety.
2012-07-23 10:39:34 +01:00
Dane Springmeyer
e36081a5c0 change geometry_utils::from_wkb to return a bool that signifies if at least one wkb path was parsed - refs #1333 and #1305 2012-07-20 15:09:01 -07:00
Dane Springmeyer
a968150f6b fix compile after geometry util namespacing 2012-07-20 11:18:33 -07:00
artemp
fd209b2958 + put labeling routines into its owm 'label' namespace 2012-07-20 17:32:38 +01:00
artemp
516f7c75b1 + expose geometry type in expression grammar to allow following
filter expressions : [mapnik::geometry_type] = Polygon (#546)
2012-07-20 12:28:25 +01:00
artemp
8e2774fe84 + remove debug output 2012-07-19 16:59:33 +01:00
artemp
ab0722efce + AGG: refactor process_markers_symbolizer to use vertex_converters 2012-07-19 16:37:54 +01:00
artemp
7b10400be9 + update rendering code to work with new labeling methods
+ rename num_points() to size()
+ rename get_vertex() to vertex()
2012-07-19 16:36:44 +01:00
artemp
710b7eb04b + instantiate all vertex_converters permutations
+ pass parameter by const reference
2012-07-19 16:26:10 +01:00
artemp
c0ecb7e980 + use member variable in ctor 2012-07-19 16:24:29 +01:00
Dane Springmeyer
b7630a3eb8 default to fully opaque default marker svg - fixes #1326 2012-07-18 14:07:52 -07:00
artemp
560aca20fa Merge remote-tracking branch 'origin/master' 2012-07-17 17:11:59 +01:00
artemp
195b8ad887 + affine transform for raster markers - #1279 2012-07-17 17:10:24 +01:00
Dane Springmeyer
6d95076954 sync grid renderer with agg for text/shields/point - refs #1309 2012-07-16 11:51:14 -07:00
Dane Springmeyer
89668e7b26 map bilinear8 to bilinear for now (TODO - add bilinear8 to AGG) 2012-07-16 09:42:01 -07:00
Dane Springmeyer
8fcf10be12 Merge branch 'master' of github.com:mapnik/mapnik 2012-07-15 20:39:21 -07:00
Dane Springmeyer
e9c5ab3d94 sync polygon rendering between agg and grid backends 2012-07-13 16:42:23 -07:00
artemp
0eddc2b5a0 + apply scale_factor 2012-07-13 11:17:35 +01:00
artemp
1e6be7abc3 + add accessor methods 2012-07-13 10:25:12 +01:00
Dane Springmeyer
bc8d6568f5 sync line rendering between grid and agg - refs #1309 2012-07-12 19:34:39 -07:00
Dane Springmeyer
214b24ed12 finish updating marker tests - closes #1304 2012-07-12 19:21:04 -07:00
Dane Springmeyer
fad8eff676 fix scaling of markers when render time resolution != 1 2012-07-12 19:01:59 -07:00
Dane Springmeyer
2fe306e34f fix marker clamping and sync with agg renderer- refs #1309 2012-07-12 18:41:03 -07:00
artemp
461f5cfe08 + use separate stroke-opacity and fill-opacity 2012-07-12 15:38:25 +01:00
artemp
279bfe7f0f + remove unused mutating methods
+ cleanup&style
2012-07-12 10:21:57 +01:00
artemp
c7960a2093 + support clipping on/off in text_symbolizer_helper,
shield_symbolizer_helper and process_markers_symbolizer
  TODO: revisit implementation to avoid code duplication
2012-07-11 14:47:39 +01:00
artemp
8cf9a5a082 + more const correctness 2012-07-11 10:32:08 +01:00
artemp
35ab93667f + enforce const
+ pass arguments by const ref
2012-07-11 10:13:38 +01:00
Dane Springmeyer
3e895ac6b7 implement built in support for ellipse and arrow markers, make markers_symbolizer default to POINT placement and ellipse drawing, add back compatibility for deprecated marker-type property - refs #1285 and #1304 2012-07-10 22:38:53 -07:00
Dane Springmeyer
75d2d5bdca remove duplicate variable 2012-07-10 22:34:46 -07:00
Dane Springmeyer
e67463661c sync grid markers_symbolizer rendering with agg 2012-07-10 22:32:19 -07:00
Dane Springmeyer
bcc8da4dea agg markers_symbolizer rendering: only create objects if actually rendering 2012-07-10 22:31:51 -07:00
Dane Springmeyer
3efab11bdb start carrying through the geometry clipping extent in the grid renderer 2012-07-10 18:39:06 -07:00
Dane Springmeyer
c58cbe0341 remove reference to arrow.cpp 2012-07-10 18:12:06 -07:00
Dane Springmeyer
310ed4a05d remove references to now unused mapnik::arrow 2012-07-10 18:11:43 -07:00
Dane Springmeyer
afa9dc3c7c move svg marker modifiers to hpp file for re-use in other renderers 2012-07-10 18:09:19 -07:00
Dane Springmeyer
4f507e2fa3 expose the ability to parse an svg from an in-memory string 2012-07-10 08:59:35 -07:00
artemp
216768fbc0 + output image-filters and direct-image-filters 2012-07-10 12:52:18 +01:00
Dane Springmeyer
79ef09d1a3 create grid feature context with correct sorting - closes #1306 2012-07-09 18:40:41 -07:00
Dane Springmeyer
cbf821c762 move key grid functions to cpp file 2012-07-09 17:32:36 -07:00
artemp
f656efaa49 + apply dynamic width and/or height
+ make 'width/height' pair and 'transform' mutually exlusive
2012-07-09 10:22:19 +01:00
artemp
58bd55b075 + allow independent width and height
+ better namings
2012-07-09 10:21:12 +01:00
artemp
20d935ea1e + remove explicit keyword
+ make width and height 'optional' - default init (0)
+ change members order
2012-07-09 10:18:41 +01:00
Dane Springmeyer
3823890b40 rollback 34c3128b0c, move 'scaling' to proper enum, and move image_scaling functions to new cpp/hpp 2012-07-06 16:45:58 -07:00
Dane Springmeyer
3ddd38116c Merge branch 'master' of github.com:mapnik/mapnik 2012-07-06 11:54:04 -07:00
Dane Springmeyer
b5dc59cabc remove serialization of get_mode, no longer needed 2012-07-06 11:53:54 -07:00
artemp
ee7f72dcce + fix compilation issue 2012-07-06 14:03:44 +01:00
Dane Springmeyer
c44b92193f serialize all properties shared by all symbolizers 2012-07-05 17:23:48 -07:00
Dane Springmeyer
9beceae298 shuffle base parsing for shields so it is clearer the call is being made 2012-07-05 17:10:00 -07:00
Dane Springmeyer
2f45de8fea serialize comp-op in save_map - refs #1292 2012-07-05 17:06:41 -07:00
Dane Springmeyer
0de815ba03 remove raster mode serialization and a few std::clog references in save_map and load_map 2012-07-05 16:07:38 -07:00
Dane Springmeyer
9dd69d091b merge with master 2012-07-05 15:40:16 -07:00
Dane Springmeyer
d8c719f05e finish exposing scale_factor to cairo_renderer 2012-07-05 14:54:58 -07:00
Dane Springmeyer
f7383b81fb properly pass the scale_factor to the cairo_renderer_base 2012-07-05 11:12:46 -07:00
artemp
59c1f9ac21 + inherit stroke, stroke-width and fill if provided in markers_symbolizer 2012-07-05 17:17:35 +01:00
artemp
9d756165e0 + update to work with optional stroke (markers) 2012-07-05 17:16:11 +01:00
artemp
847f284a97 + make stroke and fill optional
+ return expression_ptr by const ref
+ change init order
2012-07-05 17:11:52 +01:00
Dane Springmeyer
c677b4f47c ensure the bounds used for avoid-edges and minimum-padding is non-buffered - refs #1283 2012-07-04 18:34:04 -07:00
Hermann Kraus
6af5fd7151 Merge branch 'master' of github.com:mapnik/mapnik 2012-07-04 21:00:59 +02:00
Hermann Kraus
82d7a63ef6 Replace remaining parse_expression() calls.
Closes #1168.
2012-07-04 20:59:36 +02:00
Hermann Kraus
dd9276b1ef Reuse expression grammar for TextSymbolizer.
Refs #1168.
2012-07-04 20:55:03 +02:00
Hermann Kraus
7a967d7047 Correctly perform get_text() on <xmltext> nodes. 2012-07-04 20:51:34 +02:00
artemp
9b14a7206a remove arrow/ellipse ad-hoc markers - see #1285 2012-07-04 14:50:11 +01:00
artemp
6bc3f06afd + remove arrow/ellipse 2012-07-04 14:22:44 +01:00
artemp
ab4e717813 + fix stock markers transformations
FIXME : use markers cache to load and store stock markers
2012-07-04 11:56:52 +01:00
artemp
8ab8f7c420 + add missing miterlimit (grid,cairo) 2012-07-04 10:07:37 +01:00
Dane Springmeyer
7d9b4ce0da settle upon 'geometry-transform' naming - refs #1276 2012-07-03 18:34:11 -07:00
Dane Springmeyer
e4ff79d8d8 re-implement f866ab1f80 and da53af5c98 (re-closing #1277) since somehow these commits dissapeared from master 2012-07-03 18:04:35 -07:00
Dane Springmeyer
e93c5604a6 use detector extent for shields that is also sensitive to buffer_size - refs #1283 2012-07-03 13:32:27 -07:00
artemp
290bf735da + use BOOST_FOREACH 2012-07-03 13:38:07 +01:00
artemp
4b9346ab5f + better name for boolean member to avoid clashing with object name. 2012-07-03 12:45:07 +01:00
artemp
a6784270bb + pass args by const ref 2012-07-03 11:16:10 +01:00
artemp
134dc5bbf1 Merge branch 'master' into transform-rename
Conflicts:
	src/load_map.cpp
2012-07-02 15:37:13 +01:00
artemp
7d2c695849 + remove unused font_manager_ 2012-07-02 13:28:40 +01:00
Dane Springmeyer
757816a1b8 respect scale_factor in affine transform used for collision detector in point_symbolizer - refs #1274 2012-06-29 17:25:34 -07:00
Dane Springmeyer
9888ff0d50 remove geometry type tests for postgis that are not longer valid with postgis 2.0 2012-06-29 16:52:54 -07:00
Dane Springmeyer
8412fdbbe6 Merge branch 'master' of github.com:mapnik/mapnik 2012-06-29 16:36:55 -07:00
Dane Springmeyer
da53af5c98 avoid passing empty file attributes into the renderer - closes #1277 2012-06-29 16:36:43 -07:00
Hermann Kraus
512a9af53f Fix font scaling.
Refs #1273.
2012-06-30 01:28:56 +02:00
Dane Springmeyer
f866ab1f80 no need to catch image_reader_exception any more during load map because all errors are now at runtime due to path expressions 2012-06-29 16:21:52 -07:00
Dane Springmeyer
5c9186017b rename 'image-transform' to just 'transform' (for backward compatibility) and call transforms applied to geometries 'view-transform' 2012-06-29 15:59:56 -07:00
Dane Springmeyer
7f531498c6 pass scale_factor to text_renderer in order to scale up halo_radius - refs #1273 and refs #695 2012-06-29 13:05:28 -07:00
Dane Springmeyer
ef893b5b5f comment on why we use center for justify_alignment 2012-06-29 11:43:37 -07:00
artemp
caa50402dc + apply scale_factor to raster markers (bilinear) 2012-06-29 12:31:41 +01:00
artemp
34c3128b0c + use Map::scale_factor_ 2012-06-29 12:30:36 +01:00
artemp
bf60dd9299 + don't call 'set_character_sizes' - alredy set in processed_text.cpp:L77 2012-06-29 10:36:10 +01:00
Dane Springmeyer
67e9b0d616 move marker width/height to expressions - closes #1102 and replaces #1255 2012-06-28 19:54:25 -07:00
Artem Pavlenko
5519648989 + inflate extent to match agg renderer 2012-06-28 11:58:54 +01:00
Artem Pavlenko
bfa7052e84 + markers: fix stock arrow's transformations 2012-06-27 13:46:52 +01:00
Artem Pavlenko
eb686c6582 + cairo : sync building_symbolizer output with agg 2012-06-26 17:15:11 +01:00
Artem Pavlenko
cec9b5798e Revert "cleaner approach to a compile time magic alpha number for grid buffers"
(doesn't link : clang version 3.2 (trunk 158601))

This reverts commit 98753db9fd.
2012-06-26 16:53:07 +01:00
Artem Pavlenko
f8a7d06034 Merge remote-tracking branch 'origin/master' 2012-06-26 15:02:28 +01:00
Artem Pavlenko
5bc9f73506 + markers_symbolizer: support affine geometry transformations
+ fix markers bounding box calc
+ fix spacing logic to use transformed marker width
2012-06-26 15:00:42 +01:00
Dane Springmeyer
98753db9fd cleaner approach to a compile time magic alpha number for grid buffers 2012-06-25 17:57:52 -07:00
Dane Springmeyer
18cf6b1bdd remove unneeded header 2012-06-25 17:28:01 -07:00
Artem Pavlenko
20255966c3 + text_symbolizer: add largest-bbox-only boolean property
default:true
2012-06-25 15:00:53 +01:00
Dane Springmeyer
5b61c093e5 initialize grid buffers to std::numeric_limits<int>::min() and use that value to mean no-hit or non-interactive pixels - closes #1065 2012-06-23 22:41:07 -04:00
Dane Springmeyer
39bae3825e remove plugin usage of lexical cast - refs #1055 2012-06-22 16:49:53 -04:00
Dane Springmeyer
eb4740b50f fix behavior of compositing via python api now that we have premultiplication issues sorted out in core - refs #1262 and #314 and #1211 2012-06-21 15:44:57 -04:00
Dane Springmeyer
21a109790e demultiply the correct buffer (for style-level compositing and opacity) - refs refs #1262 and #314 2012-06-21 15:38:06 -04:00
Dane Springmeyer
af519a41a2 use the current buffer in markers, building, shield, and line pattern symbolizers to ensure that style level opacity and compositing work - refs #1262 and #314 2012-06-21 15:19:45 -04:00
Dane Springmeyer
9dbfb786a9 Merge branch 'master' of github.com:mapnik/mapnik 2012-06-21 14:57:59 -04:00
Dane Springmeyer
8909c13e98 print name of unloadable tiff file 2012-06-20 20:03:08 -04:00
Artem Pavlenko
2201eb6941 Merge remote-tracking branch 'origin/master' 2012-06-20 10:07:10 -04:00
Artem Pavlenko
eba3a88388 + agg_pixfmt_rgba.h : impl blend_color_hspan_alpha
+ agg_renderer_scanline.h : add support for setting alpha
+ process_polygon_pattern_symbolizer.cpp : setting variable opacity
2012-06-20 10:03:24 -04:00
Dane Springmeyer
10c6dc6fcb ensure the composite operation also applies to the 'fast' line rasterizer method - refs #1262 2012-06-19 17:53:59 -04:00
Tom MacWright
aa5a726b92 Rename color-spin composite operation to colorize alpha
to make it less confusing alongside actual color manipulation
modes.
2012-06-19 17:16:25 -04:00
Dane Springmeyer
48a543b5d5 implement style-level opacity - closes #314 2012-06-19 15:10:28 -04:00
Dane Springmeyer
4e16618771 clean up coda comments 2012-06-19 08:43:15 -04:00
Dane Springmeyer
3272707548 premultiply marker images once, before caching - refs #1262 2012-06-19 08:36:03 -04:00
Artem Pavlenko
65156a59ed + read opacity from .xml (polygon_pattern_symbolizer) 2012-06-18 18:53:41 -04:00
Artem Pavlenko
2c876c3a58 + premultiply raster (process_raster_symbolizer) 2012-06-18 18:52:48 -04:00
Artem Pavlenko
a01e1b3b14 Merge remote-tracking branch 'origin/master' 2012-06-18 18:52:06 -04:00
Artem Pavlenko
c5864453a0 + only premultiply src 2012-06-18 18:50:32 -04:00
Dane Springmeyer
62b7a76f29 Merge branch 'master' of github.com:mapnik/mapnik 2012-06-18 18:47:42 -04:00
Dane Springmeyer
751d246f3c move agg rasterization to use and expect consistently premultiplied buffers - refs #1262 2012-06-18 18:47:30 -04:00
Artem Pavlenko
9b61c0effe Merge remote-tracking branch 'origin/master'
Conflicts:
	deps/agg/include/agg_pixfmt_rgba.h
	include/mapnik/image_compositing.hpp
	src/cairo_renderer.cpp
	src/image_compositing.cpp
2012-06-18 14:36:15 -04:00
Artem Pavlenko
c71944bf32 + use HSV color space (as in GIMP)
+ rename 'luminosity' to 'value'
2012-06-18 14:30:01 -04:00
Tom MacWright
f6c10bbb7e Add color_spin composite operation. 2012-06-18 11:10:04 -04:00
Artem Pavlenko
dc89f6fac4 Merge remote-tracking branch 'origin/master' 2012-06-17 15:21:27 -04:00
Artem Pavlenko
14d365d572 + hue, saturation, color and luminosity blending modes (HSL based)
(http://en.wikipedia.org/wiki/Blend_modes#Hue.2C_saturation_and_luminosity)
2012-06-17 15:19:29 -04:00
Artem Pavlenko
6281dec04b + add missing headers 2012-06-17 15:16:13 -04:00
Dane Springmeyer
998bf593ef svg parsing: support empty paths and avoid leaking file descriptors in the case of invalid paths - closes #1256 2012-06-16 23:54:14 -04:00
Dane Springmeyer
014fe26f70 Merge branch 'master' of github.com:mapnik/mapnik into copy-grid-features 2012-06-16 17:29:45 -04:00
Dane Springmeyer
d0b838b7a4 Merge branch 'master' of github.com:mapnik/mapnik 2012-06-16 15:50:59 -04:00
Dane Springmeyer
0516c2f59a amend cd7ad3e15e by avoiding use of setjmp which does not compile with latest png (as per #772) - see also #1258 2012-06-16 15:50:46 -04:00
Dane Springmeyer
bd7ad7cd3c address #1198 by moving away from caching grid features and (back) to copying attributes - also roll back to passing feature_impl& rather than feature_ptr (which is now unneeded) 2012-06-15 22:17:26 -04:00
Dane Springmeyer
00853a118c expand clipping box for lines to avoid trimmed edges - TODO - make sensitive to line width - refs #1215 2012-06-15 15:37:08 -04:00
Dane Springmeyer
d33496baa7 split up code that handles datasource plugin registration 2012-06-13 19:25:59 -04:00
Mickey Rose
1e3c48afb1 split parse_transform.hpp, set dynamic transform expression from python 2012-06-07 17:06:45 +02:00
Artem Pavlenko
03e6f9d023 Merge pull request #1245 from simonsonc/png-exceptions
Catch and throw PNG exceptions - fixes #1213
2012-06-07 04:00:40 -07:00
Artem Pavlenko
11c34b1599 Merge branch 'transform_expr' of https://github.com/mirecta/mapnik 2012-06-07 10:20:05 +01:00
Dane Springmeyer
957c40f763 move to int32 for grid rendering buffer - closes #1196 2012-06-06 16:36:38 -07:00
Carl Simonson
cd7ad3e15e Catch and throw PNG exceptions - fixes #1213
The png library uses setjmp/longjmp to throw exceptions when reading. If this
is not set up, the png library calls abort(). This change handles the errors
and throws a C++ exception instead.

This issue was found by testing images from pngsuite at
http://www.schaik.com/pngsuite/. These images are included and a unit test was
added to test both images that should be successful and images that should
throw an exception.
2012-06-06 17:52:41 -05:00
Mickey Rose
bd9609c370 new feature: transform expressions are now dynamic
(cherry picked from commit 173c402b5c142310087246b0ea54dbec54edcac8)

Conflicts:

	include/mapnik/vertex_converters.hpp
	src/agg/process_markers_symbolizer.cpp
	src/agg/process_point_symbolizer.cpp
	src/agg/process_polygon_pattern_symbolizer.cpp
	src/load_map.cpp
2012-06-06 17:34:26 +02:00
Mickey Rose
46c2d1c710 add operators for computing the envelope of a transformed box2d
(cherry picked from commit 9ad342cbed150948561c08e98957bc014dedc7f3)
2012-06-06 17:34:02 +02:00
Dane Springmeyer
eb779b1580 only link libjpeg if we are building with jpeg support 2012-06-04 15:23:08 -07:00
Dane Springmeyer
11e81fdb03 finish exposing markers symbolizer in python - closes #612 2012-06-04 13:42:51 -07:00
Dane Springmeyer
f3073f3693 agg/grid renderers - match cairo by using buffered detector dimensions for placement_finder collision tests 2012-06-04 13:41:35 -07:00
Dane Springmeyer
c8c2d98c0e avoid compiler warnings with msvc 2012-06-04 11:36:27 -07:00
Dane Springmeyer
857a6950f7 fix warning message for pending features for markers 2012-06-04 11:11:29 -07:00
Artem Pavlenko
024ebfdfe3 + better not to use errno (via perror) for std::iostreams
(it works with gcc and friends but non-standard)
2012-06-01 12:19:42 +01:00
Artem Pavlenko
90c3415d9b + don't premultiply pattern source
+ cleanup
2012-05-31 13:26:16 +01:00
Artem Pavlenko
500f57cf60 + make vertex() and rewind() methods const
+ remove unused coord_transforms
+ rename coord_transform2 to coord_transform
2012-05-31 12:13:09 +01:00
Artem Pavlenko
6e23b64244 + don't draw 'frame' to match AGG renderer output 2012-05-30 16:29:39 +01:00
Artem Pavlenko
f4539474fc + scale_factor is 1.0 in cairo renderer
TODO: should consider using variable scale_factor as in AGG
2012-05-30 16:27:55 +01:00
Artem Pavlenko
9ae70c4823 + take into account opacity from fill and stroke rgba8 colour 2012-05-30 16:26:34 +01:00
Dane Springmeyer
a359c60236 include cairo-version header explicitly 2012-05-29 16:57:58 -07:00
Mickey Rose
09b05b48b0 fix/prevent to_expression_string misuse #985 2012-05-29 22:53:39 +02:00
Artem Pavlenko
f3c774baa4 + add grain-extract blending mode (gimp) 2012-05-29 15:09:33 +01:00
Artem Pavlenko
9dc4cb34cc + point symbolizer needs 'image-transform' via @lightmare 2012-05-29 12:03:14 +01:00
Artem Pavlenko
d85605eba1 + avoid unnecessary mapnik::feature_ptr copying 2012-05-29 11:54:12 +01:00
Hermann Kraus
472e81fe68 Correctly transform marker bounding box.
Refs #1119.
2012-05-28 02:46:34 +02:00
Hermann Kraus
0697461488 Add compatiblity layer for C++ code. 2012-05-27 01:15:03 +02:00
Artem Pavlenko
6bea57d690 + implement grain-merge blending mode (GIMP) 2012-05-25 10:35:43 +01:00
Dane Springmeyer
09426bf324 remove option to link againt external AGG - our local copy has critical fixes and is required 2012-05-24 17:05:51 -07:00
Dane Springmeyer
5b0351875b handle older (< 1.10.0) cairo versions that lack support for advanced compositing ops (target: cairo 1.8.10-2ubuntu1 on lucid) 2012-05-18 11:31:08 -07:00
Artem Pavlenko
1b210ba456 + use compositing renderer for markers,points and shields 2012-05-15 16:13:08 +01:00
Artem Pavlenko
55d5d8596d + pass by const-ref
+ remove explicit keyword from default ctor
2012-05-15 14:40:24 +01:00
Artem Pavlenko
9c9753d2c8 + fix: set_image_transform 2012-05-15 14:20:56 +01:00
Artem Pavlenko
9599711e0e Merge remote-tracking branch 'origin/master' 2012-05-14 17:33:45 +01:00
Artem Pavlenko
e08339aee9 + use custom span_image_filter preserve alpha 2012-05-14 17:32:12 +01:00
Dane Springmeyer
c1495c0c74 restore the fast line rasterizer (rasterizer_outline_aa) and improve its rendering quality and consistency with standard method - refs #873 2012-05-11 17:40:21 -07:00
Dane Springmeyer
54f54ed775 rename composite args 2012-05-11 15:31:35 -07:00
Dane Springmeyer
8ae867f6de default values for composite args to maintain api compatibility 2012-05-11 15:19:05 -07:00
Dane Springmeyer
e8f28f6582 rename typedef to avoid confusion with mapnik:filter:filter_type 2012-05-11 12:42:29 -07:00
Artem Pavlenko
7380a6a001 + fix raster_symbolizer: add x/y dst args to composite 2012-05-11 10:55:58 +01:00
Artem Pavlenko
c469a63615 + use standard compositing ops (process raster symbolizer) 2012-05-10 18:17:14 +01:00
Artem Pavlenko
5f5ca030b7 + parse symbolizer_base (raster) 2012-05-10 18:15:32 +01:00
Artem Pavlenko
8085110e8f + add opacity parameter 2012-05-10 18:14:53 +01:00
Artem Pavlenko
260a098447 + update to use non-optional comp_op 2012-05-10 12:10:37 +01:00
Artem Pavlenko
609739d1b7 + always use compositing renderer 2012-05-10 12:09:03 +01:00
Artem Pavlenko
8cd898ce35 + make comp_op non-optional ( default: src-over)
+ move ctors implementations into *.cpp
2012-05-10 12:05:40 +01:00
Dane Springmeyer
ab73f13525 rename the image transform for clarity 2012-05-09 18:15:34 -07:00
Artem Pavlenko
953db9b209 + use vertex_converters where applicable 2012-05-09 15:45:44 +01:00
Artem Pavlenko
aad7c5e384 + implement compositing for text
+ refactor image_32
2012-05-09 12:39:23 +01:00
Artem Pavlenko
36c5e348d0 + fix: add missing smooth_tag() 2012-05-07 16:43:48 +01:00
Artem Pavlenko
426e191f9a + simplify/cleanup 2012-05-07 16:38:17 +01:00
Artem Pavlenko
9c88495a07 + enable 'smooth' converter 2012-05-07 16:37:44 +01:00
Artem Pavlenko
7e49a6f44e + move 'smooth' property to symbolizer_base level
+ remove 'SYMBOLIZER_FAST' completely
2012-05-07 16:08:16 +01:00
Artem Pavlenko
449a40685a + remove "fast" rasterizer as it produces suboptimal results 2012-05-07 14:39:39 +01:00
Artem Pavlenko
1bf6510aeb + remove ad-hoc extent multiplier 2012-05-07 12:57:07 +01:00
Artem Pavlenko
960de61bb7 + add compositing 2012-05-07 12:49:26 +01:00
Artem Pavlenko
835105ddc1 + cleanup 2012-05-07 12:35:43 +01:00
Artem Pavlenko
d0a24c1ae5 + pass correct clipping tag 2012-05-07 12:18:16 +01:00
Artem Pavlenko
3607281018 + fix compositing 2012-05-07 12:15:25 +01:00
Artem Pavlenko
4a9387ea44 + use typedef's 2012-05-07 12:15:04 +01:00
Artem Pavlenko
a789ffd2a8 Merge branch 'master' into compositing 2012-05-07 10:24:47 +01:00
Artem Pavlenko
9ba04738d6 + don't expose agg headers 2012-05-04 10:23:49 +01:00
Dane Springmeyer
f571cd9763 fixup clamping logic for markers symbolizer and sync with agg implementation 2012-05-03 16:45:40 -04:00
Artem Pavlenko
c475f2f995 + cairo: fix polygon pattern rendering 2012-05-03 15:28:57 +01:00
Artem Pavlenko
b0a0ab6d3c + Cairo: symbolizer level compositing 2012-05-03 14:34:17 +01:00
Artem Pavlenko
164ba630d9 + add requirement for renderers-> provide processor_impl_type
to allow process_xxx functions declaration in base class
+ re-enanble cairo renderer
2012-05-03 12:19:26 +01:00
Artem Pavlenko
1b33c584e7 + use MAPNIK_LOG_DEBUG 2012-05-03 12:17:37 +01:00
Artem Pavlenko
e23fdb276f + pass scale_factor to vertex_converter 2012-05-02 17:22:54 +01:00
Artem Pavlenko
44c5efbf75 + add miterlimit parameter 2012-05-02 17:04:24 +01:00
Artem Pavlenko
6d8ce26313 + allow negative offset
+ re-enable affine_transform
2012-05-02 16:30:19 +01:00
Artem Pavlenko
a475b6e0bc + add offset_converter 2012-05-02 15:13:46 +01:00
Artem Pavlenko
28b02737cd fix transform serialization for markers_symbolizer 2012-05-01 16:52:19 +01:00
Artem Pavlenko
77dfac5622 + re-introduce transform on symbolizer_with_image 2012-05-01 16:47:33 +01:00
Artem Pavlenko
a72ee4ba66 Merge branch 'master' into compositing
Conflicts:
	include/mapnik/image_compositing.hpp
	include/mapnik/util/conversions.hpp
	include/mapnik/value.hpp
	src/agg/agg_renderer.cpp
	src/agg/process_line_symbolizer.cpp
	src/agg/process_polygon_symbolizer.cpp
	src/png_reader.cpp
	src/svg_parser.cpp
	utils/svg2png/svg2png.cpp
2012-05-01 12:35:49 +01:00
Artem Pavlenko
f57d2c28f0 + 'direct' image filter support: apply filter on main rendering buffer
(TODO: better user-friendly names)
+ allow empty string e.g image-filters="" (why not?)
2012-04-25 10:54:54 +01:00
Artem Pavlenko
c26ad5706e + move 'clip' property to symbolizer_base
+ support 'clip' accross relevant symbolizer (agg)
2012-04-24 11:10:54 +01:00
Dane Springmeyer
9d002ee620 fix whitespace post 2f8d08c36 2012-04-23 19:21:26 -07:00
Dane Springmeyer
2f8d08c366 Merge pull request #1190 from ssinger/fix_segfault
Avoid dereferencing a null error structure
2012-04-23 19:19:42 -07:00
Steve Singer
4b4f2326cc Avoid dereferencing a null error structure 2012-04-23 22:00:31 -04:00
Dane Springmeyer
6a27a28de2 avoid taking reference to temporary - fixes segfaul seen on linux (but not on osx) 2012-04-23 21:28:07 -04:00
Dane Springmeyer
3ded9e06bd ensure libmapnik is built before python bindings are linked 2012-04-23 17:38:01 -07:00
Dane Springmeyer
674f7bc238 fix syntax error - refs #1189 2012-04-23 11:33:59 -07:00
Dane Springmeyer
c3004e7a01 scons: ensure compiles only happen if actually installing - closes #1189 2012-04-23 11:29:50 -07:00
Artem Pavlenko
eb16d2867f use src-over as a default comp mode 2012-04-23 16:15:56 +01:00
Artem Pavlenko
a4cdc7a1c0 + make comp_op boost::optional<>
+ use plain pixf when style_level_compositing=true
2012-04-23 15:41:18 +01:00
Artem Pavlenko
377f851a69 + fix src-over lookup
+ corrected names to follow SVG spec
2012-04-23 13:02:02 +01:00
Dane Springmeyer
27f601d1f0 fix boost filesystem2 compile 2012-04-20 17:39:52 -07:00
Dane Springmeyer
622ce7e590 skip font files and face names with leading '.' - interpret as hidden 2012-04-20 15:31:06 -07:00
Artem Pavlenko
03d42e59a5 + allow specifying premultiply flag for src and dst images
+ fix logic in agg_renderer (TODO)
2012-04-20 14:53:11 +01:00
Dane Springmeyer
2b92f04926 optimize font rendering with fontsets in the case of some fontset fonts not being available on the users system - closes #1182 2012-04-19 11:22:42 -07:00
Artem Pavlenko
dd7035972d + remove debug printing 2012-04-19 13:41:09 +01:00
Dane Springmeyer
cfa2ffc52e better error output when we fail to parse comp-op or image-filters 2012-04-18 07:37:14 -07:00
Dane Springmeyer
b3c618e764 avoid warnings 2012-04-18 07:09:23 -07:00
Dane Springmeyer
2f65a7612d allow cairo compile 2012-04-18 07:09:12 -07:00
Artem Pavlenko
668d6f2325 image-filters: initial implementation 2012-04-18 12:14:23 +01:00
Artem Pavlenko
a5a5e74a11 affine transform -> symbolizer_base 2012-04-18 09:47:28 +01:00
Artem Pavlenko
294de4b95a + update to read "transform" attribute at symbolizer_base level 2012-04-18 09:46:19 +01:00
Artem Pavlenko
5361550e8d + add optional affine-transform converter 2012-04-18 09:45:11 +01:00
Artem Pavlenko
831538b522 move svg transform to symbolizer_base 2012-04-18 09:42:19 +01:00
Artem Pavlenko
9af11c5ef2 only allocate internal buffer if required 2012-04-18 09:37:02 +01:00
Dane Springmeyer
5767c65470 improve the map.query_point/query_map_point implementation, now throwing for invalid coords or projection transformations 2012-04-13 11:28:30 -07:00
Dane Springmeyer
c50c401aa4 make a non-existant marker file a MAPNIK_LOG_ERROR not MAPNIK_LOG_WARN so that the message shows up even if MAPNIK_LOG is off - refs #1175 2012-04-12 16:06:40 -07:00
Dane Springmeyer
44d7a38f23 work around perf issue with logging in wkb.cpp - refs #1175 2012-04-11 18:57:56 -07:00
Dane Springmeyer
19972fb87e improve svg error output if parsing fails 2012-04-11 11:45:56 -07:00
Dane Springmeyer
d64d2555e1 marker_cache: improve logging output 2012-04-11 11:28:09 -07:00
Dane Springmeyer
1941a700a4 add compile time warning if building against proj < 4.8 2012-04-11 08:23:41 -07:00
Dane Springmeyer
f5da52bb22 Merge branch 'master' of github.com:mapnik/mapnik 2012-04-11 08:06:47 -07:00
Dane Springmeyer
7cca1489b7 fix memory leak of pj_ctx if a projection cannot be initialized 2012-04-11 08:06:29 -07:00
Artem Pavlenko
76b95518c2 call xmlFree before throwing an exception 2012-04-11 14:44:19 +01:00
Artem Pavlenko
57d6d62440 + support 'display' property, if set to 'none' don't parse children #1137
+ fix memory leak : xmlTextReaderGetAttribute -> string must be deallocated by the caller
+ call xmlTextReaderMoveToElement after xmlTextReaderMoveToFirstAttribute loop to restore
  reader position.

Conflicts:

	src/svg_parser.cpp
2012-04-11 14:36:39 +01:00
Artem Pavlenko
bba21e3d9c + support 'display' property, if set to 'none' don't parse children #1137
+ fix memory leak : xmlTextReaderGetAttribute -> string must be deallocated by the caller
+ call xmlTextReaderMoveToElement after xmlTextReaderMoveToFirstAttribute loop to restore
  reader position.
2012-04-11 14:00:34 +01:00
Artem Pavlenko
7c0824f40b + read whole image at once if we have enough memory and x0==0 && y0==0
(adds support for Adam7 interlacing )
2012-04-10 15:51:30 +01:00
Artem Pavlenko
5758b47813 + read whole image at once if we have enough memory and x0==0 && y0==0
(adds support for Adam7 interlacing )
2012-04-10 15:47:29 +01:00
Artem Pavlenko
45b0dd6482 + support smooth conv in polygon_pattern_symbolizer 2012-04-10 15:46:38 +01:00
kunitoki
ee2674cda8 - force a file close to flush debug outputs when setting back logging from file to console 2012-04-10 16:46:11 +02:00
kunitoki
81c9dd7b6b - added the ability to set the default global severity from scons configure
- initial check in of setting global severity from getenv (todo)
2012-04-10 16:19:51 +02:00
kunitoki
1a203d3f85 - cleaned up logger interface to better integrate with python bindings
- polished and finished python bindings for logger interaction
2012-04-10 10:14:28 +02:00
kunitoki
fb94e4a2ec - replace all instances of std::cerr with MAPNIK_LOG_* 2012-04-10 00:51:04 +02:00
kunitoki
a902a08aab - added logging to file
- started working on the logger bindings
- cleanups some error reporting with cerr/clog in the library
2012-04-10 00:25:31 +02:00
kunitoki
efc823a372 Merge branch 'master' of github.com:mapnik/mapnik 2012-04-09 21:42:55 +02:00
kunitoki
b60c508c1c - finish thrashing all the useless ifdef MAPNIK_LOG 2012-04-09 21:41:56 +02:00
Artem Pavlenko
87ec80b819 + set SVG path visibility=false if display=none 2012-04-09 14:47:44 +01:00
Artem Pavlenko
6f7457f6b0 format 2012-04-09 14:46:03 +01:00
Artem Pavlenko
2fb00247eb remove unused headers 2012-04-09 12:34:09 +01:00
Artem Pavlenko
80a1178a08 + set SVG path visibility=false if display=none 2012-04-09 12:27:19 +01:00
Artem Pavlenko
c5a27d7398 + use vertex converters 2012-04-09 11:12:34 +01:00
kunitoki
74342e3083 - no need to #ifdef all the time: the compiler should optimize out the log calls when no MAPNIK_LOG is defined
- initially got rid of those ifdefs in plugins only
2012-04-09 12:05:49 +02:00
kunitoki
8c58a9aa73 - improved again the logging facilities
- aligned the plugins to using the new methods with severity
- implemented per object severity, with fallback to global (with global functions to set them programmatically)
- initial check in of logger python bindings (todo)
2012-04-09 03:00:51 +02:00
Artem Pavlenko
fdc80ad278 + use BOOST_FOREACH 2012-04-08 12:12:12 +01:00
Dane Springmeyer
65c3e9021c fix compile error if MAPNIK_LOG is not defined - refs #937 2012-04-07 20:15:48 -07:00
kunitoki
7b59fec405 Merge branch 'master' of github.com:mapnik/mapnik 2012-04-08 04:01:34 +02:00
kunitoki
4ef7343416 - added severity to logger (global variable for now)
- added a logger class for each severity level
2012-04-08 03:59:47 +02:00
kunitoki
09f3728db0 - fix a warning 2012-04-08 03:56:32 +02:00
Dane Springmeyer
0015a68e19 throw during zoom_all if a proj_init error is encountered 2012-04-07 17:56:18 -07:00
kunitoki
af201551b8 got rid of old CVS $Id comments kludge in files 2012-04-08 02:45:01 +02:00
kunitoki
1f351e0e09 implement new debug system 2012-04-08 02:20:56 +02:00
Dane Springmeyer
19f5f77417 reuse path_expression_grammar - finishes and closes #1028 2012-04-06 16:50:11 -07:00
Dane Springmeyer
98e470903c less lexical cast - refs #1055 2012-04-06 13:39:13 -07:00
Dane Springmeyer
e57eb47ba0 cast to const char 2012-04-06 13:05:59 -07:00
Dane Springmeyer
ab776edbf5 reduce string copying slightly in populate_tree - refs #1055 2012-04-06 12:58:08 -07:00
Dane Springmeyer
43d646c759 formatting 2012-04-06 11:42:36 -07:00
Artem Pavlenko
e513b4772d + use vertex_converters 2012-04-06 10:10:20 +01:00
Dane Springmeyer
7b84a2ce94 fix linking of postgis.input by using MAPNIK_DECL and ensuring the header is included in src/conversions.cpp - closes #1127 2012-04-05 16:59:36 -07:00
Artem Pavlenko
738ff501fe remove CompositingSymbolizer 2012-04-05 17:04:11 +01:00
Artem Pavlenko
34c984b2b8 + support compositing across all symbolizers
(currently polygon and line symbolizers)
2012-04-05 15:59:11 +01:00
Dane Springmeyer
4dbadaa7cd ensure proper reprojection of unbuffered bbox used for geometry clipping - closes #1138 2012-04-04 12:43:32 -07:00
Dane Springmeyer
d29ae14104 make it possible to set the map.maximum_extent back to None/uninitialized from python 2012-04-04 12:07:15 -07:00
Dane Springmeyer
8c41bdc040 remove unused variables 2012-04-04 10:30:37 -07:00
Dane Springmeyer
40e8ceca55 add missing set_color_to_alpha impl - TODO - add advanced algo that supports tolerance - refs #1018 2012-04-03 16:49:05 -07:00
Artem Pavlenko
e7f0e8aac0 + support configurable vertex converter 2012-04-03 19:49:57 +01:00
Artem Pavlenko
6236a63156 + make clip_poly converter optional (default: true) 2012-04-03 16:31:01 +01:00
Artem Pavlenko
347fce4db2 + add 'clip' property 2012-04-03 16:28:49 +01:00
Artem Pavlenko
cbcb8d6aad + use fusion::vector to pass arguments 2012-04-03 13:40:51 +01:00
Artem Pavlenko
81566a8f80 + use pre-multiplied pixel format in agg_renderer
(de-multiply in end_map_processing())
+ support for compositing at style level
+ image blur (TODO)
2012-04-03 13:10:30 +01:00
Artem Pavlenko
c9a83837a1 + add start/end style processing handlers 2012-04-03 13:09:08 +01:00
Dane Springmeyer
9d6c47844c use more robust transform method in map.zoom_all 2012-04-02 11:33:29 -07:00
Artem Pavlenko
8038561984 + move renderer to agg_helpers 2012-03-28 12:02:03 +01:00
Dane Springmeyer
2edaefd0d6 cairo: match AGG functionality, adding support for dynamic ellipse drawing and loading from svg icons - closes #1071 (refs #952 - this is stopgap until we refactor and merge with point_symbolizer) 2012-03-27 19:21:11 -04:00
Artem Pavlenko
9840c7df4c Merge branch 'master' into compositing
Conflicts:
	include/mapnik/util/dasharray_parser.hpp
	src/agg/process_line_symbolizer.cpp
	src/image_compositing.cpp
2012-03-26 09:05:02 +01:00
Dane Springmeyer
7c529600eb Revert "avoid mutex locks on pj_transform for proj 4.7 and above - closes #1072"
This reverts commit 0748d2beea.
2012-03-24 08:03:15 -07:00
Dane Springmeyer
3f26c439c9 fix marker width/height to mean pixels - which it should have all along - closes #1134 2012-03-23 20:28:12 -07:00
Dane Springmeyer
ea5a46f230 remove the storage and serialization of 'font-directory' and 'minimum-version' since there is no strong need to have them accessible after initial parsing 2012-03-23 18:14:14 -07:00
Dane Springmeyer
35cad0e049 port over bgra -> rgba compositing fix from compositing branch 2012-03-23 17:38:30 -07:00
Dane Springmeyer
586978f345 fix operator 2012-03-23 17:27:01 -07:00
Dane Springmeyer
3b498efbd9 fixup font registration code ensuring invalid fonts will warn but not throw and register_fonts will only return success if > one font is registered and none have failed 2012-03-23 15:07:28 -07:00
Dane Springmeyer
c88a725a7d Merge pull request #1143 from datendelphin/fontengine
fix invalid memory access in font engine
2012-03-23 11:14:18 -07:00
Datendelphin
30f59aac0c fix invalid memory access in font engine
acess of member face->num_faces after free()
fixed by making local copy num_faces before FT_Done_Face(face)
2012-03-23 17:33:35 +01:00
Artem Pavlenko
38fafc14bc + impl dasharray parser (supports 'none')
+ skip 0,0 dashes in load_map
2012-03-23 13:18:49 +00:00
Artem Pavlenko
d76136ba40 use mapnik::util namespace for conversions 2012-03-23 13:18:33 +00:00
Artem Pavlenko
b4e96c35b5 + impl dasharray parser (supports 'none')
+ skip 0,0 dashes in load_map
2012-03-23 11:58:07 +00:00
Artem Pavlenko
242385f16d use mapnik::util namespace for conversions 2012-03-23 11:08:39 +00:00
Artem Pavlenko
97eb078adb + re-use renderer (TODO) 2012-03-23 09:34:26 +00:00
Dane Springmeyer
caaa8b5392 disable stderr from svg parsing unless in debug mode 2012-03-22 16:41:44 -07:00
Dane Springmeyer
d991427737 formatting 2012-03-22 16:37:24 -07:00
Dane Springmeyer
d23a4b63b9 expose both a clipped and unclipped labeling path type 2012-03-22 16:36:25 -07:00
Dane Springmeyer
61c38d0ec7 avoid copying unbuffered bbox 2012-03-22 16:35:33 -07:00
Artem Pavlenko
f0b6fffcc9 Merge branch 'master' into compositing 2012-03-22 09:14:49 +00:00
Dane Springmeyer
40b0ab8d6c add missing #else 2012-03-21 17:45:19 -07:00
Dane Springmeyer
d55ad5a4d2 check which cairo surfaces are supported 2012-03-21 15:34:59 -07:00
Artem Pavlenko
bc2589960b + add missing files 2012-03-21 17:34:41 +00:00
Artem Pavlenko
05600f64cc Merge branch 'master' into compositing 2012-03-21 15:50:04 +00:00
Artem Pavlenko
95cfb061af + experimental compositing symbolizer (fill only) 2012-03-21 15:47:33 +00:00
Artem Pavlenko
aefa23fb5b + boost::bimap based enum<->string lookup table
+ fix pixel_format bgra -> rgba
2012-03-21 15:45:23 +00:00
Artem Pavlenko
f78305428a + remove duplicate typedef's 2012-03-21 10:52:03 +00:00
Artem Pavlenko
4aaae73e51 use SFINAE to check for process(xxx_symbolizer,..) in derived classes
avoid writing dummy process(...) methods
2012-03-21 09:29:37 +00:00
Dane Springmeyer
9c2b3d7144 Merge branch 'master' of github.com:mapnik/mapnik 2012-03-20 23:24:45 -07:00
Dane Springmeyer
3f06747407 braces for readibility 2012-03-20 16:40:07 -07:00
Hermann Kraus
da5ac781a7 Remove old comment. 2012-03-20 23:56:35 +01:00
Hermann Kraus
8b5e5fbb64 Always place text at the same side of a line.
Fixes #608.
2012-03-20 23:50:20 +01:00
Dane Springmeyer
89877edc67 move image_compositing to cpp file 2012-03-19 15:42:44 -07:00
Dane Springmeyer
4843572e1b move image_compositing to cpp file 2012-03-19 15:42:30 -07:00
Hermann Kraus
9b62a19cf4 Implement justify-alignment=auto.
Closes #1125.
2012-03-19 17:12:53 +01:00
novldp
0ecd5bae45 +add MarkersSymbolizer ignore-placement to save_map and python bindings 2012-03-18 23:30:37 +01:00
ldp
1542e3e513 add ignore-placement to MarkersSymbolizer 2012-03-18 22:35:02 +01:00
Hermann Kraus
725248628d C++ style. 2012-03-16 01:50:55 +01:00
Hermann Kraus
1b85f42a88 Reapply RTL patch.
Fixes #189.
2012-03-16 01:01:12 +01:00
Artem Pavlenko
c95959c549 + re-use cairo_context 2012-03-15 11:29:57 +00:00
Artem Pavlenko
66beaaa05b + support smoothing in conv_dash 2012-03-15 10:42:30 +00:00
Artem Pavlenko
70512dc03b + add optional smothing to line_symbolizer
( TODO: conv_dash )
2012-03-15 10:26:53 +00:00
Dane Springmeyer
926404d9ae properly format abi versions in a few more placesa 2012-03-15 02:03:33 +00:00
Dane Springmeyer
2abe02bd96 make available MAPNIK_VERSION_STRING in c++ header (not just in python) and add MAPNIK_VERSION_IS_RELEASE define that indicates if the code is released 2012-03-14 18:30:32 -07:00
Artem Pavlenko
f0bc1064c6 + supprt polygon smoothing in cairo backend 2012-03-14 17:38:27 +00:00
Artem Pavlenko
3e4733c51a + refactor join/cap settings (agg_helper.hpp) 2012-03-14 17:21:04 +00:00
Artem Pavlenko
959a989f52 Merge remote-tracking branch 'origin/master' 2012-03-14 16:51:49 +00:00
Artem Pavlenko
f1a0887628 + apply smooth converter after clipping and transformations
+ inflate query_extent
2012-03-14 16:12:36 +00:00
Dane Springmeyer
8451e8897d Merge branch 'master' of github.com:mapnik/mapnik 2012-03-14 08:57:13 -07:00
Dane Springmeyer
81ab02cc72 fix failing test 'bgcolor_broken.xml' when compiled against boost 1.42 2012-03-14 08:56:59 -07:00
Artem Pavlenko
108b99725c + refactor gamma setting logic to avoid code duplication
( agg_helpers.hpp )
2012-03-14 15:45:35 +00:00
Artem Pavlenko
87b22c29b2 + add optional polygon smoothing ( 0.0 < smooth < 1.0 )
using agg_conv_poly1_curve
2012-03-14 15:01:31 +00:00
Dane Springmeyer
5601731a89 fix macro in conversions.cpp 2012-03-13 08:05:26 -07:00
Dane Springmeyer
76e108ff9d remove uneeded shared_ptr copy 2012-03-13 07:58:38 -07:00
Dane Springmeyer
93995d7c4b apply mapnik_format.el formatting 2012-03-13 07:56:11 -07:00
Hermann Kraus
2b68cea0a1 Merge branch 'new-xml'
Conflicts:
	include/mapnik/config_error.hpp
	include/mapnik/ptree_helpers.hpp
	src/formatting/text.cpp
	src/libxml2_loader.cpp
	src/load_map.cpp
	src/metawriter_factory.cpp
	src/text_placements/registry.cpp
	src/text_placements/simple.cpp
2012-03-13 11:11:28 +01:00
Hermann Kraus
150de2aac5 Add rapidxml parser. 2012-03-13 09:02:53 +01:00
Dane Springmeyer
fb6bf401e9 avoid constructing extra temp object 2012-03-12 13:22:07 -07:00
Artem Pavlenko
207ecfd597 remove camel-case names from layer.[h,c]pp 2012-03-12 15:39:59 +00:00
Artem Pavlenko
5ec3fb1121 avoid constructing extra temp object 2012-03-12 13:07:36 +00:00
Hermann Kraus
f25a2231ff Warn about unused XML elements. 2012-03-12 02:12:58 +01:00
Hermann Kraus
02d8a98b3f Improve error messages. 2012-03-12 01:09:26 +01:00
Hermann Kraus
502773bea6 Only one grammar object per XML tree. 2012-03-11 23:24:28 +01:00
Dane Springmeyer
a6f89883d7 moar boost::make_shared 2012-03-09 16:20:50 -08:00
Dane Springmeyer
ddd3956f0e expose a clear method for the marker_cache and mapped_memory_cache - closes #1022 2012-03-09 15:16:01 -08:00
Dane Springmeyer
71333373cc use boost::make_shared to create new face_ptr 2012-03-09 15:15:04 -08:00
Artem Pavlenko
254b3c9fa7 Merge branch 'master' into geometry-clipping
Conflicts:
	SConstruct
	include/mapnik/symbolizer_helpers.hpp
	src/placement_finder.cpp
2012-03-09 14:18:41 +00:00
Artem Pavlenko
5ce18715c3 + update cairo_renderer to use clipped paths 2012-03-09 13:40:18 +00:00
Artem Pavlenko
61113d7b4e + add clipping to text/shield/markers
Conflicts:

	include/mapnik/symbolizer_helpers.hpp
2012-03-09 13:37:53 +00:00
Artem Pavlenko
a763d03110 resolve conflict 2012-03-09 13:33:16 +00:00
Artem Pavlenko
514ec14cc9 + add clipping to polygon/line_pattern_syms 2012-03-09 12:57:14 +00:00
Artem Pavlenko
d8d5298f4e + update cairo_renderer to use clipped paths 2012-03-09 12:56:54 +00:00
Dane Springmeyer
b67af5cadb avoid combining default arg with const& 2012-03-09 12:55:41 +00:00
Artem Pavlenko
13ea874585 + inflate query extent to avoid line joining artifacts 2012-03-09 12:55:22 +00:00
Artem Pavlenko
11511e9b20 + cleanup 2012-03-09 12:55:03 +00:00
Artem Pavlenko
40b9553722 + add clipping to text/shield/markers
Conflicts:

	include/mapnik/symbolizer_helpers.hpp
2012-03-09 12:54:13 +00:00
Artem Pavlenko
c12161bf19 + clip geometries before applying any
transformations.
2012-03-09 12:44:29 +00:00
Dane Springmeyer
86ac497584 minor formatting
Conflicts:

	src/placement_finder.cpp
2012-03-09 12:42:08 +00:00
Hermann Kraus
b71460d4dd Don't return pointer to dead object. 2012-03-09 13:26:11 +01:00
Dane Springmeyer
c5c0f92247 save the maps in the right place for visual tests 2012-03-08 17:04:51 -08:00
Dane Springmeyer
5f4734ebe0 fix other potential division by zero conditions - closes #1110 2012-03-08 17:02:58 -08:00
Hermann Kraus
cd8cfc6527 Improve error messages. 2012-03-08 18:52:53 +01:00
Dane Springmeyer
f1aee03912 forward declare marker so marker_cache api access is cleaner 2012-03-08 08:37:58 -08:00
Hermann Kraus
adc8f9df1b Fix PointSymbolizer problem. 2012-03-08 13:00:40 +01:00
Hermann Kraus
2a7709a0cf Dump xml tree. 2012-03-08 01:29:19 +01:00
Hermann Kraus
c3cd50ff57 Complete new XML structure. 2012-03-07 19:16:41 +01:00
Dane Springmeyer
adfa73f64a avoid combining default arg with const& 2012-03-07 08:54:04 -08:00
Hermann Kraus
daf30ca0d1 Update metawriter_factory.hpp 2012-03-07 15:26:13 +01:00
Hermann Kraus
9a05dc1828 Add XML functions. 2012-03-07 03:57:31 +01:00
Hermann Kraus
f214675c69 Modify all other files for new XML structure. 2012-03-07 02:23:16 +01:00
Hermann Kraus
7d3fd0755d Complete XML changes in load_map.cpp 2012-03-07 01:35:37 +01:00
Hermann Kraus
7a052f81f7 Update more functions. 2012-03-06 18:17:23 +01:00
Hermann Kraus
ac50834d92 Convert parse_map_include to xml_node. 2012-03-06 15:47:08 +01:00
Hermann Kraus
191d0f907a Convert first function to new XML structure. 2012-03-06 15:18:11 +01:00
Dane Springmeyer
1c6da3893e minor formatting 2012-03-05 18:00:45 -08:00
Dane Springmeyer
df54f710bc minor formatting 2012-03-05 18:00:15 -08:00
Dane Springmeyer
943f92fffc initialize another member in text_properties 2012-03-05 14:54:30 -08:00
Dane Springmeyer
3dafe6080d rework text_path ctor to ensure members are properly initialized - refs #1114 2012-03-05 14:15:01 -08:00
Dane Springmeyer
f3c4f9eec7 initialize members of text_symbolizer_properties and char_properties - refs #1114 2012-03-05 13:48:35 -08:00
Dane Springmeyer
7dfc6d9ccd pass doubles by value in find_line_circle_intersection 2012-03-05 11:50:20 -08:00
Dane Springmeyer
84c9ee653a no need to pass orientation as const& to test_placement, which unlike get_placement_offset to does not change the value 2012-03-05 11:36:48 -08:00
Dane Springmeyer
50a417fc83 formatting 2012-03-05 11:31:58 -08:00
Dane Springmeyer
f90b410ece formatting to use const& as per 6462af3 2012-03-05 11:10:04 -08:00
Dane Springmeyer
232256e136 load_map_string: do not pass optional arg by const& and better error if string is empty 2012-03-05 10:44:20 -08:00
Hermann Kraus
481271cb76 Add new XML data structure and modify XML parser to work with this structure. 2012-03-05 16:49:54 +01:00
Hermann Kraus
ad86e9aebc Reenable text meta writers. 2012-03-04 23:25:13 +01:00
Hermann Kraus
5578bdb6f9 Remove has_dimensions and dimensions from text_placement_info.
This functionality is better provided by placement_finder.additional_boxes.
2012-03-04 16:38:40 +01:00
Hermann Kraus
46272d836b Move more variables from text_placements_info to placement_finder.
Refs #1048.
2012-03-04 13:32:10 +01:00
Hermann Kraus
4638b28c36 Store pointer to char_info in text_path instead of pointer to char_properties. 2012-03-04 03:53:39 +01:00
Hermann Kraus
b4eddaab24 Move variables from text_placements_info to placement_finder.
Reuse placement_finder objects.
Pass feature to placement_finder.
Refs #1048.
2012-03-04 01:49:01 +01:00
Hermann Kraus
36918e4a8b Remove warning. Empty expressions might exist in real applications without being an error. 2012-03-03 17:41:43 +01:00
Hermann Kraus
f8c784b0a6 Correctly center text. 2012-03-03 13:53:08 +01:00
Dane Springmeyer
7163806cda c++ style 2012-03-02 18:51:19 -08:00
Hermann Kraus
2bf9d9dbdf Fix handling of empty XML nodes.
Closes #1106.
2012-03-03 01:12:23 +01:00
Hermann Kraus
cc547385e6 Avoid adding the same text to detector twice. 2012-03-02 12:39:38 +01:00
Artem Pavlenko
726724b3c7 pass by ref
move conversions impl into .cpp
2012-03-01 18:36:13 +00:00
Hermann Kraus
9e397ae55e Add iterator increment which I forgot in 96d8dfb356. 2012-02-28 02:05:44 +01:00
Hermann Kraus
df4eae2f71 Merge branch 'master' of github.com:mapnik/mapnik
Conflicts:
	src/symbolizer_helpers.cpp
2012-02-28 01:48:26 +01:00
Hermann Kraus
66ef7a450a Add marker to collision detector.
Refs #1106.
2012-02-28 01:47:24 +01:00
Dane Springmeyer
82bd78d9a5 use boost::make_shared instead of new as per mapnik coding conventions 2012-02-27 16:39:34 -08:00
Dane Springmeyer
a5d7239cfc fix minor spelling in code comments 2012-02-27 16:15:36 -08:00
Hermann Kraus
96d8dfb356 Improve code a bit.
size() can be O(n) but empty() is always O(1).
2012-02-28 00:52:02 +01:00
Dane Springmeyer
1ed193728d add missing update_detector() - refs #1106 2012-02-27 15:15:27 -08:00
Dane Springmeyer
2f134657b4 speed up xml loading by avoiding repeated grammar creation - refs #1028 (TODO - still need to handle text/shield expressions) 2012-02-24 16:34:39 -08:00
Hermann Kraus
1906cddf04 Improve error messages. 2012-02-25 00:57:05 +01:00
Dane Springmeyer
a917b7b410 fix the ability of external libraries to link mapnik on windows 2012-02-24 11:32:16 -08:00
Artem Pavlenko
917e684bdd dummy decrement() and advance(p) to compile with vc10 (untested) 2012-02-24 18:07:13 +00:00
Hermann Kraus
99a3c9fec9 Remove multiple consecutive empty <xmltext> nodes. 2012-02-24 12:37:23 +01:00
Dane Springmeyer
6db1ba176b fix compile on windows by including round() from global.hpp 2012-02-23 11:46:53 -08:00
Hermann Kraus
2955983264 Fix #1095. 2012-02-23 18:10:50 +01:00
Dane Springmeyer
56aeae1b52 fix broken python linking after 6a0ce99e22 2012-02-22 16:45:02 -08:00
Dane Springmeyer
4a192c319b ensure mean_sort_cmp adheres to strict weak ordering requirement - more properly fixes #1087 2012-02-22 14:54:10 -08:00
Dane Springmeyer
f17031084c use new conversions header - refs #1055 2012-02-21 10:59:11 -08:00
Dane Springmeyer
8568c62e8e Merge branch 'master' of github.com:mapnik/mapnik 2012-02-20 22:54:09 -08:00
Dane Springmeyer
9213dd5426 fixup multi-symbolizer processing function 2012-02-20 22:53:54 -08:00
Dane Springmeyer
6a0ce99e22 maintain compile with boost <= 1.47 2012-02-20 17:09:14 -08:00
Hermann Kraus
a05faceb11 Fix ShieldSymbolizer line placement.
Refs #1078, https://github.com/MapQuest/MapQuest-Mapnik-Style/issues/8.
2012-02-21 00:06:54 +01:00
Hermann Kraus
46f80cc6aa Use double instead of int and avoid rounding when possible.
Closes #1078.
2012-02-20 19:32:34 +01:00
Artem Pavlenko
6f5d16bfe3 + make feature_collection_parser a template so we can
instantiate with different iterator types
  e.g std::string::const_iterator and
  boost::spirit::multi_pass<std::istreambuf_iterator<char> >
2012-02-20 16:23:31 +00:00
Artem Pavlenko
6e498ad062 + update to use new names
+ add geometry_generator
2012-02-20 12:03:56 +00:00
Artem Pavlenko
3953a94636 + geojson generator interface 2012-02-20 10:53:58 +00:00
Hermann Kraus
2ea6ab216c Fix text height calculation.
Closes #1078.
2012-02-18 16:43:05 +01:00
Hermann Kraus
6efdb3969e Handle text position differently.
Should fix part of the ShieldSymbolizer problems.
Refs #1078.
2012-02-18 14:39:13 +01:00
Hermann Kraus
2843ff3da8 Fix placement_finder.hpp includes. 2012-02-18 14:03:21 +01:00
Hermann Kraus
bb3ad18c95 Rename starting_{x,y} to center to reflect actual meaning. 2012-02-18 13:07:23 +01:00
Hermann Kraus
980cdd9e92 Use text_placements registry. 2012-02-18 00:39:14 +01:00
Hermann Kraus
6db956ca83 Split file. 2012-02-17 20:53:00 +01:00
Hermann Kraus
481e172b8e Add placement registry. 2012-02-17 20:15:16 +01:00
Hermann Kraus
2c6502e791 Merge branch 'master' of github.com:mapnik/mapnik 2012-02-17 19:52:38 +01:00
Hermann Kraus
7c98b8c9c0 Add XML name registry.
Allows users to add new types to XML styles.
2012-02-17 19:45:13 +01:00
Hermann Kraus
f06bda1c1c Split file. 2012-02-17 15:50:24 +01:00
Artem Pavlenko
b5bc17304c Merge remote-tracking branch 'origin/master' 2012-02-17 10:48:49 +00:00
Artem Pavlenko
c6a091937f + add get_optional to mapnik::feature_impl
returns -> boost::optional<mapnik::value const&>
+ use get_optional in feature_kv_iterator to avoid
  throwing exceptions
2012-02-17 10:46:29 +00:00
Hermann Kraus
7b22d69932 Revert "+ fix shield/text positioning - we still need to floor both text and shield"
floor is removed from position calculation now, resulting in better marker and text matching.
Refs #1078.

This reverts commit 009a1e45a7.
2012-02-17 00:59:20 +01:00
Hermann Kraus
465a7621bc Merge pull request #1091 from kkaefer/character-spacing
Support character-spacing along a line.
Closes #721.
2012-02-16 15:08:56 -08:00
Hermann Kraus
44beaf1bdf Make ShieldSymbolizer variables doubles.
Refs #1078.
2012-02-17 00:03:46 +01:00
Konstantin Käfer
9ad113d724 naïvely replace ci.width with ci.width + ci.format->character_spacing 2012-02-16 23:46:44 +01:00
Artem Pavlenko
63735982ee + remove const from parameters passed by-value 2012-02-16 15:35:27 +00:00
Artem Pavlenko
ab56a63f2f Merge remote-tracking branch 'origin/master' 2012-02-15 23:31:38 +00:00
Artem Pavlenko
009a1e45a7 + fix shield/text positioning - we still need to floor both text and shield
position for consistent rendering.
2012-02-15 23:27:33 +00:00
Hermann Kraus
819ee98041 Rename properties=>defauls, default_format=>format. 2012-02-16 00:17:22 +01:00
Hermann Kraus
4602338e0c Add ExpressionFormat: Allow changing text format based on expressions.
Closes #1036.
Refs #1048.
2012-02-15 21:38:24 +01:00
Artem Pavlenko
c83ab1d14e Merge remote-tracking branch 'origin/master' 2012-02-15 19:20:17 +00:00
Hermann Kraus
a2c2ad40e2 Make markers_placement a bit simpler and add sanity checks.
refs #974.
2012-02-15 20:06:50 +01:00
Artem Pavlenko
01497bfc36 + add typedef size_type to mapnik::vertex_vector
+ remove set_capacity() method - no longer required
2012-02-15 15:16:33 +00:00
Artem Pavlenko
6495ea8996 + clip polygons 2012-02-14 18:39:36 +00:00
Artem Pavlenko
58b51b208e use standard_wide::space 2012-02-14 18:33:05 +00:00
Hermann Kraus
be464f0c5b Move code for makers placement from hpp to cpp. 2012-02-13 20:20:09 +01:00
Dane Springmeyer
e2385178f4 install new headers fixing broken node-mapnik compile: https://github.com/mapnik/node-mapnik/issues/85 - refs #1079 2012-02-12 20:53:48 -08:00
Hermann Kraus
1fd7f9d543 Fix spelling error. 2012-02-12 22:48:44 +01:00
Hermann Kraus
afb2eedbb9 Merge branch 'textplacement-rename' 2012-02-12 14:03:57 +01:00
Hermann Kraus
52702d3a20 Rename filter_factory to expression. 2012-02-12 13:06:39 +01:00
Hermann Kraus
57b835419b Fix font-set handling for ShieldSymbolizer. Closes #1077.
Was the same problem as #1064.
2012-02-12 11:39:39 +01:00
Hermann Kraus
69f153bf8f Fix all includes. 2012-02-12 03:55:13 +01:00
Hermann Kraus
fbe929810b Fix most includes. 2012-02-12 02:47:26 +01:00
Hermann Kraus
7ef1c3544e Bugfix: Collect expressions for formating::format_node. 2012-02-11 11:24:33 +01:00
Dane Springmeyer
0acd2137b8 restore agg renderer clip_box, accidentally disabled in 21d05444 - refs #1075 2012-02-10 15:14:15 -08:00
Dane Springmeyer
75e264a594 only form up ostringstream if needed 2012-02-10 12:15:23 -08:00
Dane Springmeyer
bfd79276a7 only encode if image has dimensions (avoid abort in png writer on zero size width or height) 2012-02-10 12:14:53 -08:00
Dane Springmeyer
a682212266 small optimization by avoiding repeated case sensitive checks 2012-02-10 11:20:00 -08:00
Dane Springmeyer
32ac2e464c restore compile for boost 1.42 2012-02-10 10:20:26 -08:00
Artem Pavlenko
6a015dcd59 Merge remote-tracking branch 'origin/master' 2012-02-10 11:59:12 +00:00
Artem Pavlenko
602264d368 + implement 'in situ' boost::spirit::qi based geojson parser 2012-02-10 11:56:53 +00:00
Dane Springmeyer
0748d2beea avoid mutex locks on pj_transform for proj 4.7 and above - closes #1072 2012-02-09 17:28:31 -08:00
Dane Springmeyer
656436d971 Merge branch 'master' of github.com:mapnik/mapnik 2012-02-08 15:45:31 -08:00
Dane Springmeyer
fec0750fcf remove usage of boost::lexical_cast during image encoding - refs #1055 2012-02-08 15:45:08 -08:00
Hermann Kraus
1d50aa1b85 Make interface consistent with similar classes. 2012-02-08 01:16:37 +01:00
Dane Springmeyer
8e61d9a6d2 remove used typedefs 2012-02-07 13:42:45 -08:00
Dane Springmeyer
a00af6faf8 fix debug output name 2012-02-07 13:42:22 -08:00
Artem Pavlenko
958097600c add wkt_parser class for grammar re-usage
implement from_wkt in terms of wkt_parser
2012-02-06 22:49:47 +00:00
Hermann Kraus
18d24983b6 Fix font-name checking when font-set is available. Fixes #1064. 2012-02-06 11:47:35 +01:00
Hermann Kraus
e298d141da Improve expression handling. 2012-02-05 03:11:00 +01:00
Hermann Kraus
9c92bf713d Easier syntax by hiding internal data type. 2012-02-03 00:34:14 +01:00
Dane Springmeyer
17d13cff67 whitespace fixes - closes #911 2012-02-01 17:53:35 -08:00
Dane Springmeyer
21d05444f7 manual whitespace fix 2012-02-01 17:48:56 -08:00
Dane Springmeyer
07d7d7d537 convert to using feature_ptr rather than const& for renderers 2012-02-01 16:37:05 -08:00
Dane Springmeyer
cf8e036574 warn if non bitmap (svg) files are used for pattern symbolizers as this is not currently supported - refs #1010 and #1045 2012-02-01 12:27:57 -08:00
Hermann Kraus
30bef5c955 Fast math.
@de94a3e: Yes, we need them. :-)
2012-02-01 12:49:16 +01:00
Artem Pavlenko
de94a3e82f comment out unused variables 2012-01-31 18:01:19 +00:00
Hermann Kraus
cc886d1688 Merge branch 'feature-text-merge' 2012-01-31 16:52:28 +01:00
Hermann Kraus
06ce3f7eec Merge remote-tracking branch 'herm/textplacement-merge' 2012-01-31 16:37:37 +01:00
Hermann Kraus
72f061b75a Revert 0c5fc9f246.
For new text placment branch a different solution is needed.
2012-01-31 16:36:40 +01:00
Hermann Kraus
1a16e9c5ab Remove class text_processor. 2012-01-31 16:24:58 +01:00
Artem Pavlenko
a395f974f3 small fix 2012-01-31 12:00:36 +00:00
Artem Pavlenko
e00e8f98aa if geometries are polygons, default to 'largest_box' only
for label placement.
TODO: expose settings in XML
2012-01-31 11:52:43 +00:00
Artem Pavlenko
b90de4874c Merge branch 'textplacement-merge' into feature-text-merge
Conflicts:
	docs/textrendering.gv
	include/mapnik/building_symbolizer.hpp
	include/mapnik/placement_finder.hpp
	include/mapnik/symbolizer_helpers.hpp
	include/mapnik/text_placements.hpp
	include/mapnik/text_placements_list.hpp
	include/mapnik/text_placements_simple.hpp
	include/mapnik/text_processing.hpp
	plugins/input/shape/shape_utils.hpp
	src/agg/process_shield_symbolizer.cpp
	src/agg/process_text_symbolizer.cpp
	src/cairo_renderer.cpp
	src/grid/process_shield_symbolizer.cpp
	src/grid/process_text_symbolizer.cpp
	src/load_map.cpp
	src/placement_finder.cpp
	src/shield_symbolizer.cpp
	src/text_placements.cpp
	src/text_processing.cpp
	src/text_symbolizer.cpp
	tests/visual_tests/clean.sh
	tests/visual_tests/test.py

Merge herm/textplacement-merge
2012-01-31 11:09:55 +00:00
Hermann Kraus
49225d7468 Handle additional boxes from ShieldSymbolizer. 2012-01-29 20:28:32 +01:00
Hermann Kraus
16e5fefb4d Remove text_placement_info::initialize() to avoid incorrect usage of this object. 2012-01-29 20:04:31 +01:00
Hermann Kraus
49a3b3c52c Make code easier to read by using std::pair instead of boost::tuple for position. 2012-01-29 17:33:43 +01:00
Hermann Kraus
822786e41c Remove no-text attribute. One can simply leave the text empty if one wants this. 2012-01-29 13:10:14 +01:00
Hermann Kraus
4a3a3fd82c ShieldSymbolizer for Cairo. 2012-01-29 05:03:38 +01:00
Hermann Kraus
3e59503e25 ShieldSymbolizer for Grid renderer. 2012-01-29 04:57:56 +01:00
Hermann Kraus
09459683e9 Update symbolizer helpers for ShieldSymbolizer.
Correctly handle point placement for TextSymbolizer. (Tries each possible placement for each point).
2012-01-29 04:49:02 +01:00
Hermann Kraus
a3871e52b7 Rename set_values_from_xml to from_xml. 2012-01-28 17:13:41 +01:00
Hermann Kraus
ff07b4bce0 placement_element => text_path 2012-01-28 00:09:58 +01:00
Hermann Kraus
d6b8209a9d Rewrote text processing to use a tree structure.
Reduces the number of classes and simplifies extension.
2012-01-27 23:15:12 +01:00
Artem Pavlenko
84b948687d Merge branch 'master' into feature-text-merge 2012-01-27 13:27:27 +00:00
Artem Pavlenko
fc7e07137d removing as it doesn't belong in here. 2012-01-27 13:23:15 +00:00
Hermann Kraus
dbc1280731 Process more than one geometry.
Start work on ShieldSymbolizer.
2012-01-26 20:05:38 +01:00
Artem Pavlenko
5ebdd84940 format 2012-01-26 16:24:48 +00:00
Artem Pavlenko
5c6fdc780f return member variable by const reference 2012-01-26 13:07:28 +00:00
Artem Pavlenko
36a23367a6 + fix compilation issues 2012-01-26 13:05:41 +00:00
Artem Pavlenko
d1f16bb227 merge textplacement-merge into feature_impl 2012-01-26 13:04:08 +00:00
Hermann Kraus
1106dcb445 Support for cairo + grid renderer. 2012-01-25 16:17:38 +01:00
Hermann Kraus
bdc20f766b Complete symbolizer_helpers.hpp for TextSymbolizer. 2012-01-25 15:44:19 +01:00
Artem Pavlenko
d146bcc380 Merge branch 'master' into feature_impl 2012-01-25 10:04:03 +00:00
Tony Young
d0d692cb82 Add text placements to Python API. 2012-01-25 12:57:26 +13:00
Hermann Kraus
3b887972b8 Start work on new symbolizer helpers. 2012-01-23 19:02:35 +01:00
Artem Pavlenko
4b22636f3b initial implementation of multipolygon labeling strategy
based on ordering by bounding box.

TODO : sync with https://github.com/herm/mapnik/tree/textplacement
2012-01-23 16:00:55 +00:00
Hermann Kraus
2eb3662d87 Add all files to build.py. 2012-01-23 00:20:15 +01:00
Hermann Kraus
1549fd92c3 Float font sizes. 2012-01-22 21:19:35 +01:00
Hermann Kraus
31fd5647f2 Use font manager and char properties in text engine. 2012-01-22 20:51:09 +01:00
Hermann Kraus
fb0c9d6d9c Fix text_placements.cpp. 2012-01-22 20:04:13 +01:00
Hermann Kraus
b945dff774 Fix metawriters. 2012-01-22 19:57:32 +01:00
Hermann Kraus
02eca0825f Fix set_displacement(). 2012-01-22 19:17:59 +01:00
Hermann Kraus
581d35987e Disable ShieldSymbolizer in cairo_renderer.cpp (see fdd58903f9). 2012-01-22 18:47:23 +01:00
Hermann Kraus
9d2a6088b1 New placement finder. 2012-01-22 18:41:04 +01:00
Hermann Kraus
78c4464ad7 Remove next_position_only(). 2012-01-22 18:29:55 +01:00
Hermann Kraus
fdd58903f9 Disable rendering of TextSymbolizer and ShieldSymbolizer.
This avoids breaking compiles with the next changes.
2012-01-22 18:24:28 +01:00
Hermann Kraus
e66712d722 Update font engine. 2012-01-22 18:13:08 +01:00
Hermann Kraus
67eb73eab9 Return correct size information from font engine. 2012-01-22 17:53:45 +01:00
Hermann Kraus
2f02e2f4c5 Update text symbolizer to use new locations. 2012-01-22 17:27:52 +01:00
Hermann Kraus
4490e1afaf Add missing get_positions() function. 2012-01-22 16:25:19 +01:00