Commit graph

1613 commits

Author SHA1 Message Date
Artem Pavlenko
5758b47813 + read whole image at once if we have enough memory and x0==0 && y0==0
(adds support for Adam7 interlacing )
2012-04-10 15:47:29 +01:00
Artem Pavlenko
45b0dd6482 + support smooth conv in polygon_pattern_symbolizer 2012-04-10 15:46:38 +01:00
kunitoki
ee2674cda8 - force a file close to flush debug outputs when setting back logging from file to console 2012-04-10 16:46:11 +02:00
kunitoki
81c9dd7b6b - added the ability to set the default global severity from scons configure
- initial check in of setting global severity from getenv (todo)
2012-04-10 16:19:51 +02:00
kunitoki
1a203d3f85 - cleaned up logger interface to better integrate with python bindings
- polished and finished python bindings for logger interaction
2012-04-10 10:14:28 +02:00
kunitoki
fb94e4a2ec - replace all instances of std::cerr with MAPNIK_LOG_* 2012-04-10 00:51:04 +02:00
kunitoki
a902a08aab - added logging to file
- started working on the logger bindings
- cleanups some error reporting with cerr/clog in the library
2012-04-10 00:25:31 +02:00
kunitoki
efc823a372 Merge branch 'master' of github.com:mapnik/mapnik 2012-04-09 21:42:55 +02:00
kunitoki
b60c508c1c - finish thrashing all the useless ifdef MAPNIK_LOG 2012-04-09 21:41:56 +02:00
Artem Pavlenko
87ec80b819 + set SVG path visibility=false if display=none 2012-04-09 14:47:44 +01:00
Artem Pavlenko
6f7457f6b0 format 2012-04-09 14:46:03 +01:00
Artem Pavlenko
2fb00247eb remove unused headers 2012-04-09 12:34:09 +01:00
Artem Pavlenko
80a1178a08 + set SVG path visibility=false if display=none 2012-04-09 12:27:19 +01:00
Artem Pavlenko
c5a27d7398 + use vertex converters 2012-04-09 11:12:34 +01:00
kunitoki
74342e3083 - no need to #ifdef all the time: the compiler should optimize out the log calls when no MAPNIK_LOG is defined
- initially got rid of those ifdefs in plugins only
2012-04-09 12:05:49 +02:00
kunitoki
8c58a9aa73 - improved again the logging facilities
- aligned the plugins to using the new methods with severity
- implemented per object severity, with fallback to global (with global functions to set them programmatically)
- initial check in of logger python bindings (todo)
2012-04-09 03:00:51 +02:00
Artem Pavlenko
fdc80ad278 + use BOOST_FOREACH 2012-04-08 12:12:12 +01:00
Dane Springmeyer
65c3e9021c fix compile error if MAPNIK_LOG is not defined - refs #937 2012-04-07 20:15:48 -07:00
kunitoki
7b59fec405 Merge branch 'master' of github.com:mapnik/mapnik 2012-04-08 04:01:34 +02:00
kunitoki
4ef7343416 - added severity to logger (global variable for now)
- added a logger class for each severity level
2012-04-08 03:59:47 +02:00
kunitoki
09f3728db0 - fix a warning 2012-04-08 03:56:32 +02:00
Dane Springmeyer
0015a68e19 throw during zoom_all if a proj_init error is encountered 2012-04-07 17:56:18 -07:00
kunitoki
af201551b8 got rid of old CVS $Id comments kludge in files 2012-04-08 02:45:01 +02:00
kunitoki
1f351e0e09 implement new debug system 2012-04-08 02:20:56 +02:00
Dane Springmeyer
19f5f77417 reuse path_expression_grammar - finishes and closes #1028 2012-04-06 16:50:11 -07:00
Dane Springmeyer
98e470903c less lexical cast - refs #1055 2012-04-06 13:39:13 -07:00
Dane Springmeyer
e57eb47ba0 cast to const char 2012-04-06 13:05:59 -07:00
Dane Springmeyer
ab776edbf5 reduce string copying slightly in populate_tree - refs #1055 2012-04-06 12:58:08 -07:00
Dane Springmeyer
43d646c759 formatting 2012-04-06 11:42:36 -07:00
Artem Pavlenko
e513b4772d + use vertex_converters 2012-04-06 10:10:20 +01:00
Dane Springmeyer
7b84a2ce94 fix linking of postgis.input by using MAPNIK_DECL and ensuring the header is included in src/conversions.cpp - closes #1127 2012-04-05 16:59:36 -07:00
Artem Pavlenko
738ff501fe remove CompositingSymbolizer 2012-04-05 17:04:11 +01:00
Artem Pavlenko
34c984b2b8 + support compositing across all symbolizers
(currently polygon and line symbolizers)
2012-04-05 15:59:11 +01:00
Dane Springmeyer
4dbadaa7cd ensure proper reprojection of unbuffered bbox used for geometry clipping - closes #1138 2012-04-04 12:43:32 -07:00
Dane Springmeyer
d29ae14104 make it possible to set the map.maximum_extent back to None/uninitialized from python 2012-04-04 12:07:15 -07:00
Dane Springmeyer
8c41bdc040 remove unused variables 2012-04-04 10:30:37 -07:00
Dane Springmeyer
40e8ceca55 add missing set_color_to_alpha impl - TODO - add advanced algo that supports tolerance - refs #1018 2012-04-03 16:49:05 -07:00
Artem Pavlenko
e7f0e8aac0 + support configurable vertex converter 2012-04-03 19:49:57 +01:00
Artem Pavlenko
6236a63156 + make clip_poly converter optional (default: true) 2012-04-03 16:31:01 +01:00
Artem Pavlenko
347fce4db2 + add 'clip' property 2012-04-03 16:28:49 +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
c9a83837a1 + add start/end style processing handlers 2012-04-03 13:09:08 +01:00
Dane Springmeyer
9d6c47844c use more robust transform method in map.zoom_all 2012-04-02 11:33:29 -07: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
7c529600eb Revert "avoid mutex locks on pj_transform for proj 4.7 and above - closes #1072"
This reverts commit 0748d2beea.
2012-03-24 08:03:15 -07:00
Dane Springmeyer
3f26c439c9 fix marker width/height to mean pixels - which it should have all along - closes #1134 2012-03-23 20:28:12 -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
35cad0e049 port over bgra -> rgba compositing fix from compositing branch 2012-03-23 17:38:30 -07:00
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
Dane Springmeyer
c88a725a7d Merge pull request #1143 from datendelphin/fontengine
fix invalid memory access in font engine
2012-03-23 11:14:18 -07:00
Datendelphin
30f59aac0c fix invalid memory access in font engine
acess of member face->num_faces after free()
fixed by making local copy num_faces before FT_Done_Face(face)
2012-03-23 17:33:35 +01: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
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
caaa8b5392 disable stderr from svg parsing unless in debug mode 2012-03-22 16:41:44 -07:00
Dane Springmeyer
d991427737 formatting 2012-03-22 16:37:24 -07:00
Dane Springmeyer
d23a4b63b9 expose both a clipped and unclipped labeling path type 2012-03-22 16:36:25 -07:00
Dane Springmeyer
61c38d0ec7 avoid copying unbuffered bbox 2012-03-22 16:35:33 -07:00
Artem Pavlenko
f0b6fffcc9 Merge branch 'master' into compositing 2012-03-22 09:14:49 +00:00
Dane Springmeyer
40b0ab8d6c add missing #else 2012-03-21 17:45:19 -07:00
Dane Springmeyer
d55ad5a4d2 check which cairo surfaces are supported 2012-03-21 15:34:59 -07:00
Artem Pavlenko
bc2589960b + add missing files 2012-03-21 17:34:41 +00:00
Artem Pavlenko
05600f64cc Merge branch 'master' into compositing 2012-03-21 15:50:04 +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
Artem Pavlenko
f78305428a + remove duplicate typedef's 2012-03-21 10:52:03 +00:00
Artem Pavlenko
4aaae73e51 use SFINAE to check for process(xxx_symbolizer,..) in derived classes
avoid writing dummy process(...) methods
2012-03-21 09:29:37 +00:00
Dane Springmeyer
9c2b3d7144 Merge branch 'master' of github.com:mapnik/mapnik 2012-03-20 23:24:45 -07:00
Dane Springmeyer
3f06747407 braces for readibility 2012-03-20 16:40:07 -07:00
Hermann Kraus
da5ac781a7 Remove old comment. 2012-03-20 23:56:35 +01:00
Hermann Kraus
8b5e5fbb64 Always place text at the same side of a line.
Fixes #608.
2012-03-20 23:50:20 +01:00
Dane Springmeyer
89877edc67 move image_compositing to cpp file 2012-03-19 15:42:44 -07:00
Dane Springmeyer
4843572e1b move image_compositing to cpp file 2012-03-19 15:42:30 -07:00
Hermann Kraus
9b62a19cf4 Implement justify-alignment=auto.
Closes #1125.
2012-03-19 17:12:53 +01:00
novldp
0ecd5bae45 +add MarkersSymbolizer ignore-placement to save_map and python bindings 2012-03-18 23:30:37 +01: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
Hermann Kraus
1b85f42a88 Reapply RTL patch.
Fixes #189.
2012-03-16 01:01:12 +01:00
Artem Pavlenko
c95959c549 + re-use cairo_context 2012-03-15 11:29:57 +00:00
Artem Pavlenko
66beaaa05b + support smoothing in conv_dash 2012-03-15 10:42:30 +00:00
Artem Pavlenko
70512dc03b + add optional smothing to line_symbolizer
( TODO: conv_dash )
2012-03-15 10:26:53 +00:00
Dane Springmeyer
926404d9ae properly format abi versions in a few more placesa 2012-03-15 02:03:33 +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
f0bc1064c6 + supprt polygon smoothing in cairo backend 2012-03-14 17:38:27 +00:00
Artem Pavlenko
3e4733c51a + refactor join/cap settings (agg_helper.hpp) 2012-03-14 17:21:04 +00:00
Artem Pavlenko
959a989f52 Merge remote-tracking branch 'origin/master' 2012-03-14 16:51:49 +00:00
Artem Pavlenko
f1a0887628 + apply smooth converter after clipping and transformations
+ inflate query_extent
2012-03-14 16:12:36 +00:00
Dane Springmeyer
8451e8897d Merge branch 'master' of github.com:mapnik/mapnik 2012-03-14 08:57:13 -07:00
Dane Springmeyer
81ab02cc72 fix failing test 'bgcolor_broken.xml' when compiled against boost 1.42 2012-03-14 08:56:59 -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
5601731a89 fix macro in conversions.cpp 2012-03-13 08:05:26 -07:00
Dane Springmeyer
76e108ff9d remove uneeded shared_ptr copy 2012-03-13 07:58:38 -07: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
Artem Pavlenko
5ec3fb1121 avoid constructing extra temp object 2012-03-12 13:07:36 +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
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
71333373cc use boost::make_shared to create new face_ptr 2012-03-09 15:15:04 -08: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
5ce18715c3 + update cairo_renderer to use clipped paths 2012-03-09 13:40:18 +00:00
Artem Pavlenko
61113d7b4e + add clipping to text/shield/markers
Conflicts:

	include/mapnik/symbolizer_helpers.hpp
