Commit graph

1429 commits

Author SHA1 Message Date
Artem Pavlenko
030650f949 + impl converter_traits for 'transform_tag'
+ support proj_transform and CoordTransform as args
2012-04-03 16:29:27 +01:00
Artem Pavlenko
347fce4db2 + add 'clip' property 2012-04-03 16:28:49 +01:00
Artem Pavlenko
55ed40cbc2 attach proj_trans and tr at later stage (to work with vertex_converters interface). 2012-04-03 16:26:18 +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
2e7ed0f589 + format/correct doc string 2012-04-03 13:08:10 +01:00
Artem Pavlenko
1bc2af9104 + expose pixel_format_type 2012-04-03 13:03:59 +01:00
Artem Pavlenko
84cb7b4c54 vertex converter dispatch - intial impl 2012-04-03 13:01:06 +01:00
Dane Springmeyer
d9cb76f7a1 postgis: support mixed case table names - closes #1159 2012-04-02 19:21:14 -07:00
kunitoki
d516cf9f46 - cosmetics 2012-03-28 21:59:40 +02: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
18774354a6 support case insensitive booleans - closes #1141 2012-03-23 20:08:47 -07:00
Dane Springmeyer
149fca1626 I need a beer - followup to e4ae1f660d 2012-03-23 19:19:50 -07:00
Dane Springmeyer
e4ae1f660d boost 1.42 compatibility - fixes #1145 2012-03-23 19:09:38 -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
2ff8c3344e avoid copy 2012-03-23 11:22:00 -07:00
Artem Pavlenko
76054df89d + add 'wsp' delimiter support
+ re-arrange grammar a bit
2012-03-23 13:19:02 +00: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
97a9abc8f3 + add 'wsp' delimiter support
+ re-arrange grammar a bit
2012-03-23 12:56:26 +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
d23a4b63b9 expose both a clipped and unclipped labeling path type 2012-03-22 16:36:25 -07:00
Dane Springmeyer
2e2bce3126 formatting 2012-03-22 16:31:57 -07:00
Artem Pavlenko
bc2589960b + add missing files 2012-03-21 17:34:41 +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
Dane Springmeyer
4843572e1b move image_compositing to cpp file 2012-03-19 15:42:30 -07:00
Artem Pavlenko
b2ca10f3a0 + always premultiply destination buffer for correct ops
(ensure no color component exceeds alpha channel)
2012-03-19 21:19:52 +00:00
Artem Pavlenko
9e3e5bb74a Merge remote-tracking branch 'origin/master' 2012-03-19 19:45:32 +00:00
Hermann Kraus
9b62a19cf4 Implement justify-alignment=auto.
Closes #1125.
2012-03-19 17:12:53 +01:00
Artem Pavlenko
e06c456789 even better, use BOOST_FOREACH 2012-03-19 10:46:44 +00:00
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