mapnik/include/mapnik
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
..
agg_renderer.hpp + use class/struct keywords correctly 2009-02-17 22:06:30 +00:00
arrow.hpp 1. re-factored placement_finder to be more efficient. 'find_*' methods are templated on PathType. 2007-11-02 12:50:15 +00:00
attribute.hpp - more include order reversion 2007-10-08 18:10:31 +00:00
attribute_collector.hpp formatting 2009-05-14 22:53:03 +00:00
attribute_descriptor.hpp 1. move include to mapnik/include 2006-10-04 11:22:18 +00:00
boolean_filter.hpp Add support for boolean values in filters, and reading of boolean 2008-02-27 18:50:59 +00:00
cairo_renderer.hpp +make cairo compilation conditional on CFLAG (as well as Scons) like bindings/python/python_cairo.cpp 2009-06-08 19:43:49 +00:00
color.hpp + store individial colour components internally 2009-07-08 11:52:13 +00:00
color_factory.hpp + (c++) renamed mapnik::Color to mapnik::color 2009-01-14 12:10:24 +00:00
comparison.hpp 1. move include to mapnik/include 2006-10-04 11:22:18 +00:00
config.hpp improved win32 support from Valery Moiseev. 2007-01-17 11:43:11 +00:00
config_error.hpp - found and fixed another wild pointer 2008-01-07 07:32:55 +00:00
coord.hpp - more include order reversion 2007-10-08 18:10:31 +00:00
coord_array.hpp - more include order reversion 2007-10-08 18:10:31 +00:00
css_color_parser.hpp + make compile cleanly with boost >= 1.38.0 2009-02-11 16:29:44 +00:00
ctrans.hpp apply patch from River Tarnell <river@loreley.flyingparchment.org.uk> for Sun CC (Solaris) compile support 2009-06-03 06:10:35 +00:00
datasource.hpp doxygen docs for some functions and classes 2009-03-01 21:09:09 +00:00
datasource_cache.hpp expose list of registered plugins as a 'plugin_names()' method of DatasourceCache similar to the FontEngine.face_names() - closes #246 2009-06-22 06:59:56 +00:00
distance.hpp + fix msvc-9.0 compiler warnings 2009-02-17 23:19:28 +00:00
ellipsoid.hpp ellipsoid 2006-10-18 23:02:57 +00:00
enumeration.hpp Fix build with GCC 4.3 (fixes #76) 2008-03-24 14:03:05 +00:00
envelope.hpp doxygen docs for some functions and classes 2009-03-01 21:09:09 +00:00
expression.hpp Add support for boolean values in filters, and reading of boolean 2008-02-27 18:50:59 +00:00
factory.hpp - more include order reversion 2007-10-08 18:10:31 +00:00
feature.hpp avoid deprecation warnings with boost 1_40 related to location of property_map.hpp 2009-09-25 22:08:52 +00:00
feature_factory.hpp 1. move include to mapnik/include 2006-10-04 11:22:18 +00:00
feature_layer_desc.hpp 1.Added support for building on Darwin (Xcode 2.4.1, gcc4.0.1). 2007-03-16 10:11:37 +00:00
feature_style_processor.hpp apply patch from River Tarnell <river@loreley.flyingparchment.org.uk> for Sun CC (Solaris) compile support 2009-06-03 06:10:35 +00:00
feature_type_style.hpp - more include order reversion 2007-10-08 18:10:31 +00:00
fill.hpp 1. move include to mapnik/include 2006-10-04 11:22:18 +00:00
filter.hpp 1. added boost::optional<T> to/form Python converter 2007-08-01 09:59:23 +00:00
filter_expression.hpp - more include order reversion 2007-10-08 18:10:31 +00:00
filter_factory.hpp use range based 'parse' method 2008-02-26 11:43:49 +00:00
filter_featureset.hpp implemented query_map_point method on map object: 2006-12-06 20:26:59 +00:00
filter_parser.hpp add a filter parsing alias of '!=' for '<>' - closes #427 2009-09-29 23:40:40 +00:00
filter_visitor.hpp 1. move include to mapnik/include 2006-10-04 11:22:18 +00:00
font_engine_freetype.hpp Patch from David Eastcott : 2009-10-19 13:52:53 +00:00
font_set.hpp Refactor some of the font set stuff so that the cairo renderer can be 2008-07-25 00:23:33 +00:00
gamma.hpp + use fully qualified names from stl 2009-01-15 23:12:56 +00:00
geom_util.hpp + use fully qualified names from stl 2009-01-15 23:12:56 +00:00
geometry.hpp formatting 2009-08-11 01:22:08 +00:00
global.hpp +support for BigInt(int8) datatype in postgres, closes #384 2009-07-17 04:30:11 +00:00
graphics.hpp Patch from David Eastcott : 2009-10-19 13:52:53 +00:00
hit_test_filter.hpp 1. Changed internal geometry representation (explicit support for multi geometries) 2007-09-16 11:23:51 +00:00
image_data.hpp + removed unused #include 2009-07-08 20:50:20 +00:00
image_reader.hpp support for palette based PNGs, user 'png256' as a format parameter (see updated rundemo.py) 2007-12-10 19:59:17 +00:00
image_util.hpp revert unintended file changes from r1275 2009-07-26 01:15:44 +00:00
image_view.hpp reverting back to 700 2008-06-29 10:56:29 +00:00
jpeg_io.hpp added support for saving images into Python String object 2008-01-25 14:40:48 +00:00
label_collision_detector.hpp + removed unused parameter from has_point_placement 2009-01-14 12:34:56 +00:00
label_placement.hpp 1. move include to mapnik/include 2006-10-04 11:22:18 +00:00
layer.hpp doxygen docs for some functions and classes 2009-03-01 21:09:09 +00:00
libxml2_loader.hpp + mapnik-load-map-from-string.patch (jonb) 2009-01-15 23:51:07 +00:00
line_pattern_symbolizer.hpp - more include order reversion 2007-10-08 18:10:31 +00:00
line_symbolizer.hpp + (c++) renamed mapnik::Color to mapnik::color 2009-01-14 12:10:24 +00:00
load_map.hpp + mapnik-load-map-from-string.patch (jonb) 2009-01-15 23:51:07 +00:00
local_datasource.hpp 1. move include to mapnik/include 2006-10-04 11:22:18 +00:00
logical.hpp 1. move include to mapnik/include 2006-10-04 11:22:18 +00:00
Makefile.am support for sqlite3 and ogr 2009-02-18 22:17:00 +00:00
map.hpp fix missing const - thanks Denis - closes #273 and #287 2009-04-02 16:35:08 +00:00
markers_converter.hpp std namespacing 2009-06-03 05:26:46 +00:00
markers_symbolizer.hpp 1. re-factored placement_finder to be more efficient. 'find_*' methods are templated on PathType. 2007-11-02 12:50:15 +00:00
math_expr.hpp Add a modulus operator to the filter language. 2009-02-10 15:46:54 +00:00
memory.hpp 1. move include to mapnik/include 2006-10-04 11:22:18 +00:00
memory_datasource.hpp + add missing MAPNIK_DECL 2009-02-12 14:33:00 +00:00
memory_featureset.hpp + applied python_point_datasource.patch from lwu 2009-01-13 00:56:09 +00:00
octree.hpp fix compiler warnings after r1111 (adding png256 alpha support) 2009-04-30 17:38:32 +00:00
params.hpp support for user defined 'extent' parameter (for example : -180,-90,180,90) 2008-01-29 16:59:51 +00:00
placement_finder.hpp Patch from David Eastcott : 2009-10-19 13:52:53 +00:00
plugin.hpp Include ltdl.h instead of trying to forward declare libtool 2008-05-22 07:08:14 +00:00
png_io.hpp Fix reduce_4() to make it consistent with reduce_8(). This was breaking tiles which were compressing down to a 16 entry colormap. All the pixels were being set to the alpha index. 2009-06-13 18:27:44 +00:00
point_symbolizer.hpp + point symbolizer opacity patch from Brian (openstreetmap@brian.quinion.co.uk) 2008-09-19 08:27:32 +00:00
polygon_pattern_symbolizer.hpp - more include order reversion 2007-10-08 18:10:31 +00:00
polygon_symbolizer.hpp add missing serialization of building symbolizer height, be explicit of double in polygon_symbolizer 2009-07-24 06:10:42 +00:00
pool.hpp allow multi/single threaded variants 2008-02-04 16:12:13 +00:00
proj_transform.hpp +add pickle support for proj_transform and view/coord_transform - see #345 2009-05-24 06:31:32 +00:00
projection.hpp + applied patch avoid_extent from rcoup 2008-11-19 21:50:12 +00:00
ptree_helpers.hpp + fully qualify stl strings 2009-07-07 23:54:02 +00:00
quad_tree.hpp Fix build with GCC 4.3 (fixes #76) 2008-03-24 14:03:05 +00:00
query.hpp - more include order reversion 2007-10-08 18:10:31 +00:00
raster.hpp + pass parameter by const ref 2009-04-10 11:47:46 +00:00
raster_symbolizer.hpp + applied "hill shading" patch from Marcin Rudowski 2009-03-29 11:05:20 +00:00
regex_filter.hpp - more include order reversion 2007-10-08 18:10:31 +00:00
rule.hpp 1. re-factored placement_finder to be more efficient. 'find_*' methods are templated on PathType. 2007-11-02 12:50:15 +00:00
save_map.hpp add method to save a map to a string (closes #396) 2009-07-24 06:15:58 +00:00
scale_denominator.hpp fixed scale_denomitator 2006-11-17 02:01:21 +00:00
shield_symbolizer.hpp Patch from David Eastcott : 2009-10-19 13:52:53 +00:00
spatial.hpp 1. move include to mapnik/include 2006-10-04 11:22:18 +00:00
stroke.hpp + (c++) renamed mapnik::Color to mapnik::color 2009-01-14 12:10:24 +00:00
style.hpp - more include order reversion 2007-10-08 18:10:31 +00:00
style_factory.hpp 1. move include to mapnik/include 2006-10-04 11:22:18 +00:00
symbolizer.hpp add MAPNIK_DECL to symbolizer_with_image - closes #94 2009-05-15 23:56:06 +00:00
text_path.hpp added Unicode support based on ICU 2008-02-18 21:40:34 +00:00
text_symbolizer.hpp Patch from David Eastcott : 2009-10-19 13:52:53 +00:00
unicode.hpp + add missing MAPNIK_DECL 2009-02-12 14:33:00 +00:00
utils.hpp allow multi/single threaded variants 2008-02-04 16:12:13 +00:00
value.hpp apply patch from River Tarnell <river@loreley.flyingparchment.org.uk> for Sun CC (Solaris) compile support 2009-06-03 06:10:35 +00:00
version.hpp + increment version to 0.6.1 2009-07-09 14:41:14 +00:00
vertex.hpp 1.Added support for building on Darwin (Xcode 2.4.1, gcc4.0.1). 2007-03-16 10:11:37 +00:00
vertex_transform.hpp simplified coord transformation interface. 2006-10-09 09:52:15 +00:00
vertex_vector.hpp Fix build with GCC 4.3 (fixes #76) 2008-03-24 14:03:05 +00:00
wkb.hpp - added new et input plugin 2009-03-22 22:26:42 +00:00