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