2012-03-09 13:37:53 +00:00
Artem Pavlenko
a763d03110 resolve conflict 2012-03-09 13:33:16 +00:00
Artem Pavlenko
514ec14cc9 + add clipping to polygon/line_pattern_syms 2012-03-09 12:57:14 +00:00
Artem Pavlenko
d8d5298f4e + update cairo_renderer to use clipped paths 2012-03-09 12:56:54 +00:00
Dane Springmeyer
b67af5cadb avoid combining default arg with const& 2012-03-09 12:55:41 +00:00
Artem Pavlenko
13ea874585 + inflate query extent to avoid line joining artifacts 2012-03-09 12:55:22 +00:00
Artem Pavlenko
11511e9b20 + cleanup 2012-03-09 12:55:03 +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
86ac497584 minor formatting
Conflicts:

	src/placement_finder.cpp
2012-03-09 12:42:08 +00:00
Hermann Kraus
b71460d4dd Don't return pointer to dead object. 2012-03-09 13:26:11 +01:00
Dane Springmeyer
c5c0f92247 save the maps in the right place for visual tests 2012-03-08 17:04:51 -08:00
Dane Springmeyer
5f4734ebe0 fix other potential division by zero conditions - closes #1110 2012-03-08 17:02:58 -08: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
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
Hermann Kraus
c3cd50ff57 Complete new XML structure. 2012-03-07 19:16:41 +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
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
1c6da3893e minor formatting 2012-03-05 18:00:45 -08:00
Dane Springmeyer
df54f710bc minor formatting 2012-03-05 18:00:15 -08:00
Dane Springmeyer
943f92fffc initialize another member in text_properties 2012-03-05 14:54:30 -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
7dfc6d9ccd pass doubles by value in find_line_circle_intersection 2012-03-05 11:50:20 -08:00
Dane Springmeyer
84c9ee653a no need to pass orientation as const& to test_placement, which unlike get_placement_offset to does not change the value 2012-03-05 11:36:48 -08:00
Dane Springmeyer
50a417fc83 formatting 2012-03-05 11:31:58 -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
Hermann Kraus
36918e4a8b Remove warning. Empty expressions might exist in real applications without being an error. 2012-03-03 17:41:43 +01:00
Hermann Kraus
f8c784b0a6 Correctly center text. 2012-03-03 13:53:08 +01:00
Dane Springmeyer
7163806cda c++ style 2012-03-02 18:51:19 -08:00
Hermann Kraus
2bf9d9dbdf Fix handling of empty XML nodes.
Closes #1106.
2012-03-03 01:12:23 +01:00
Hermann Kraus
cc547385e6 Avoid adding the same text to detector twice. 2012-03-02 12:39:38 +01:00
Artem Pavlenko
726724b3c7 pass by ref
move conversions impl into .cpp
2012-03-01 18:36:13 +00:00
Hermann Kraus
9e397ae55e Add iterator increment which I forgot in 96d8dfb356. 2012-02-28 02:05:44 +01:00
Hermann Kraus
df4eae2f71 Merge branch 'master' of github.com:mapnik/mapnik
Conflicts:
	src/symbolizer_helpers.cpp
