Commit graph

1822 commits

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