Commit graph

1394 commits

Author SHA1 Message Date
Artem Pavlenko
aef214292e don't rely on compiler for-loop optimisation 2012-03-19 10:11:55 +00:00
ldp
1542e3e513 add ignore-placement to MarkersSymbolizer 2012-03-18 22:35:02 +01:00
Dane Springmeyer
cdc6376719 be explicit about zero-division protection 2012-03-16 14:49:56 -07:00
Artem Pavlenko
70512dc03b + add optional smothing to line_symbolizer
( TODO: conv_dash )
2012-03-15 10:26:53 +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
3e4733c51a + refactor join/cap settings (agg_helper.hpp) 2012-03-14 17:21:04 +00:00
Dane Springmeyer
8e0ed96756 fix whitespace 2012-03-14 09:12:26 -07:00
Dane Springmeyer
8451e8897d Merge branch 'master' of github.com:mapnik/mapnik 2012-03-14 08:57:13 -07:00
Dane Springmeyer
07d4e45521 fix compile with boost 1.42-1.44 after 2b68cea0a1 2012-03-14 08:56:07 -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
2f10469c8d apply mapnik_format.el formatting 2012-03-13 07:54:32 -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
42f9fe03d2 remove old shim 2012-03-12 13:21:38 -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
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
9d0bfa9d4e the std::map storing font_face pointers is a cache - name it clearly 2012-03-09 14:47:04 -08:00
Artem Pavlenko
e8758b96a6 + fix init order 2012-03-09 14:26:52 +00: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
961ab51aef + fix previous merge error 2012-03-09 13:23:50 +00:00
Artem Pavlenko
d8d5298f4e + update cairo_renderer to use clipped paths 2012-03-09 12:56:54 +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
99a181e196 fix spelling 2012-03-09 12:37:27 +00:00
Hermann Kraus
b71460d4dd Don't return pointer to dead object. 2012-03-09 13:26:11 +01: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
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
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
3c594efec8 fix spelling 2012-03-05 17:59:07 -08:00
Dane Springmeyer
2287668562 initialize members of char_info - refs #1114 2012-03-05 14:51:14 -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
e9c043a42a ensure members are initialized (refs #1114) 2012-03-05 13:32:02 -08:00
Dane Springmeyer
90fb50b158 initialize sx,sy in ctrans (refs #1114) and avoid possible divide by zero condition (refs #1110) 2012-03-05 13:29:20 -08:00
Dane Springmeyer
87da7c2e3e ptree_helpers: ensure proper return type upon exception (TODO: needs larger cleanup) 2012-03-05 12:34:10 -08:00
Dane Springmeyer
f81108d5b3 formatting 2012-03-05 12:09:22 -08:00
Dane Springmeyer
7dfc6d9ccd pass doubles by value in find_line_circle_intersection 2012-03-05 11:50:20 -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
Dane Springmeyer
e622c9548d Merge branch 'master' of github.com:mapnik/mapnik 2012-03-02 18:47:11 -08:00
Hermann Kraus
2bf9d9dbdf Fix handling of empty XML nodes.
Closes #1106.
2012-03-03 01:12:23 +01:00
Dane Springmeyer
ca3bd722c1 Merge branch 'master' of github.com:mapnik/mapnik 2012-03-02 10:01:11 -08:00
Artem Pavlenko
726724b3c7 pass by ref
move conversions impl into .cpp
2012-03-01 18:36:13 +00:00
Dane Springmeyer
a837b1ae80 specialize getting strings from ptree to avoid excess copying 2012-02-28 20:13:37 -08:00
Dane Springmeyer
7c8341e7c3 formatting 2012-02-28 20:12:13 -08:00
Dane Springmeyer
ce3078fa98 inline to avoid duplicate symbol errors with gcc 2012-02-25 09:29:14 -08:00
Dane Springmeyer
9aff28f768 fix compile with boost 1.42 2012-02-24 19:22:48 -08:00
Dane Springmeyer
e6abd143a8 c++ casts to avoid compiler warnings on msvc 2012-02-24 18:58:34 -08:00
Dane Springmeyer
8cb23ca382 remove uneeded default cases 2012-02-24 18:57:37 -08:00
Dane Springmeyer
954eb5c539 reduce usage of boost::lexical_cast during map parsing by using spirit2-based conversion functions - refs #1055 2012-02-24 18:26:48 -08: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
Dane Springmeyer
b1f5f701cc Merge branch 'master' of github.com:mapnik/mapnik 2012-02-24 16:27:37 -08:00
Dane Springmeyer
128f43bc79 remove used functions in ptree_helpers.hpp 2012-02-24 16:25:46 -08:00
Hermann Kraus
1906cddf04 Improve error messages. 2012-02-25 00:57:05 +01:00
Dane Springmeyer
a917b7b410 fix the ability of external libraries to link mapnik on windows 2012-02-24 11:32:16 -08:00
Artem Pavlenko
4aa957d373 Merge remote-tracking branch 'origin/master' 2012-02-24 18:09:15 +00:00
Artem Pavlenko
917e684bdd dummy decrement() and advance(p) to compile with vc10 (untested) 2012-02-24 18:07:13 +00:00
Dane Springmeyer
2a4fa323cf declare feature_impl and context_type for windows symbol visibility 2012-02-24 09:25:32 -08:00
Dane Springmeyer
dccaff73d9 Merge branch 'master' of github.com:mapnik/mapnik 2012-02-23 18:55:59 -08:00
Dane Springmeyer
9c2e0f478a c++ style 2012-02-23 18:55:48 -08:00
Dane Springmeyer
37d76eccb4 Add explicit header 2012-02-23 18:55:20 -08:00
Dane Springmeyer
e88b8c9cac boost 1.42 compatibility 2012-02-23 15:52:04 -08:00
Dane Springmeyer
871650a3c2 specialize string2int conversion to avoid std::string ctor 2012-02-23 13:11:25 -08:00
Dane Springmeyer
02eb9067e0 fix linking with msvc by declaring text_placements 2012-02-23 11:47:45 -08:00
Dane Springmeyer
2d1f2d19cc fix compile of shield_symbolizer.hpp on windows 2012-02-23 09:22:51 -08:00
Hermann Kraus
e79f13df1f Add debug helper for XML. 2012-02-23 18:10:49 +01:00
Artem Pavlenko
abd57d2acb + use boost::scoped_ptr for auto memory managment
+ remove delete/new from create_palette
2012-02-23 12:26:16 +00:00
Artem Pavlenko
61c6b7e6b2 + use boost::range algorithms for brevity 2012-02-23 12:10:32 +00:00
Artem Pavlenko
9db9e7d161 Merge remote-tracking branch 'origin/master' 2012-02-23 10:23:31 +00:00
Artem Pavlenko
00787ec12d + implement 'filter' iterator to output key/value pairs
where value is not value_null().
+ use it in json::feature_generator to have more compact json
2012-02-23 10:21:29 +00:00
Dane Springmeyer
56aeae1b52 fix broken python linking after 6a0ce99e22 2012-02-22 16:45:02 -08:00
Artem Pavlenko
8fe79f910f Merge remote-tracking branch 'origin/master' 2012-02-22 22:47:28 +00:00
Artem Pavlenko
00abb57ffa add missing image_width fix 2012-02-22 22:46:35 +00:00
Dane Springmeyer
188ba774b9 rollback part of 5dee576 - avoiding skipping nodes with <= 3 pixels as this fixed only symptoms of the hextree crash and not the root cause (note: divide by zero fix is maintained) 2012-02-22 14:32:12 -08:00
Artem Pavlenko
5b49d64a48 Merge remote-tracking branch 'origin/master' 2012-02-22 17:17:25 +00:00
Artem Pavlenko
199adc17d0 fix reduced image width calc 2012-02-22 17:16:07 +00:00
Dane Springmeyer
5dee576df2 hextree: avoid memory corruption in create_palette_rek() by not skipping <3 pixel nodes and avoid potential divide by zero in assign_node_colors() (led to hang on osx) - closes #1087 2012-02-21 22:37:56 -05:00
Dane Springmeyer
3c2938b812 add header with simple spirit string conversion functions- refs #1055 2012-02-21 10:57:58 -08:00
Dane Springmeyer
9213dd5426 fixup multi-symbolizer processing function 2012-02-20 22:53:54 -08:00
Hermann Kraus
a05faceb11 Fix ShieldSymbolizer line placement.
Refs #1078, https://github.com/MapQuest/MapQuest-Mapnik-Style/issues/8.
2012-02-21 00:06:54 +01:00
Artem Pavlenko
80cf0c2bd5 make generators noncopyable 2012-02-20 22:19:50 +00:00
Hermann Kraus
46f80cc6aa Use double instead of int and avoid rounding when possible.
Closes #1078.
2012-02-20 19:32:34 +01:00
Artem Pavlenko
6f5d16bfe3 + make feature_collection_parser a template so we can
instantiate with different iterator types
  e.g std::string::const_iterator and
  boost::spirit::multi_pass<std::istreambuf_iterator<char> >
2012-02-20 16:23:31 +00:00
Artem Pavlenko
6e498ad062 + update to use new names
+ add geometry_generator
2012-02-20 12:03:56 +00:00
Artem Pavlenko
8536b8a536 + better naming 2012-02-20 12:03:07 +00:00
Artem Pavlenko
3953a94636 + geojson generator interface 2012-02-20 10:53:58 +00:00
Artem Pavlenko
8e40537c48 + fix ident 2012-02-20 10:53:15 +00:00
Artem Pavlenko
256d23d5bc + cleanup 2012-02-20 10:52:39 +00:00
Artem Pavlenko
d8005e3486 + feature/geometry geojson generator impl 2012-02-20 10:51:45 +00:00
Hermann Kraus
76cdd7a254 Merge branch 'master' into python-textplacement 2012-02-19 01:00:52 +01:00
Hermann Kraus
6efdb3969e Handle text position differently.
Should fix part of the ShieldSymbolizer problems.
Refs #1078.
2012-02-18 14:39:13 +01:00
Hermann Kraus
2843ff3da8 Fix placement_finder.hpp includes. 2012-02-18 14:03:21 +01:00
Hermann Kraus
bb3ad18c95 Rename starting_{x,y} to center to reflect actual meaning. 2012-02-18 13:07:23 +01:00
Hermann Kraus
93d119464c Add new class to avoid mixing different types of positions. 2012-02-18 12:12:45 +01:00
Hermann Kraus
980cdd9e92 Use text_placements registry. 2012-02-18 00:39:14 +01:00
Hermann Kraus
3508ec5fb4 Merge branch 'master' into python-textplacement 2012-02-17 20:54:48 +01:00
Hermann Kraus
481e172b8e Add placement registry. 2012-02-17 20:15:16 +01:00
Hermann Kraus
2c6502e791 Merge branch 'master' of github.com:mapnik/mapnik 2012-02-17 19:52:38 +01:00
Hermann Kraus
7c98b8c9c0 Add XML name registry.
Allows users to add new types to XML styles.
2012-02-17 19:45:13 +01:00
Artem Pavlenko
b5bc17304c Merge remote-tracking branch 'origin/master' 2012-02-17 10:48:49 +00:00
Artem Pavlenko
c6a091937f + add get_optional to mapnik::feature_impl
returns -> boost::optional<mapnik::value const&>
+ use get_optional in feature_kv_iterator to avoid
  throwing exceptions
2012-02-17 10:46:29 +00:00
Dane Springmeyer
9be9b09d72 Merge branch 'master' of github.com:mapnik/mapnik 2012-02-16 17:44:34 -08:00
Dane Springmeyer
a5e1a66fe6 c++ style in hextree.hpp to aid in debugging - no functional change 2012-02-16 17:44:04 -08:00
Hermann Kraus
44beaf1bdf Make ShieldSymbolizer variables doubles.
Refs #1078.
2012-02-17 00:03:46 +01:00
Artem Pavlenko
63735982ee + remove const from parameters passed by-value 2012-02-16 15:35:27 +00:00
Hermann Kraus
ceda45249f Merge branch 'master' into python-textplacement 2012-02-16 00:18:44 +01:00
Hermann Kraus
819ee98041 Rename properties=>defauls, default_format=>format. 2012-02-16 00:17:22 +01:00
Hermann Kraus
4602338e0c Add ExpressionFormat: Allow changing text format based on expressions.
Closes #1036.
Refs #1048.
2012-02-15 21:38:24 +01:00
Artem Pavlenko
c83ab1d14e Merge remote-tracking branch 'origin/master' 2012-02-15 19:20:17 +00:00
Hermann Kraus
a2c2ad40e2 Make markers_placement a bit simpler and add sanity checks.
refs #974.
2012-02-15 20:06:50 +01:00
Artem Pavlenko
01497bfc36 + add typedef size_type to mapnik::vertex_vector
+ remove set_capacity() method - no longer required
2012-02-15 15:16:33 +00:00
Dane Springmeyer
a13b3f650c when feature put/get throws, print the key that does not exist 2012-02-14 14:57:03 -08:00
Artem Pavlenko
8116ba4809 ident 2012-02-14 18:35:00 +00:00
Artem Pavlenko
7e8207236e ident 2012-02-14 18:34:29 +00:00
Artem Pavlenko
dc4cc8f197 + base class already derived from boost::noncopyable 2012-02-14 18:33:39 +00:00
Artem Pavlenko
58b51b208e use standard_wide::space 2012-02-14 18:33:05 +00:00
Dane Springmeyer
9d5591b77a add argument 2012-02-13 22:02:23 -08:00
Dane Springmeyer
a18927a0b1 Add include 2012-02-13 11:59:04 -08:00
Dane Springmeyer
cafb98ed88 qi::omit works with boost >=1.46 but not <=1.45 - refs #1074 2012-02-13 11:47:55 -08:00
Hermann Kraus
be464f0c5b Move code for makers placement from hpp to cpp. 2012-02-13 20:20:09 +01:00
Dane Springmeyer
08216606ee formatting 2012-02-13 11:01:25 -08:00
Hermann Kraus
043dba3786 Merge branch 'cleanup-includes' 2012-02-13 19:37:20 +01:00
Hermann Kraus
f3dc78506b Remove almost empty unused headers. 2012-02-13 18:07:47 +01:00
Hermann Kraus
01e3450dff Add warning for filter_factory.hpp. 2012-02-13 17:03:42 +01:00
Artem Pavlenko
06ae6ae845 + fix #1042 - don't use omit[...] directive with boost_1_42_0 2012-02-13 12:12:13 +00:00
Hermann Kraus
828316bffd Remove unused file. 2012-02-12 23:44:05 +01:00
Hermann Kraus
d3e191ff73 Merge branch 'master' into python-textplacement
Conflicts:
	include/mapnik/formatting/list.hpp
2012-02-12 22:58:02 +01:00
Hermann Kraus
1fd7f9d543 Fix spelling error. 2012-02-12 22:48:44 +01:00
Hermann Kraus
2b5274c21b Merge branch 'textplacement-rename' into python-textplacement 2012-02-12 13:57:51 +01:00
Hermann Kraus
52702d3a20 Rename filter_factory to expression. 2012-02-12 13:06:39 +01:00
Hermann Kraus
32b492fac1 Fix includes. 2012-02-12 04:06:34 +01:00
Hermann Kraus
9eccd58ed5 Merge branch 'textplacement-rename' into python-textplacement
Conflicts:
	include/mapnik/text_processing.hpp
2012-02-12 04:01:58 +01:00