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
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
b4e96c35b5
+ impl dasharray parser (supports 'none')
...
+ skip 0,0 dashes in load_map
2012-03-23 11:58:07 +00:00
Dane Springmeyer
d991427737
formatting
2012-03-22 16:37:24 -07:00
Artem Pavlenko
f0b6fffcc9
Merge branch 'master' into compositing
2012-03-22 09:14:49 +00:00
Artem Pavlenko
95cfb061af
+ experimental compositing symbolizer (fill only)
2012-03-21 15:47:33 +00:00
Dane Springmeyer
3f06747407
braces for readibility
2012-03-20 16:40:07 -07: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
Artem Pavlenko
70512dc03b
+ add optional smothing to line_symbolizer
...
( TODO: conv_dash )
2012-03-15 10:26:53 +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
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
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
Hermann Kraus
cd8cfc6527
Improve error messages.
2012-03-08 18:52:53 +01: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
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
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
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
2bf9d9dbdf
Fix handling of empty XML nodes.
...
Closes #1106 .
2012-03-03 01:12:23 +01:00
Dane Springmeyer
2f134657b4
speed up xml loading by avoiding repeated grammar creation - refs #1028 (TODO - still need to handle text/shield expressions)
2012-02-24 16:34:39 -08:00
Hermann Kraus
99a3c9fec9
Remove multiple consecutive empty <xmltext> nodes.
2012-02-24 12:37:23 +01:00
Hermann Kraus
2955983264
Fix #1095 .
2012-02-23 18:10:50 +01:00
Hermann Kraus
980cdd9e92
Use text_placements registry.
2012-02-18 00:39:14 +01:00
Hermann Kraus
819ee98041
Rename properties=>defauls, default_format=>format.
2012-02-16 00:17:22 +01:00
Hermann Kraus
afb2eedbb9
Merge branch 'textplacement-rename'
2012-02-12 14:03:57 +01:00
Hermann Kraus
52702d3a20
Rename filter_factory to expression.
2012-02-12 13:06:39 +01:00
Hermann Kraus
57b835419b
Fix font-set handling for ShieldSymbolizer. Closes #1077 .
...
Was the same problem as #1064 .
2012-02-12 11:39:39 +01:00
Hermann Kraus
69f153bf8f
Fix all includes.
2012-02-12 03:55:13 +01:00
Hermann Kraus
fbe929810b
Fix most includes.
2012-02-12 02:47:26 +01:00
Hermann Kraus
18d24983b6
Fix font-name checking when font-set is available. Fixes #1064 .
2012-02-06 11:47:35 +01:00
Dane Springmeyer
17d13cff67
whitespace fixes - closes #911
2012-02-01 17:53:35 -08:00
Hermann Kraus
1a16e9c5ab
Remove class text_processor.
2012-01-31 16:24:58 +01:00
Hermann Kraus
09459683e9
Update symbolizer helpers for ShieldSymbolizer.
...
Correctly handle point placement for TextSymbolizer. (Tries each possible placement for each point).
2012-01-29 04:49:02 +01:00
Hermann Kraus
a3871e52b7
Rename set_values_from_xml to from_xml.
2012-01-28 17:13:41 +01:00
Hermann Kraus
6ce55a0e94
Update parse_shield_symbolizer().
2012-01-22 04:21:01 +01:00
Hermann Kraus
8244cd0a05
Add code using new functions in parse_text_symbolizer().
2012-01-22 03:56:00 +01:00
Hermann Kraus
06ec0c377b
Remove code using old functions in parse_text_symbolizer().
2012-01-22 03:53:05 +01:00
Hermann Kraus
a9ca2f0c40
Add list placement support to load_map.
2012-01-22 03:39:59 +01:00
Hermann Kraus
533b95f0e6
Enable XML parser to return multiple <xmltext> nodes.
2012-01-21 00:02:44 +01:00
Hermann Kraus
537231f60e
Remove glyph symbolizer.
2012-01-19 20:34:09 +01:00
Artem Pavlenko
ab314b44a4
+ use mapnik::gamma_method_e for all symbolizers
...
+ fixes #1042 : avoid pushin duplcaite name into boost.python registry
2012-01-19 12:45:24 -05:00
Cezary Tarnowski
93ff232ca2
#1023 making gamma power default, making gamma-method awailable for polygon pattern symolizer and stroke
2012-01-13 18:20:03 +01:00
Cezary Tarnowski
e7a751987d
Merge remote-tracking branch 'upstream/master'
2012-01-13 14:49:59 +01:00
Cezary Tarnowski
c007a608ff
Adding gamma-method to polygon symbolizer
2012-01-12 16:58:10 +01:00
Dane Springmeyer
0f0e04e6dc
fixup fontset error reporting - a likely problem in mapnik2 upgrade - closes #596
2011-12-20 12:31:38 -08:00
Artem Pavlenko
726cea7ba4
Merge branch 'master' into geometry_cleanup
2011-12-14 14:04:30 +00:00
Artem Pavlenko
fad6c614e8
remove title, abstract data members from mapnik::rule
2011-12-13 16:47:45 +00:00
Artem Pavlenko
bf9dd32e2c
remove title,abstract members from layer class
2011-12-13 16:34:10 +00:00
Cezary Tarnowski
85a55d9fa2
Merge branch 'master' of https://github.com/mapnik/mapnik
2011-12-12 11:29:00 +01:00
Cezary Tarnowski
8bf359451d
Adding support for height as expression for building symbolizer
2011-12-09 12:08:50 +01:00
Konstantin Käfer
ac8b4c6d2d
Merge branch 'master' into grouped-rendering
...
Conflicts:
include/mapnik/feature_type_style.hpp
src/feature_type_style.cpp
2011-12-07 22:02:29 +01:00
Dane Springmeyer
9e924bfa11
add ability to have typed arbitrary parameters in xml - refs #977
2011-12-05 14:46:38 -08:00
Dane Springmeyer
60de1c80cd
add support for arbitrary, custom parameters to be attached to the map during load and serialized when saved - refs #977
2011-12-02 17:48:09 -08:00
Dane Springmeyer
c731797c53
clean up impl of attr checking for warnings - no functional change just simplified
2011-11-30 16:48:01 -08:00
Artem Pavlenko
a35b9c4eaa
add support for fractional text size
...
( use FT_Set_Char_Size )
NOTE: ensure it works as expected, currently
I see different results from different fonts.
2011-10-28 11:24:08 +01:00
kunitoki
f1fb0c1939
- fix copyright to 2011 (script to do this will follow)
2011-10-23 15:04:25 +02:00
Artem Pavlenko
911981aefd
+ various win32 fixes, mainly adding extra namespace qualifiers
...
for vc++10, MAPNIK_DECL ...
2011-10-19 15:29:24 +01:00
Konstantin Käfer
763ece8db6
group-by attribute for Layer
2011-10-13 01:30:18 +02:00
Alberto Valverde
e41abb0e12
add a label attribute to colorizer_stop
2011-09-16 13:32:16 +00:00
Alberto Valverde
97431c8de4
made mesh_size configurable
2011-09-16 12:21:21 +00:00
Hermann Kraus
e877b6197a
Support new Shield/TextSymbolizer syntax.
2011-09-16 00:02:42 +00:00
Artem Pavlenko
c1a12f65c0
+ use 'stroke-dashoffset' to match SVG/CSS specs
2011-09-13 14:51:51 +00:00
Dane Springmeyer
67d7a3a6f0
add alternative line rasterizer that can be enabled to draw faster lines at the expense of dropping short geometries - for thin lines has nicer look but should not be used with think lines - refs #873
2011-09-09 23:45:49 +00:00
Dane Springmeyer
aa5cfad4b7
add minimum-path-length to text_symbolizer - closes #865
2011-09-04 17:33:48 +00:00
Dane Springmeyer
477c317753
fix typo
2011-08-31 00:25:03 +00:00
Dane Springmeyer
ce09895a53
add cache-features of list of attributes not to warn about on layer
2011-08-30 23:10:10 +00:00
Dane Springmeyer
9e87c9f914
apply patch from Peter Körner adding AlsoFilter functionality - closes #820
2011-08-30 17:38:27 +00:00
Dane Springmeyer
2abe4d8960
don't muffle any exceptions during load_map
2011-08-29 23:51:15 +00:00
Dane Springmeyer
22f6c9f01a
add a few direct includes
2011-08-29 21:07:45 +00:00
Hermann Kraus
607f4e7c99
Applied patch from Peter Körner (with small changes).
2011-07-23 00:11:01 +00:00
Dane Springmeyer
476e04c4c7
add gamma to polygon-pattern-symbolizer, useful for avoiding AA affects at tile edges so that global patterns can have seamless alignment
2011-06-28 22:37:35 +00:00
Dane Springmeyer
e94667a8ae
use std::string
2011-06-24 00:53:00 +00:00
Dane Springmeyer
1829093fc9
copy string, don't get reference from boost::filesystem::path
2011-06-13 21:42:44 +00:00
Dane Springmeyer
7a17c7e597
load_map_from_string has always accepted a base path argument to drive the interpretation of relative paths in the stylesheet when loaded in memory- this really should be a full map property so that it can be known on the map object after parsing and changed if the map is saved to a new location
2011-05-25 23:48:07 +00:00
Dane Springmeyer
9458e2d890
stroke-dash-offet -> stroke-dash-offset (spelling)- #762
2011-05-17 00:33:24 +00:00
Dane Springmeyer
37118c6d5f
ensure valid attributes on the RasterSymbolizer and RasterColorizer, warning if not
2011-05-04 01:57:37 +00:00
Dane Springmeyer
d05b0c539f
apply major refactor of RasterColorizer by ben moores from https://github.com/BenMoores/mapnik-trunk/wiki/RasterColorizer - closes #523
2011-05-04 00:20:17 +00:00
Dane Springmeyer
7d394f3d09
load_map: report and check transform in all cases
2011-04-26 17:33:41 +00:00
Dane Springmeyer
7d08f76e50
add missing 'base' parameter to parse_shield_symbolizer and correct spelling of 'filter-factor' for parse_raster_symbolizer - closes #752
2011-04-18 01:11:38 +00:00
Dane Springmeyer
7570cb5d73
load and save the new map 'maximum-extent' attribute
2011-04-14 02:32:51 +00:00
Artem Pavlenko
e580078d26
+ apply MetaWriter patch from zerebubuth
...
( see #735 for details )
2011-03-16 13:32:04 +00:00
Hermann Kraus
f9040c6026
Show error message when invalid placement algorithm is selected.
2011-03-11 14:18:34 +00:00
Dane Springmeyer
4079fd7d08
make feature caching optional, and disabled by default (to avoid std::bad_alloc in low memory environments). Can be set as new layer property 'cache-features' - closes #657
2011-03-01 17:09:29 +00:00
Hermann Kraus
4af0696b9d
Add support for multiple placements.
...
NOTE: In some places indention is not updated to keep this patch readable. This will be fixed in the next revision.
2011-02-28 13:17:46 +00:00
Dane Springmeyer
f348c489ad
fix property names in load_map error response
2011-02-11 21:32:47 +00:00
Dane Springmeyer
a9cda83300
check XML attributes for markers_symbolizer
2011-02-09 07:51:52 +00:00
Dane Springmeyer
0d5d014474
*warning* breaking change: move to consisten use of dashes (see #644 ), and start validating property names by printing warning if they are not valid ( closes #110 )
2011-02-05 03:15:17 +00:00
Dane Springmeyer
50532801f3
change min_distance and min_padding to minimum_distance and minimum_padding to match python and mimimum_version
2011-02-02 04:20:53 +00:00
Dane Springmeyer
fd2d9d7ff3
enable aliased lines using stroke-gamma for line_symbolizer - closes #689
2011-02-02 01:46:14 +00:00
Dane Springmeyer
7043c416fa
enable if/else type behavior in rules using style level keyword to control whether all rules will be evaluated or just the first that matches - closes #706 - thanks to original patch from kkaefer
2011-02-01 22:55:50 +00:00
Dane Springmeyer
75649b8863
add 'interior' point placement option to point_symbolizer - closes #709
2011-02-01 08:16:32 +00:00
Dane Springmeyer
78ec8b1724
fix reading of height value for building_symbolizer - TODO: make expression ( #704 )
2011-01-28 20:46:49 +00:00
Dane Springmeyer
5bf6efafb0
apply patch from Craig de Stigter for better scaling methods using agg image filters - closes #656
2011-01-27 03:47:54 +00:00
Dane Springmeyer
a79018d0a0
make sure to check relative paths behavior up front, and handle background-image properly - closes #702
2011-01-25 20:47:56 +00:00
Artem Pavlenko
98b7f62155
+ remove template from mapnik::rule
...
+ rename globaly rule_type -> rule
( ticket #552 )
2011-01-13 21:35:01 +00:00
Artem Pavlenko
be458e7ac0
+ add support for boost::filesystem v3
...
(http://www.boost.org/doc/libs/1_45_0/libs/filesystem/v3/doc/deprecated.html )
2011-01-04 15:22:49 +00:00
Dane Springmeyer
7fc193729c
warn or throw if svg transform fails
2010-12-11 01:10:45 +00:00
Dane Springmeyer
0eb3718934
actually parse label_position_tolerance from xml
2010-12-01 17:40:33 +00:00
Artem Pavlenko
0361061053
+ fix text_minimum_padding.diff ( #547 ) patch
2010-11-03 13:19:04 +00:00
Artem Pavlenko
0823b83900
+ apply Nino Walker's patch text_minimum_padding.diff #547
...
TODO: consider simplifying text symbolizer options
2010-11-03 13:18:56 +00:00
Dane Springmeyer
3011f53205
add support to PointSymbolizer for 'ignore_placement' - #564
2010-10-15 02:15:40 +00:00
Dane Springmeyer
5d13869da1
if only width or height are supplied for a marker, make a circle - ellipses can be drawn by different width/height values
2010-10-15 00:14:18 +00:00
Dane Springmeyer
688b1f2299
add an 'extra_attributes' property to the map to store mapnik::parameters that don't make sense as full attributes but need to be carried through from load_map() to save_map() for applications that use mapnik to serialize to xml such as Cascadenik and Quantumnik (currently useful storage for 'minimum_version' and 'font_directory')
2010-10-07 19:34:36 +00:00
Dane Springmeyer
2fc2b4c443
add 'font_directory' attribute to map to allow for regstration of fonts within - in combination with r2025 this closes #168
2010-10-07 01:49:07 +00:00
Artem Pavlenko
86f4027d9d
+ store max_char_angle in radians
...
+ default to 25.0 degrees
2010-09-24 12:55:08 +00:00
Dane Springmeyer
c35310445a
rename text_convert to text_transform to match css naming convention (also matching enums to css)
2010-09-18 19:10:18 +00:00
Dane Springmeyer
b307013ba2
add additional support for dynamically drawing ellipses in the markers_symbolizer, now supporting both line/point placement, metawriters for point placement, and width/height/stroke attributes - TODO - reflect in python bindings, buggy matrix transform for ellipses
2010-08-19 17:33:01 +00:00
Dane Springmeyer
b5f36154fc
parse stroke properties separately from parsing a line symbolizer - setting up for being able to easily add strokes to other symbolizers
2010-08-19 12:20:30 +00:00
Dane Springmeyer
a7e9cc7e87
make output of empty json (if no features are hit) on by default, and rename parameter from 'only-nonempty' to 'output-empty'
2010-08-19 05:50:08 +00:00
Hermann Kraus
24fb874c7d
Add metawriter support to save_map.cpp
2010-08-12 00:11:01 +00:00
Hermann Kraus
7c5d0336c9
Small fixes + improvements.
2010-08-10 15:31:14 +00:00
Hermann Kraus
990df317fd
"size" is not an optional GlyphSymbolizer attribute.
2010-08-10 14:46:39 +00:00
Hermann Kraus
9857583064
Parse metawriter attributes in all symbolizers.
2010-08-10 12:03:45 +00:00
Dane Springmeyer
6da5983e94
add xinclude support for libxml2 based parser - thanks oldtopos - closes #567
2010-08-10 06:01:16 +00:00
Hermann Kraus
5725c694c6
Add "only-nonempty" to XML config.
2010-08-02 12:37:15 +00:00
Hermann Kraus
87fd78f313
Add support for dynamic filename in metawriters.
2010-07-25 22:41:18 +00:00
Hermann Kraus
20d5eb5698
Make "default-output" attribute optional.
2010-07-25 21:03:35 +00:00
Artem Pavlenko
91a109120b
+ align attribute names with W3C standards
...
rename 'bgcolor' to 'background-color'
+ update upgrade_map_xml.py
2010-07-19 12:01:34 +00:00
Artem Pavlenko
8b8e247e62
+ add support for background-image attribute
...
( background image is repeated both vertically
and horizontally )
2010-07-19 11:10:03 +00:00
Dane Springmeyer
08e96be4a1
scons: better handling of PYTHON_INCLUDES and HAVE_LIBXML2
2010-07-15 00:20:50 +00:00
Hermann Kraus
7e10a32503
Created a class for metawriter_properties.
2010-07-14 10:34:18 +00:00
Hermann Kraus
b218480835
Added default attributes for metawriter.
2010-07-13 20:24:44 +00:00
Hermann Kraus
d5b0432dd7
Many metawriter improvements:
...
- Easier to configure
- Correct JSON output
- Handling more than one renderer run (writing pre-/postamble is no longer done in constructor/destructor)
- Collect all attributes required by metawriters
2010-07-12 15:27:33 +00:00
Hermann Kraus
9a0bcf23be
Added basic infrastructure for metawriter and support for JSON output (limited to PointSymbolizer atm)
2010-07-06 00:37:05 +00:00
Artem Pavlenko
70b2453065
+ add explicit support for shield displacement
...
(NOTE:text displacement is relative shield!)
2010-06-28 21:32:30 +00:00
Dane Springmeyer
0959f8ef16
+ add support to polygon_patter_symbolizer for global pattern alignment in addition to local/feature (default) alignment - closes #203
2010-06-20 22:36:49 +00:00
Artem Pavlenko
cf26db081a
+ refactor path expressions parser
2010-06-18 15:39:32 +00:00
Artem Pavlenko
e645338237
+ use FT_Stroker to stroke glyphs outlines
...
(we can have outlined text now!)
+ allow fractional halo_radius
+ TODO: Rename halo_fill to stroke
halo_radius to stroke-width
+ TODO: Implement proper 'halo' effect
2010-06-16 15:15:13 +00:00
Artem Pavlenko
b27357848d
+ set opacity on markers_symbolizer
2010-06-15 13:36:33 +00:00
Artem Pavlenko
d69dfe6656
+ update load/save opacity/text-opacity
2010-06-15 12:27:58 +00:00
Artem Pavlenko
9d98df89f1
+ parse 'transform' parameter
2010-06-10 14:11:48 +00:00
Artem Pavlenko
d5a8f89d64
+load transform parameter in markers_symbolizer
2010-06-03 12:35:31 +00:00
Artem Pavlenko
246731874b
+ apply 'mapnik-format' to *.cpp *.hpp
2010-06-02 11:03:30 +00:00
Dane Springmeyer
218c75385d
complete XML syntax change from CSSParameter to attributes (for BuildingSymbolizer and RasterSymbolizer) and update tests
2010-06-01 21:58:24 +00:00
Artem Pavlenko
484dce8943
+ impl transform parameter (follow SVG spec) in point_symbolizer
2010-06-01 15:27:19 +00:00
Dane Springmeyer
89f6b32b76
apply patch from Herm from #553 adding support for markers_symbolizer to Cairo renderer, new placement finder, and fill/spacing/overlap options - works nicely with new svg support being tested against markers_symbolizer
2010-05-30 03:16:51 +00:00
Artem Pavlenko
6a5ea3f1a1
+ SVG markers rendering
2010-05-27 14:21:31 +00:00
Artem Pavlenko
cbf1356e4d
+ parse 'orientation' parameter
2010-05-27 10:20:10 +00:00
Alberto Valverde
38e1570b8b
added a max_value attribute to color_band to handle the case of the last band more gracefully
2010-05-06 07:21:11 +00:00
Dane Springmeyer
63ab05c112
ensure proper setting of allow_overlap and opacity when contructing a point_symbolizer without an image file
2010-04-15 06:09:21 +00:00
Artem Pavlenko
23aac57a1f
+ use attributes instead of CssParameter
2010-04-09 18:47:19 +00:00
Artem Pavlenko
5fcc311764
+ add stroke-dashoffset property
...
+ replace <CssParameter name='xxx'>yyy</CssParameter>
element with 'xxx'=yyy attribute
2010-04-09 18:46:25 +00:00
Alberto Valverde
c79865586b
added an angle_mode attribute to GlyphSymbolizer to define the way the angle expression should be interpreted: as an azimuth or as a trigonometric angle
2010-03-22 11:21:17 +00:00
Alberto Valverde
aea5dd563a
XML de/serialization for glyph_symbolizer. Some issues remain regarding unicode expr
2010-03-19 11:19:43 +00:00
Alberto Valverde
807881c47a
XML deserialization support for a raster_symbolizer with a colorizer
2010-03-12 14:49:34 +00:00
Dane Springmeyer
ede29a1aff
image 'type' is not longer needed or used so don't attempt to parse from XML
2010-02-01 21:32:09 +00:00
Dane Springmeyer
52d08e7d1a
restore reading of paths relative to xml as default=true, print xml filename when errors are encountered, and remove unneeded check for pointsymbolizer file type which is now automatically handled in parse_path()
2010-01-26 22:54:03 +00:00
Dane Springmeyer
0fbd46a045
report the map/xml name when an error is encountered when loading a map
2010-01-25 19:10:01 +00:00
Dane Springmeyer
6115a1590d
add 'gamma' attribute to PolygonSymbolizer, along with tests against simplified world borders shapefile - setting gamma to .5-.7 can remove gaps in processed_p.shp depending on background color - closes #428
2010-01-13 00:31:45 +00:00
Dane Springmeyer
f87790cd5b
merge a few small 0.7 branch changes back into trunk
2010-01-11 00:36:51 +00:00
Dane Springmeyer
6abbfca492
fix default values for vertical_alignment in the TextSymbolizer and ShieldSymbolizer - closes #468
2010-01-07 02:21:07 +00:00
Artem Pavlenko
47dc1e197b
+ merge mapnik2 to trunk
2009-12-16 20:02:06 +00:00
Dane Springmeyer
d0b4db9ba3
add support for relative paths for entities when using libxml2 and loading xml from string - thanks dodobas for the initial patch
2009-12-06 22:18:45 +00:00
Dane Springmeyer
0e18aa63cd
add feature to Map node to allow for throwing a friendly error if the map styles use features not supported by the installed mapnik version - thanks Ldp for the review - closes #395
2009-12-05 03:58:48 +00:00
Artem Pavlenko
a3a5859466
Patch from David Eastcott :
...
1. Modified Text Symbolizer
a) corrected line fragment centering (for 2nd and subsequent lines, when line breaks occur).
b) adjusted vertical alignment calculation so that:
i) middle -> has the center of the text line(s) at the point origin
ii) bottom -> has the text line(s) below the point origin
iii) top -> has the text line(s) above the point origin
c) added new text_symbolizer attribute: 'wrap_before', value range: true/false, default == false
allows line breaks at first wrap_char before wrap_width as an alternative to the original
which was to create the line break at the first wrap_char after wrap_width
d) added new text_symbolizer attribute: 'horizontal_alignment', value range: left/middle/right, default == middle
i) left -> has all text line(s) to left of the point origin
ii) middle -> has all text line(s) centered on the the point origin
iii) right -> has all text line(s) to the right of the point origin
NOTE: dx, dy position adjustments are applied after alignments and before Justify.
e) added new text_symbolizer attribute: 'justify_alignment', value range: left/middle/right, default == middle
i) left -> after alignments, has all text line(s) are left justified (left to right reading)
ii) middle -> after alignments, has all text line(s) center justified
iii) right -> after alignments, has all text line(s) right justified (right to left reading)
f) added new text_symbolizer attribute: 'opacity', value range: 0.0 thru 1.0; 1.0 == fully opaque
g) modified positioning to compensate for both line_spacing and character_spacing, to ensure proper
centering of the text envelope. Also ensure that centering occurs correctly even if no wrapping
occurs. Line spacing is uniform and consistent and compensates for errors between text_size and
the actual size (ci.height is inconsistent, depending on case and character); fixes issue with
multi-line text where some lines have a slight gap and others are compressed together.
2. Modified shield_symbolizer
a) added the attributes:
i) allow_overlap
ii) vertical_alignment
iii) horizontal_alignment
iv) justify_alignment
v) wrap_width
vi) wrap_character
vii) wrap_before
viii) text_convert
ix) line_spacing
x) character_spacing
xi) opacity
b) added new shield_symbolizer attribute: 'unlock_image', value range: true/false, default == false
i) false == image and text placement behaviour same as before
ii) true == image placement independant of text, image is always centered at geometry point, text placed per attributes,
dx/dy only affect text.
Allows user to create point markers with text, but both the text and image rendering collision detection are done
as a pair (they come and go together - solves problem if using point_symbolizer and text_symbolizers where one or the
other are omitted due to overlaps, but not both)
c) extended choices for the attribute 'placement' to include vertex; effect is limited to the shield_symbolizer
Allows an attempted placement at every vertex available, gives additional shield placement volume when using line geometry
d) ensured that the text placement was not updating the detector unless a shield image was actually placed.
e) added new shield_symbolizer attribute: 'no_text', value range: true/false, default = false
When set true, the text for the feature is ignored ('space' subsituted) so that pure graphic symbols can be used
and no text is rendered over top of them.
2009-10-19 13:52:53 +00:00
Dane Springmeyer
5c184a5075
load_map: improve formatting of error message within layer
2009-08-27 04:48:32 +00:00
Dane Springmeyer
8850d19bfc
in load_map, fix type declaration for dx,dy as double
2009-07-24 07:24:36 +00:00
Artem Pavlenko
85ecc33d7f
+ applied patch from Jochen Topf :
...
* text_convert="none|toupper|tolower"
Convert all text to upper/lower case before rendering. "none" doesn't do
anything with the text and is the default. Works for labels along lines
or at points.
* line_spacing="<number>"
Add this many pixels space between two lines in text labels that have
been broken into several lines. Default is 0. Doesn't do anything for
labels along lines.
* character_spacing="<number>"
Add this many pixels space between two characters in a text. Default is 0.
Currently only works for text labels on point geometries. This should
also be implemented for labels along lines, but I'll leave that for
another day.
* wrap_character="<character>"
Instead of breaking text into lines on spaces, use this character. This
is useful, when you want to make sure that labels are broken at the right
spot. Note that you'll probably want to make wrap_width small so that
your lines are actually broken, otherwise you'll see the wrap_character
in the output. Default is ' ' (space). Doesn't do anything for labels
along lines.
2009-07-20 15:30:19 +00:00
Dane Springmeyer
07597bc594
fix interpretation of SheildSymbolizer displacement values as doubles in load_map.cpp- closes #353
2009-06-01 02:13:32 +00:00
Dane Springmeyer
8d6c5dac6b
fix interpretation of TextSymbolizer displacement values as doubles in load_map.cpp- closes #353
2009-06-01 02:11:07 +00:00
Dane Springmeyer
6c8a5f805a
xml: make sure to explicitly declare the default relative_paths option as true - thanks Ldp
2009-05-06 23:42:28 +00:00
Dane Springmeyer
404a43f5f0
+ensure relative paths to symbols and datasources in xml are based on working directory of xml file, added 'paths_from_xml' parameter that is true by default but can be made false to maintain previous behavior - closes #326 (has no effect on load_map_from_string)
2009-05-01 01:59:01 +00:00
Dane Springmeyer
b46996ff8b
catch error and raise UserWarning if an input plugin cannot be found during load_map() - closes #302
2009-04-13 23:22:00 +00:00
Artem Pavlenko
10f55a678b
+ add support for vertical_alignment (text_symbolizer)
...
valid values are : top, middle, bottom
default to middle which can now center multi-line text
2009-03-30 20:47:26 +00:00
Artem Pavlenko
2eec236fc2
+ applied "hill shading" patch from Marcin Rudowski
...
a) Raster opacity
b) Raster merging modes (TODO:add more modes, consider agg impl)
c) Raster scaling algos: fast,bilinear,bilinear8
(TODO: add alpha support in bilinear8)
d) improvements to png256
*Great work, thanks!*
2009-03-29 11:05:20 +00:00
Artem Pavlenko
56b15031d0
+ support load_map_string for all xml parsers
2009-02-18 00:33:26 +00:00
Jon Burgess
5a216d01b5
Read spacing parameter on ShieldSymbolizer from XML
2009-02-16 21:45:32 +00:00
Artem Pavlenko
97ad49c067
+ mapnik-load-map-checks.patch (jonb)
...
This patch adds more reporting of unknown elements during parsing. This
helps catch some typos etc. It also consistently skips <xmlcomment>'s
which used to cause errors when used in some places.
2009-01-17 23:53:04 +00:00
Artem Pavlenko
bf598cf487
+ mapnik-check-fonts-during-load-map.patch from jonb
...
This patch adds some extra exceptions for missing fontsets.
Without this checking, you only notice the error at rendering time when
it first needs to render a missing font.
It also cleans up the font exception messages which were displaying the
font name twice.
Some minor questions:
* Should I wrap the fontset exceptions with if(strict_)?
* Should strict default to true?
2009-01-17 20:52:24 +00:00
Artem Pavlenko
cad0a839b6
+ mapnik-load-map-from-string.patch (jonb)
2009-01-15 23:51:07 +00:00
Artem Pavlenko
a07767ef3d
+ (c++) renamed mapnik::Color to mapnik::color
...
+ (c++) added mapnik::color ctor from named colours (TODO: consider not to export color_factory)
+ (Python) fixed pickling
+ (Python) added to_hex_string method
2009-01-14 12:10:24 +00:00
Dane Springmeyer
68e784dfdd
+ add load_map() and save_map() support for reading and writing of abstract, title, minzoom, maxzoom, and queryable attributes
2009-01-11 18:55:29 +00:00
Artem Pavlenko
20f3a9460d
+ expose buffer_size parameter (default 0)
...
influences envelope used by placement detector
( i.e. 'avoid_edges' parameter)
2008-09-21 10:14:38 +00:00
Artem Pavlenko
565da55742
+ point symbolizer opacity patch from Brian (openstreetmap@brian.quinion.co.uk)
2008-09-19 08:27:32 +00:00
Artem Pavlenko
3b85ebad9b
make shield_symbolizer to work with point geometries (TODO!!)
2008-09-15 08:48:21 +00:00
Tom Hughes
7d173be190
Add support for font sets on shield sumbolizers.
2008-07-29 23:21:39 +00:00
Artem Pavlenko
1b47afde07
applied font fallback patch from Beau Gunderson
2008-06-29 10:58:48 +00:00
Artem Pavlenko
3f9127b5d0
reverting back to 700
2008-06-29 10:58:29 +00:00
Artem Pavlenko
3275cf9ce6
applied font fallbacj patch from Beau Gunderson
2008-06-29 10:40:08 +00:00
Artem Pavlenko
e1ea0a72db
use range based 'parse' method
...
transcode strings in filter expressions (default to utf8 input)
-- we can use map definition *.xml to define encoding
-- and in case of Python from
# -*- coding: utf-8 -*-
utf8 encoded filters are working now.
2008-02-26 11:43:49 +00:00
Artem Pavlenko
01f4984804
don't fail if file can not be open
2008-02-12 20:03:04 +00:00
Artem Pavlenko
37f49e29cc
Applied patches from Martijn van Oosterhout:
...
1. The first allows the user to add a <FileSource
name="foo">/home/bar/baz/</FileSource> to the beginning of the file
and then in any of the symbolisers you can say:
<FooSymboliser base="foo" name="bridge">
It it will refer to the file /home/bar/baz/bridge.
2. The second allows you to create Datasource templates at the top
level, which can be used later in the actual layers like so:
<Map>
<Datasource name="db">
<Paramaeter name="host">/tmp</Parameter>
</Datasource>
<Layer name="lay">
<Datasource base="db">
<Parameter name="table">points</Parameter>
</Datasource>
</Layer>
</Map>
And the host parameter will be used in the layer.
3. The third adds the "base" parameter to the raster and shape input
plugins. All it does is specify a path to prefix to the filename prior
to using it. Together with the above feature it allows things like:
<Map>
<Datasource name="shapes">
<Paramaeter name="base">/home/foo/shapes</Parameter>
</Datasource>
<Layer name="lay">
<Datasource base="shapes">
<Parameter name="file">places</Parameter>
</Datasource>
</Layer>
</Map>
And it will use the shapefile /home/foo/shapes/places
2007-12-17 14:21:04 +00:00
Artem Pavlenko
c5bca5ab96
removed unused variables to calm msvc toolset
2007-11-08 21:11:12 +00:00
Artem Pavlenko
01de9d9e8c
1. revived 'avoid_edges' option
...
2. fixed 'placement_finder' extent in agg_renderer.cpp
3. added 'avoid_edges' to map loader
2007-11-05 10:32:01 +00:00
Artem Pavlenko
8d51cb421b
1. re-factored placement_finder to be more efficient. 'find_*' methods are templated on PathType.
...
2. PostGIS plug-in - optional 'multiple_geometries' parameter to control how Multi* geometries built.
3. MarkersSymbolizer (work in progress) to render vector shapes (markers) alonh a path with collision detection.
2007-11-02 12:50:15 +00:00
David
bc54b150ea
- reversed header include order
2007-10-08 17:42:41 +00:00
Artem Pavlenko
d1a345a3d2
1.don't share FT_Library object between threads (TODO : implement freetype_engine pool)
...
2. merged changes with latest load_map
2007-10-05 11:27:00 +00:00
David
b2df387a9d
- merged strict-xml-branch r530:532 to trunk:
...
- libxml2 support
- strict error handling while parsing XML map files
- implemented save_map()
- removed some duplicate defaults
- all symbolizers with icons share a common base class now
2007-09-25 18:47:12 +00:00
Artem Pavlenko
8e071f84c7
1. Changed internal geometry representation (explicit support for multi geometries)
...
(FIXME : label_spacing is still, too slow!!)
2. Re-use some agg objects.
3. placement_finder cleanups!
4. Added support for 'building_symbolizer' - extruded polygons
2007-09-16 11:23:51 +00:00
Artem Pavlenko
d959701d5a
1. added boost::optional<T> to/form Python converter
...
2. make background color optional (Map object)
3. exposed 'blend' method for Image object
2007-08-01 09:59:23 +00:00
Artem Pavlenko
7c8a9f3075
added support for min_distance in shield/text symbolizer
2007-07-25 14:36:08 +00:00
Artem Pavlenko
f3ae318ca3
1. added 'allow_overlap' in load_map from xml
...
2. added overlap_ field to TextSymbolizer (ignored by renderer at the moment)
2007-06-20 21:08:23 +00:00
Artem Pavlenko
a6a31f42f6
implelmented optional 'clear' text labels cache at the layer level
2007-05-01 07:53:20 +00:00
Artem Pavlenko
d024c86b1b
Restored support for the text displacement (point placement only at moment)
2007-02-09 16:32:44 +00:00
Artem Pavlenko
a688c06035
added support for PolygonPatternSymbolizer
2006-12-04 11:36:39 +00:00
Artem Pavlenko
ebdd0f6030
disable clog printing in release mode. Pass -DMAPNIK_DEBUG to enable.
2006-11-19 17:13:33 +00:00
Artem Pavlenko
bf297ec3ca
1.upgrade to latest agg2.4
...
2.added default PointSymbolizer in load_map.cpp
2006-11-09 23:44:34 +00:00
Artem Pavlenko
e924b597f4
1. patch from Toby that allows repeated labels to be placed on a line
...
geometry (such as roads)
2. restored text labels for point geometry.
3. process 'spacing' attribute in load_map.cpp
2006-11-01 23:17:05 +00:00
Artem Pavlenko
d7fcefc848
1. applied text-wrap patch from Robert Coup. Thanks!
...
2. by default use tinyxml as a property_tree parser
3. modified load_map.cpp to allow to test new features
2006-10-27 17:29:39 +00:00
Artem Pavlenko
62a0fb5f89
support for ShieldSymbolizer and LinePatternSymbolizer tags
2006-10-26 20:20:41 +00:00
vspader
118e8f0d52
Added face_name parameter to text and shield symbolizers,
...
which specifies the font face to be used for rendering.
New constructor is: text_symbolizer(name, face_name, size, ...)
2006-10-19 17:11:45 +00:00
Artem Pavlenko
110016fe78
1. refactored proj stuff into separate files
...
2. added is_geographic property
3. added basic support for text_symbolizer in load_map
2006-10-17 17:26:35 +00:00
Artem Pavlenko
bb235fa316
1.added projection transformation support based on proj4 (new dependency!!!)
...
Map and Layer objects both have a new parameter 'srs', initialized to "+proj=latlong +datum=WGS84" by default.
Basic usage (Python):
p = Projection("+proj=merc +datum=WGS84")
point = p.forward(Coord(-2,51))
...
2.reflected arithmetic operators for Envelope/Coord into Python
3.altered return policies for python objects
4.modified build system to require proj4 lib and headers
2006-10-16 13:44:52 +00:00
Artem Pavlenko
72e296945f
added <ElseFilter/> tag support in map loader.
2006-10-09 20:49:56 +00:00
Artem Pavlenko
a71c36ec2e
BOOST_FOREACH is not released yet, revert to std::const_iterator
2006-10-04 13:57:08 +00:00
Artem Pavlenko
992af4747d
1. move include to mapnik/include
...
2. update demos,bibdibgs etc.
2006-10-04 11:22:18 +00:00
Artem Pavlenko
c1cce2742f
added missing header
2006-10-03 10:04:28 +00:00
Artem Pavlenko
88892c196b
added save/load functionality based on boost::property_tree (aka ElementTree in c++)
2006-10-03 08:39:43 +00:00