2012-02-28 01:48:26 +01:00
Hermann Kraus
66ef7a450a Add marker to collision detector.
Refs #1106.
2012-02-28 01:47:24 +01:00
Dane Springmeyer
82bd78d9a5 use boost::make_shared instead of new as per mapnik coding conventions 2012-02-27 16:39:34 -08:00
Dane Springmeyer
a5d7239cfc fix minor spelling in code comments 2012-02-27 16:15:36 -08:00
Hermann Kraus
96d8dfb356 Improve code a bit.
size() can be O(n) but empty() is always O(1).
2012-02-28 00:52:02 +01:00
Dane Springmeyer
1ed193728d add missing update_detector() - refs #1106 2012-02-27 15:15:27 -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
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
917e684bdd dummy decrement() and advance(p) to compile with vc10 (untested) 2012-02-24 18:07:13 +00:00
Hermann Kraus
99a3c9fec9 Remove multiple consecutive empty <xmltext> nodes. 2012-02-24 12:37:23 +01:00
Dane Springmeyer
6db1ba176b fix compile on windows by including round() from global.hpp 2012-02-23 11:46:53 -08:00
Hermann Kraus
2955983264 Fix #1095. 2012-02-23 18:10:50 +01:00
Dane Springmeyer
56aeae1b52 fix broken python linking after 6a0ce99e22 2012-02-22 16:45:02 -08:00
Dane Springmeyer
4a192c319b ensure mean_sort_cmp adheres to strict weak ordering requirement - more properly fixes #1087 2012-02-22 14:54:10 -08:00
Dane Springmeyer
f17031084c use new conversions header - refs #1055 2012-02-21 10:59:11 -08:00
Dane Springmeyer
8568c62e8e Merge branch 'master' of github.com:mapnik/mapnik 2012-02-20 22:54:09 -08:00
Dane Springmeyer
9213dd5426 fixup multi-symbolizer processing function 2012-02-20 22:53:54 -08:00
Dane Springmeyer
6a0ce99e22 maintain compile with boost <= 1.47 2012-02-20 17:09:14 -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
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
3953a94636 + geojson generator interface 2012-02-20 10:53:58 +00:00
Hermann Kraus
2ea6ab216c Fix text height calculation.
Closes #1078.
2012-02-18 16:43:05 +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
980cdd9e92 Use text_placements registry. 2012-02-18 00:39:14 +01:00
Hermann Kraus
6db956ca83 Split file. 2012-02-17 20:53:00 +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
Hermann Kraus
f06bda1c1c Split file. 2012-02-17 15:50:24 +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
Hermann Kraus
7b22d69932 Revert "+ fix shield/text positioning - we still need to floor both text and shield"
floor is removed from position calculation now, resulting in better marker and text matching.
Refs #1078.

