Commit graph

1891 commits

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