Dane Springmeyer
33145b18ae
fix default initializations in markers_symbolizer
2010-05-30 16:09:39 +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
Dane Springmeyer
c9a4433666
make sure to return marker from cache, as noticed by Herm and mentioned in #553
2010-05-30 03:09:22 +00:00
Artem Pavlenko
f1986d1b85
+ remove expat deps
...
+ correct includes
2010-05-28 16:34:58 +00:00
Artem Pavlenko
83c0f1ca59
+ remove agg_svg_parser
2010-05-28 16:34:45 +00:00
Artem Pavlenko
a15e86e528
+ add libxml2 based svg parser implementation
2010-05-28 16:34:34 +00:00
Artem Pavlenko
6a5ea3f1a1
+ SVG markers rendering
2010-05-27 14:21:31 +00:00
Artem Pavlenko
bb0ae08280
+ marker_cache impl
2010-05-27 11:41:02 +00:00
Artem Pavlenko
823b7ba0fc
+ SVG markers initial import
2010-05-27 11:19:09 +00:00
Artem Pavlenko
4584b05ff0
+ small correction
2010-05-27 11:18:53 +00:00
Artem Pavlenko
e6e165f1e0
+ use path-like geometries
2010-05-27 10:20:41 +00:00
Artem Pavlenko
cbf1356e4d
+ parse 'orientation' parameter
2010-05-27 10:20:10 +00:00
Artem Pavlenko
2085b3bc08
+ apply orientation from text_symbolizer
...
+ fix building symbolizer
2010-05-27 10:20:03 +00:00
Artem Pavlenko
258a62616e
+ implement rotated text logic in placement finder
2010-05-27 10:19:47 +00:00
Artem Pavlenko
77c31e8643
+ add orientation parameter
...
orientation="<expr>" e.g
orientation="10+35" -> rotate by 45 degrees anti-clockwise
(TODO: consider using standard SVG transform!)
2010-05-27 10:19:39 +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
a688c36fdb
serialize the experimental MarkersSymbolizer and avoid serializing defaults of GlyphSymbolizer unless requested
2010-04-15 21:42:28 +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
c20f16358c
+ save PolygobSymbolizer properties as attributes
2010-04-09 18:47:27 +00:00
Artem Pavlenko
23aac57a1f
+ use attributes instead of CssParameter
2010-04-09 18:47:19 +00:00
Artem Pavlenko
f776f8cd1e
+ add dash_offset
2010-04-09 18:46:41 +00:00
Artem Pavlenko
ca20f80ea8
+ use attributes for LineSymbolizer properties
2010-04-09 18:46:33 +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
Artem Pavlenko
5890f17df3
+ directly ctor default mapnik::color to avoid css color parsing
2010-03-24 18:02:10 +00:00
Artem Pavlenko
1a2b320252
+ sanitize header inclusion a bit
2010-03-24 18:01:53 +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
a613dc6397
Created python binding to memory_datasource which can be added Features built programaticcaly. See tests for sample use until docs are done. #528 is almost closed.
2010-03-19 16:16:15 +00:00
Alberto Valverde
2e04c5422a
fixed serialization of expressions in glyph_symbolizer
2010-03-19 11:20:16 +00:00
Alberto Valverde
2d601f1bd7
fixed color's to_string method since alpha seems to no longer be parsed as a double. serializing a color to xml and deserializing it back did not work before
2010-03-19 11:20:00 +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
1e2ffb22b7
cairo rendering for the glyph_symbolizer. Small refactoring in cairo_context::add_text to pass the paramaters which were picked up from the text_symbolizer param (size, fill, halo_radius and halo_fill) explicitly. This allows the glyph_symbolizer to piggy back on that functionality without specilizing add_text() for the glyph_symbolizer (which would have involved heavy amounts of copy+paste or a more elaborate refactoring strategy. Please ping me if this was not a good idea
2010-03-19 09:33:57 +00:00
Alberto Valverde
e91c41e494
removed unneeded parenthesis
2010-03-19 09:33:41 +00:00
Alberto Valverde
f5409000f3
cosmetic changes and comments
2010-03-19 09:33:25 +00:00
Alberto Valverde
d098c98c5e
pre-eliminary GlyphSymbolizer implementation. TODO: XML de/serializing. more tests. remove workaround mentioned in test
2010-03-18 20:05:08 +00:00
Alberto Valverde
31c3d20e43
modified the old arrow_symbolizer interface on glyph_symbolizer and documented it
2010-03-18 20:04:51 +00:00
Alberto Valverde
fc3a1beeef
initial skeleton of glyph_symbolizer (coarsely ported from arrow_symbolizer). Mapnik compiles but symbolizer does nothing useful yet and is going to be heavily modified to make use of expressions to be general enough to be usable for purposes other than rendering arrows representing vector direction/intensity
2010-03-18 20:04:35 +00:00
Artem Pavlenko
e7bfba10fe
+ enanble installation of mapnik2 side by side with mapnik
2010-03-17 21:03:02 +00:00
Artem Pavlenko
83b20c3036
Revert "re factor expression grammar/parser stuff"
...
This reverts commit c58b8c4f71813a2490cf135573009c92be1a90c4.
2010-03-15 21:08:56 +00:00
Artem Pavlenko
0f8deb5e73
re factor expression grammar/parser stuff
2010-03-15 21:08:46 +00:00
Dane Springmeyer
d7256295ae
port r1680/r1683/r1690 from 0.7.1-dev branch to trunk
2010-03-12 18:23:06 +00:00
Alberto Valverde
e9748abc5f
xml de/serialization support for RasterColorizer
2010-03-12 14:49:50 +00:00
Alberto Valverde
807881c47a
XML deserialization support for a raster_symbolizer with a colorizer
2010-03-12 14:49:34 +00:00
Alberto Valverde
2f1d60b666
pre-eliminary raster coloring support
2010-03-12 13:34:13 +00:00
Dane Springmeyer
6b76b3b9e8
properly serialize the map_buffer when saving map
2010-03-11 23:21:22 +00:00
Dane Springmeyer
3a44dd3258
+ use rint(v) instead of int(round(v)) + add rint implementation - msvc hasn't got one + minor cleanups
2010-03-11 23:19:12 +00:00
Artem Pavlenko
c3a0b1a72f
+ revert to a024c947499994e1e8aaaff2b8ea73a8eec489dd
2010-03-08 11:55:15 +00:00
Dane Springmeyer
b8511eca65
restore default behavior of PointSymbolizer when used without an image, by defaulting to 4x4 black pixel - TODO - expose colors, shapes, and size for this in the future
2010-03-03 03:26:12 +00:00
Dane Springmeyer
b540dab73b
apply slighly modified (env->box2d) mapnik-trunk.mr.raster-position2.diff from mar_rud to close #475
2010-03-03 03:23:53 +00:00
Dane Springmeyer
dd36810321
print warning if images are not found
2010-03-02 03:31:50 +00:00
Dane Springmeyer
07186fc6bb
ensure shapeindex links against boost system if available (boost >=1.35) to avoid potential problems in indirect linking on linux (essentially directly dynamically linking like we previously only did on os x) - closes #517
2010-02-21 01:00:09 +00:00
Dane Springmeyer
e03c997024
assume byteorder arrives in native arch (from postgis), and therefore ensure byteswapping for wkb on big endian systems - closes #515 - TODO check breakage in other plugins as per #516 - thanks Brad Simpson for the report and fix
2010-02-19 07:50:47 +00:00
Dane Springmeyer
2cd0b55e88
enforce default gamma function - improves upon #428 , closes #512
2010-02-09 17:28:17 +00:00
Dane Springmeyer
c3ea59c3c8
don't pass expression_ptr as const
2010-02-03 18:36:01 +00:00
Artem Pavlenko
05f5473924
+ correct image bonding box calculation
...
+ check for zero sized images
2010-02-03 12:19:49 +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
1af24f1eb8
Serialize FontSet instead of font_set as that is what the loader expects
2010-02-01 21:31:14 +00:00
Dane Springmeyer
c950e38a46
reenamble python access to TextSymbolizer 'name' expression
2010-01-30 03:08:03 +00:00
Dane Springmeyer
d599067a14
restore pretty printing of xml output (indent=4) now that we are using the new boost ptree which changed its defaults
2010-01-30 02:05:01 +00:00
Dane Springmeyer
aef4d350be
repair serialization of XML filters and Text/ShieldSymbolizer 'name' attribute, which are how properly converted from expressions into strings
2010-01-30 00:47:06 +00:00
Dane Springmeyer
b1660b2152
fix formatting
2010-01-30 00:44:35 +00:00
Dane Springmeyer
da8ddb09ab
gah, use the version header that actually exists for older versions of icu
2010-01-29 19:40:26 +00:00
Dane Springmeyer
05654f18bc
quick fix to allow compiling without unicode regex support to enable builds against ICU <4.2
2010-01-29 19:22:15 +00:00
Dane Springmeyer
9b69f65ea9
add backwards compatibility support to the expressions parser so that the TextSymbolizer and ShieldSymbolizer 'name' parameter (and others in the future) syntax is understood as pre-0.8.0 syntax, while printing a deprecation warning - should allow older stylesheets to be used with Mapnik 0.8.0 - addresses #501
2010-01-26 23:03:42 +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
067fdb884d
sync trunk with new cairo support added previously to 0.7 branch in r1531
2010-01-11 18:55:30 +00:00
Dane Springmeyer
e5673e239b
increment ABI versions
2010-01-11 18:53:50 +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
Dane Springmeyer
9750e6cd24
fix memory leak in load_map when using libxml2 by freeing the libxml tree as per http://xmlsoft.org/xmlmem.html - closes #473 - thanks mishok13 for the detailed report and testing
2010-01-01 22:41:43 +00:00
Artem Pavlenko
47dc1e197b
+ merge mapnik2 to trunk
2009-12-16 20:02:06 +00:00
Dane Springmeyer
5e2e6a76ad
apply fixes from David Eastcott originally applied to 0.7 branch
2009-12-13 23:30:36 +00:00
Dane Springmeyer
bd0a1ee08f
cherry pick one more changeset from mapnik2 into trunk
2009-12-07 06:43:02 +00:00
Dane Springmeyer
c01d1d0c69
integrate a few changes from mapnik2 branch - making sure to pass strings by const ref + formatting
2009-12-07 04:15:17 +00:00
Dane Springmeyer
fe3ffe6c2d
rename map.save_map_string to map.save_map_to_string
2009-12-06 22:33:47 +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
Dane Springmeyer
b104253d9c
Add ability to link to custom icu lib name, and remove the unneeded linking to icudata on osx, while offering compiler flags required for compiling against libicucore provided by Apple
2009-11-24 20:32:41 +00:00
Dane Springmeyer
75d67f4b43
only serialize non-default values for layers as well as styles
2009-11-16 00:04:47 +00:00
Dane Springmeyer
b89f468eaf
add support for using CDATA with libxml2 parser. New tests for filters work nicely - TODO add datasource tests for CDATA in sql 'table' param
2009-11-11 23:37:57 +00:00
Artem Pavlenko
d2f3e669b0
* correct operator= implementation
2009-11-08 10:35:36 +00:00
Dane Springmeyer
4df684c50e
PointSymbolizer serialization was missing 'opacity' and 'allow_overlap'
2009-11-06 20:56:34 +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
5fccc3ae62
improve formatting of error message during xml loading if document is not well formed
2009-09-28 17:35:50 +00:00
Dane Springmeyer
d9d15bb081
avoid segfault when pickling a TextSymbolizer using wrap_character by removing const declaration
2009-09-25 20:29:03 +00:00
Dane Springmeyer
767afe3f76
scons: pull exact libagg name out of env['LIBS'], since on debian we are actually needing to link to 'libagg_pic'
2009-08-28 15:44:06 +00:00
Dane Springmeyer
0519584644
scons: make sure to still link to libagg even if internal lib is not used - need because before r1196 we were not filtering out libs
2009-08-27 23:18:09 +00:00
Dane Springmeyer
5c184a5075
load_map: improve formatting of error message within layer
2009-08-27 04:48:32 +00:00
Dane Springmeyer
e897b832a4
+reflect new text symbolizer options added in r1254 - closes #391
2009-08-17 22:54:50 +00:00
Dane Springmeyer
e7dd9094a5
revert unintended file changes from r1275
2009-07-26 01:15:44 +00:00
Dane Springmeyer
45266074c8
scons: fix typo, and ensure all temp output is writeable
2009-07-26 01:08:51 +00:00
Dane Springmeyer
8850d19bfc
in load_map, fix type declaration for dx,dy as double
2009-07-24 07:24:36 +00:00
Dane Springmeyer
286ad12c47
add method to save a map to a string ( closes #396 )
2009-07-24 06:15:58 +00:00
Dane Springmeyer
e0c9e5c826
add missing serialization of building symbolizer height, be explicit of double in polygon_symbolizer
2009-07-24 06:10:42 +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
Artem Pavlenko
cba404058e
+ formatting
2009-07-13 22:36:16 +00:00
Dane Springmeyer
817720e1c5
increment ABI version numbers
2009-07-09 01:16:52 +00:00
Dane Springmeyer
f8559c07b6
remove unneeded header
2009-07-08 23:01:36 +00:00
Artem Pavlenko
6e993fb388
+ added <iostream> header
2009-07-08 21:26:40 +00:00