This reverts commit 009a1e45a7.
2012-02-17 00:59:20 +01:00
Hermann Kraus
465a7621bc Merge pull request #1091 from kkaefer/character-spacing
Support character-spacing along a line.
Closes #721.
2012-02-16 15:08:56 -08:00
Hermann Kraus
44beaf1bdf Make ShieldSymbolizer variables doubles.
Refs #1078.
2012-02-17 00:03:46 +01:00
Konstantin Käfer
9ad113d724 naïvely replace ci.width with ci.width + ci.format->character_spacing 2012-02-16 23:46:44 +01:00
Artem Pavlenko
63735982ee + remove const from parameters passed by-value 2012-02-16 15:35:27 +00:00
Artem Pavlenko
ab56a63f2f Merge remote-tracking branch 'origin/master' 2012-02-15 23:31:38 +00:00
Artem Pavlenko
009a1e45a7 + fix shield/text positioning - we still need to floor both text and shield
position for consistent rendering.
2012-02-15 23:27:33 +00: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
Artem Pavlenko
6495ea8996 + clip polygons 2012-02-14 18:39:36 +00:00
Artem Pavlenko
58b51b208e use standard_wide::space 2012-02-14 18:33:05 +00:00
Hermann Kraus
be464f0c5b Move code for makers placement from hpp to cpp. 2012-02-13 20:20:09 +01:00
Dane Springmeyer
e2385178f4 install new headers fixing broken node-mapnik compile: https://github.com/mapnik/node-mapnik/issues/85 - refs #1079 2012-02-12 20:53:48 -08:00
Hermann Kraus
1fd7f9d543 Fix spelling error. 2012-02-12 22:48:44 +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
7ef1c3544e Bugfix: Collect expressions for formating::format_node. 2012-02-11 11:24:33 +01:00
Dane Springmeyer
0acd2137b8 restore agg renderer clip_box, accidentally disabled in 21d05444 - refs #1075 2012-02-10 15:14:15 -08:00
Dane Springmeyer
75e264a594 only form up ostringstream if needed 2012-02-10 12:15:23 -08:00
Dane Springmeyer
bfd79276a7 only encode if image has dimensions (avoid abort in png writer on zero size width or height) 2012-02-10 12:14:53 -08:00
Dane Springmeyer
a682212266 small optimization by avoiding repeated case sensitive checks 2012-02-10 11:20:00 -08:00
Dane Springmeyer
32ac2e464c restore compile for boost 1.42 2012-02-10 10:20:26 -08:00
Artem Pavlenko
6a015dcd59 Merge remote-tracking branch 'origin/master' 2012-02-10 11:59:12 +00:00
Artem Pavlenko
602264d368 + implement 'in situ' boost::spirit::qi based geojson parser 2012-02-10 11:56:53 +00:00
Dane Springmeyer
0748d2beea avoid mutex locks on pj_transform for proj 4.7 and above - closes #1072 2012-02-09 17:28:31 -08:00
Dane Springmeyer
656436d971 Merge branch 'master' of github.com:mapnik/mapnik 2012-02-08 15:45:31 -08:00
Dane Springmeyer
fec0750fcf remove usage of boost::lexical_cast during image encoding - refs #1055 2012-02-08 15:45:08 -08:00
Hermann Kraus
1d50aa1b85 Make interface consistent with similar classes. 2012-02-08 01:16:37 +01:00
Dane Springmeyer
8e61d9a6d2 remove used typedefs 2012-02-07 13:42:45 -08:00
Dane Springmeyer
a00af6faf8 fix debug output name 2012-02-07 13:42:22 -08:00
Artem Pavlenko
958097600c add wkt_parser class for grammar re-usage
implement from_wkt in terms of wkt_parser
2012-02-06 22:49:47 +00:00
Hermann Kraus
18d24983b6 Fix font-name checking when font-set is available. Fixes #1064. 2012-02-06 11:47:35 +01:00
Hermann Kraus
e298d141da Improve expression handling. 2012-02-05 03:11:00 +01:00
Hermann Kraus
9c92bf713d Easier syntax by hiding internal data type. 2012-02-03 00:34:14 +01:00
Dane Springmeyer
17d13cff67 whitespace fixes - closes #911 2012-02-01 17:53:35 -08:00
Dane Springmeyer
21d05444f7 manual whitespace fix 2012-02-01 17:48:56 -08:00
Dane Springmeyer
07d7d7d537 convert to using feature_ptr rather than const& for renderers 2012-02-01 16:37:05 -08:00
Dane Springmeyer
cf8e036574 warn if non bitmap (svg) files are used for pattern symbolizers as this is not currently supported - refs #1010 and #1045 2012-02-01 12:27:57 -08:00
Hermann Kraus
30bef5c955 Fast math.
@de94a3e: Yes, we need them. :-)
2012-02-01 12:49:16 +01:00
Artem Pavlenko
de94a3e82f comment out unused variables 2012-01-31 18:01:19 +00:00
Hermann Kraus
cc886d1688 Merge branch 'feature-text-merge' 2012-01-31 16:52:28 +01:00
Hermann Kraus
06ce3f7eec Merge remote-tracking branch 'herm/textplacement-merge' 2012-01-31 16:37:37 +01:00
Hermann Kraus
72f061b75a Revert 0c5fc9f246.
For new text placment branch a different solution is needed.
2012-01-31 16:36:40 +01:00
Hermann Kraus
1a16e9c5ab Remove class text_processor. 2012-01-31 16:24:58 +01:00
Artem Pavlenko
a395f974f3 small fix 2012-01-31 12:00:36 +00:00
Artem Pavlenko
e00e8f98aa if geometries are polygons, default to 'largest_box' only
for label placement.
TODO: expose settings in XML
2012-01-31 11:52:43 +00:00
Artem Pavlenko
b90de4874c Merge branch 'textplacement-merge' into feature-text-merge
Conflicts:
	docs/textrendering.gv
	include/mapnik/building_symbolizer.hpp
	include/mapnik/placement_finder.hpp
	include/mapnik/symbolizer_helpers.hpp
	include/mapnik/text_placements.hpp
	include/mapnik/text_placements_list.hpp
	include/mapnik/text_placements_simple.hpp
	include/mapnik/text_processing.hpp
	plugins/input/shape/shape_utils.hpp
	src/agg/process_shield_symbolizer.cpp
	src/agg/process_text_symbolizer.cpp
	src/cairo_renderer.cpp
	src/grid/process_shield_symbolizer.cpp
	src/grid/process_text_symbolizer.cpp
	src/load_map.cpp
	src/placement_finder.cpp
	src/shield_symbolizer.cpp
	src/text_placements.cpp
	src/text_processing.cpp
	src/text_symbolizer.cpp
	tests/visual_tests/clean.sh
	tests/visual_tests/test.py

Merge herm/textplacement-merge
2012-01-31 11:09:55 +00:00
Hermann Kraus
49225d7468 Handle additional boxes from ShieldSymbolizer. 2012-01-29 20:28:32 +01:00
Hermann Kraus
16e5fefb4d Remove text_placement_info::initialize() to avoid incorrect usage of this object. 2012-01-29 20:04:31 +01:00
Hermann Kraus
49a3b3c52c Make code easier to read by using std::pair instead of boost::tuple for position. 2012-01-29 17:33:43 +01:00
Hermann Kraus
822786e41c Remove no-text attribute. One can simply leave the text empty if one wants this. 2012-01-29 13:10:14 +01:00
Hermann Kraus
4a3a3fd82c ShieldSymbolizer for Cairo. 2012-01-29 05:03:38 +01:00
Hermann Kraus
3e59503e25 ShieldSymbolizer for Grid renderer. 2012-01-29 04:57:56 +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
ff07b4bce0 placement_element => text_path 2012-01-28 00:09:58 +01:00
Hermann Kraus
d6b8209a9d Rewrote text processing to use a tree structure.
Reduces the number of classes and simplifies extension.
2012-01-27 23:15:12 +01:00
Artem Pavlenko
84b948687d Merge branch 'master' into feature-text-merge 2012-01-27 13:27:27 +00:00
Artem Pavlenko
fc7e07137d removing as it doesn't belong in here. 2012-01-27 13:23:15 +00:00
Hermann Kraus
dbc1280731 Process more than one geometry.
Start work on ShieldSymbolizer.
2012-01-26 20:05:38 +01:00
Artem Pavlenko
5ebdd84940 format 2012-01-26 16:24:48 +00:00
Artem Pavlenko
5c6fdc780f return member variable by const reference 2012-01-26 13:07:28 +00:00
Artem Pavlenko
36a23367a6 + fix compilation issues 2012-01-26 13:05:41 +00:00
Artem Pavlenko
d1f16bb227 merge textplacement-merge into feature_impl 2012-01-26 13:04:08 +00:00
Hermann Kraus
1106dcb445 Support for cairo + grid renderer. 2012-01-25 16:17:38 +01:00
Hermann Kraus
bdc20f766b Complete symbolizer_helpers.hpp for TextSymbolizer. 2012-01-25 15:44:19 +01:00
Artem Pavlenko
d146bcc380 Merge branch 'master' into feature_impl 2012-01-25 10:04:03 +00:00
Tony Young
d0d692cb82 Add text placements to Python API. 2012-01-25 12:57:26 +13:00
Hermann Kraus
3b887972b8 Start work on new symbolizer helpers. 2012-01-23 19:02:35 +01:00
Artem Pavlenko
4b22636f3b initial implementation of multipolygon labeling strategy
based on ordering by bounding box.

TODO : sync with https://github.com/herm/mapnik/tree/textplacement
2012-01-23 16:00:55 +00:00
Hermann Kraus
2eb3662d87 Add all files to build.py. 2012-01-23 00:20:15 +01:00
Hermann Kraus
1549fd92c3 Float font sizes. 2012-01-22 21:19:35 +01:00
Hermann Kraus
31fd5647f2 Use font manager and char properties in text engine. 2012-01-22 20:51:09 +01:00
Hermann Kraus
fb0c9d6d9c Fix text_placements.cpp. 2012-01-22 20:04:13 +01:00
Hermann Kraus
b945dff774 Fix metawriters. 2012-01-22 19:57:32 +01:00
Hermann Kraus
02eca0825f Fix set_displacement(). 2012-01-22 19:17:59 +01:00
Hermann Kraus
581d35987e Disable ShieldSymbolizer in cairo_renderer.cpp (see fdd58903f9). 2012-01-22 18:47:23 +01:00
Hermann Kraus
9d2a6088b1 New placement finder. 2012-01-22 18:41:04 +01:00
Hermann Kraus
78c4464ad7 Remove next_position_only(). 2012-01-22 18:29:55 +01:00
Hermann Kraus
fdd58903f9 Disable rendering of TextSymbolizer and ShieldSymbolizer.
This avoids breaking compiles with the next changes.
2012-01-22 18:24:28 +01:00
Hermann Kraus
e66712d722 Update font engine. 2012-01-22 18:13:08 +01:00
Hermann Kraus
67eb73eab9 Return correct size information from font engine. 2012-01-22 17:53:45 +01:00
Hermann Kraus
2f02e2f4c5 Update text symbolizer to use new locations. 2012-01-22 17:27:52 +01:00
Hermann Kraus
4490e1afaf Add missing get_positions() function. 2012-01-22 16:25:19 +01:00
Hermann Kraus
af42e2decf Update save_map.cpp. 2012-01-22 16:06:28 +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
7fd9fb0c88 Small fixes. 2012-01-22 03:32:21 +01:00
Hermann Kraus
cae0c31ee8 Update text_placement_info_simple to use new functions and locations. 2012-01-22 03:23:27 +01:00
Hermann Kraus
7d01f509ab Add text_placement_info_list functions. 2012-01-22 03:11:55 +01:00
Hermann Kraus
2b26044adb Complete text_placement_info functions. 2012-01-22 03:04:37 +01:00
Hermann Kraus
c407d8340f Add default get_all_expressions function. 2012-01-22 03:01:34 +01:00
Hermann Kraus
6695fa0f5f Add functions to read and write text_symbolizer_properties and char_properties from/to XML. 2012-01-22 02:56:28 +01:00
Hermann Kraus
b7f8e356f4 Make text_path use char_info. 2012-01-22 01:43:13 +01:00