Commit graph

220 commits

Author SHA1 Message Date
Jordan Hollinger
533820c63f Merge branch 'expr-v2' of github.com:mapnik/mapnik into expr-v2-group-symbolizer
Conflicts:
	src/text/placement_finder.cpp
	tests/visual_tests/test.py
2014-02-25 14:21:51 -05:00
Dane Springmeyer
14c02e76a7 Merge pull request #2138 from MapQuest/jmh-text-layouts
Multiple text layouts in text symbolizer
2014-02-18 17:59:56 -08:00
Jordan Hollinger
07dc6e37a2 Merge branch 'expr-v2' of github.com:mapnik/mapnik into expr-v2-group-symbolizer
Conflicts:
	include/mapnik/attribute_collector.hpp
2014-02-18 18:22:01 -05:00
Jordan Hollinger
bbd2cfd40f Grid renderer implementation for group symbolizer.
This uses common process_group_symbolizer for most of the work.
Add reference grids for visual tests.
2014-02-18 16:37:41 -05:00
Matt Amos
f81d5abe1f "Implement" group symbolizer for SVG renderer.
Note that the "implementation" for SVG renderer is the same as
for other symbolizers there - i.e: empty.
2014-02-18 15:54:32 -05:00
Jordan Hollinger
3d1c30db1e Extracted a lot of code from agg render process_group_symbolizer.
Move a lot of processing into a common process_group_symbolizer function.
Also, extract column collection out of process_group_symbolizer function.
This will reduce duplication needed for other renderers.
2014-02-18 15:06:40 -05:00
Jordan Hollinger
76329028d2 Find placements and render in process_group_symbolizer.
Create a group_symbolizer_helper for group placments, and extract some code from
text_symbolizer_helper into a base class to share with group_symbolizer_helper.
Also, move tolerance_iterator into its own header file. Use helper in
process_group_symbolizer to find placement positions.
2014-02-18 14:01:04 -05:00
Jordan Hollinger
fbc2a0d1e3 Framework for group symbolizer.
This includes XML parsing of group symbolizer and related objects and
process_group_symbolizer method in the AGG renderer. This also includes
code to collect group symbolizer indexed columns, create sub features,
and match them to group rules.
2014-02-18 11:07:52 -05:00
Dane Springmeyer
b799395f6a remove unused code 2014-02-10 21:39:56 -08:00
Jordan Hollinger
6aa25090c0 Parse and support placement of multiple text layouts within a single text symbolizer. 2014-01-30 06:31:47 -05:00
Dane Springmeyer
a98de6a348 Merge branch 'master' of github.com:mapnik/mapnik into expr-v2
Conflicts:
	include/mapnik/expression_grammar_impl.hpp
	src/expression.cpp
2014-01-27 13:56:36 -08:00
Dane Springmeyer
18dbf34b72 remove env clone and instead just push DHAVE_LIBXML2 into main CPPDEFINES 2014-01-27 12:25:51 -08:00
Dane Springmeyer
777e067770 remove workaround for boost less than 1.46 since 1.47 is now the min needed - refs #1082 2014-01-27 12:24:20 -08:00
Dane Springmeyer
cd24a7b877 Merge branch 'master' of github.com:mapnik/mapnik into expr-v2
Conflicts:
	tests/cpp_tests/svg_renderer_tests/path_element_test.cpp
2014-01-26 14:12:03 -08:00
Dane Springmeyer
9944ca65ee fix -pthread issue on linux - closes #2132 2014-01-23 13:07:14 -08:00
Dane Springmeyer
f8ea04f85f fix -pthread issue on linux - closes #2132 2014-01-23 13:06:07 -08:00
Dane Springmeyer
1155a6e33d better library sort 2014-01-23 00:42:41 -08:00
Dane Springmeyer
cd4c645032 boost threads are no longer needed 2014-01-23 00:42:05 -08:00
Dane Springmeyer
499d485151 another try to fix linking order on linux 2014-01-23 00:13:39 -08:00
Dane Springmeyer
7520c15e86 Merge branch 'master' of github.com:mapnik/mapnik into expr-v2 2014-01-22 20:48:07 -08:00
Dane Springmeyer
97d737fa7b scons: fix variable name 2014-01-22 00:10:28 -08:00
Dane Springmeyer
4742aea92b scons: fix variable name 2014-01-22 00:10:11 -08:00
Dane Springmeyer
7ad2e5b43d finish support for disabling soname on linux 2014-01-21 21:35:10 -08:00
Dane Springmeyer
4fda93bf3e finish support for disabling soname on linux 2014-01-21 21:34:43 -08:00
Dane Springmeyer
edd0f24997 add ENABLE_SONAME option + embed rpath/loader_path by default - closes #1225 2014-01-21 21:12:55 -08:00
Dane Springmeyer
99bf263afd Merge branch 'master' of github.com:mapnik/mapnik into expr-v2 2014-01-21 21:01:48 -08:00
Dane Springmeyer
0e38731152 add ENABLE_SONAME option + embed rpath/loader_path by default - closes #1225 2014-01-20 20:16:08 -08:00
Dane Springmeyer
2a826e7fc8 fix linux linking order in python bindings 2014-01-20 11:15:10 -08:00
Matt Amos
a76e441174 Factored out common renderer fields.
The idea here is that much of the code in the renderers and the
various `process_*` rendering methods is shared, but this sharing
is obfuscated by the lack of sharing of renderer fields and
methods.

This is the first step in trying to factor out commonalities in
order to simplify the implementation of the renderers and make
them easier to understand and modify.
2013-12-05 16:21:55 +00:00
Dane Springmeyer
e9ca9c8790 symbolizer-expressions replayed against latest master 2013-11-27 22:50:15 -08:00
Dane Springmeyer
64d5153aea Improved support for international text
- Implementation by @herm for GSOC 2012 (http://mapnik.org/news/2012/10/06/gsoc2012-status9/)
 - C++11 port, improvements, optimizations by @artemp
 - Testing and integration with master by @springmeyer
 - Thank you to all the support from @behdad along the way
 - Thanks for help testing @toton6868, @stephankn, @nirvn, @mfrasca, @simonsonc and many others

Refs: #2073,#2070,#2038,#2037,#1953,#1820,#1819,#1714,#1634,#1547,#1532,#1319,#1208,#1154,#1146
2013-11-22 00:06:32 -08:00
Dane Springmeyer
03fdf7e596 Merge branch '2.3.x' of github.com:mapnik/mapnik
Conflicts:
	src/deepcopy.cpp
	src/expression.cpp
	src/rule.cpp
2013-11-13 20:00:13 -08:00
Dane Springmeyer
5de5ffb764 remove unused and broken deepcopy support to be replaced in #2081 - refs #1390 and #946 2013-11-13 19:26:17 -08:00
Dane Springmeyer
c7a6265869 organize text code in subdirectory 2013-11-07 20:09:22 -08:00
Dane Springmeyer
08fa9fd8ec Merge branch '2.3.x' of github.com:mapnik/mapnik
Conflicts:
	bindings/python/mapnik_building_symbolizer.cpp
	bindings/python/mapnik_debug_symbolizer.cpp
	bindings/python/mapnik_line_pattern_symbolizer.cpp
	bindings/python/mapnik_line_symbolizer.cpp
	bindings/python/mapnik_markers_symbolizer.cpp
	bindings/python/mapnik_point_symbolizer.cpp
	bindings/python/mapnik_polygon_symbolizer.cpp
	bindings/python/mapnik_python.cpp
	bindings/python/mapnik_raster_symbolizer.cpp
	bindings/python/mapnik_shield_symbolizer.cpp
	bindings/python/mapnik_symbolizer.cpp
2013-11-07 09:21:05 -08:00
Dane Springmeyer
d0619bc402 update copyright year for scons build files 2013-11-05 16:54:13 -08:00
Dane Springmeyer
710d558218 scons: simplify linkflags/ldflags setting / attempt to fix #2025 2013-10-22 16:35:46 -04:00
artemp
e231117504 == c++11
+ remove remaining boost::thread usage
+ don't link to boost_thread
2013-10-11 14:18:35 +01:00
Dane Springmeyer
b0436a3ad1 scons: unbreak memory mapped access for shapefiles by fixing the setting of SHAPE_MEMORY_MAPPED_FILE 2013-09-19 20:51:49 -07:00
Dane Springmeyer
02f2fbdf8b always link libdl on linux - needed on some systems after #1804 - closes #1998 2013-09-01 22:02:52 -07:00
Dane Springmeyer
4eef244e73 move SHAPE_MEMORY_MAPPED_FILE to be a global define 2013-08-13 14:48:04 -04:00
Dane Springmeyer
78b4980352 finish exposing mapnik.Feature.from_geojson 2013-07-30 15:45:46 -04:00
Dane Springmeyer
844baa8c5b scons: when linking statically on linux always link -ldl 2013-07-30 02:51:07 -04:00
Dane Springmeyer
4f01eb05b1 scons: correctly propagate DEFINES across builds 2013-07-23 20:03:00 -04:00
Dane Springmeyer
ef4dfeb747 make it possible to disable compilation of grid_renderer - closes #1962 2013-07-23 19:37:25 -04:00
Dane Springmeyer
6bbbe155fe remove RENDERING_STATS compile time option - refs #1956 2013-07-19 15:09:59 -04:00
Dane Springmeyer
512f06fa44 scons: only compile optional cpp files that really can be built 2013-07-19 12:49:44 -04:00
Dane Springmeyer
a141c5c27d webp encoding/decoding support - refs #1955 2013-07-19 01:09:17 -04:00
Dane Springmeyer
43723d3f81 scons: link zlib last 2013-07-15 00:19:03 -04:00
Dane Springmeyer
0365d3e081 start centralizing filesystem operations in mapnik::util::fs - refs #1177 2013-06-02 19:28:24 -07:00
Dane Springmeyer
ef1b99532b scons: fix boost_regex and sqlite_rtree config checks and be resilient to plugins that cannot be built due to the boost version 2013-06-02 14:56:21 -07:00
Dane Springmeyer
dcc4981b13 mapnik-config: report which plugins are statically compiled by providing defines 2013-06-02 13:30:46 -07:00
Dane Springmeyer
ce34be6aab fix #1853 2013-05-21 20:18:37 -07:00
Dane Springmeyer
8634a04938 add support for drawing all geometry verticies with debug symbolizer mode=vertex and expose in python - closes #1848 2013-05-21 19:21:35 -07:00
Dane Springmeyer
3fbf4df67d add support for statically linking datasource input plugins - closes #1810 and #1821 - refs #249 2013-05-16 11:55:58 -07:00
Dane Springmeyer
79a216f349 remove ltdl to reduce dependencies and because calling dlopen/LoadLibrary is easy 2013-04-09 19:37:02 -07:00
Dane Springmeyer
e2c7283522 Added new mapnik-config options: git-describe, defines, includes, dep-includes, and cxxflags - closes #1443 2013-03-13 19:49:59 -07:00
Dane Springmeyer
6a00f92517 Merge branch 'master' of github.com:mapnik/mapnik into map-request 2013-02-25 16:49:45 -05:00
Dane Springmeyer
e802943469 only build tiff/png readers if support is requested 2013-02-22 16:55:02 -08:00
Dane Springmeyer
3f9e232b9a scons: only link in libraries that are required by the build 2013-02-22 15:13:39 -08:00
Dane Springmeyer
dcbd92cc58 sync with master 2013-02-21 11:40:19 -08:00
Dane Springmeyer
2648f8f49a first stab at moving mutable render request properties out of apply_to_layer 2013-02-20 19:52:54 -08:00
artemp
747305253c + link clipper obj's into core lib 2013-02-19 10:06:59 +00:00
Dane Springmeyer
f8b1520d1a refactor projection interface: 1. cleanup custom lonlat<->merc code. 2. centralize proj4 strings into constants, 3. tweak projection benchmarking to allocate objects in loop so we can test that specifically - refs #1703 2013-01-28 01:47:32 -05:00
Dane Springmeyer
805664056a append rather than prepend cairo paths to ensure that internal/local paths come first as per the last configure sort by priority 2013-01-10 17:08:58 -08:00
Dane Springmeyer
94ff584190 finish complete removal of any trace of cairomm/libsigc++ - amends f25d4d9279 and closes #1681 2013-01-09 12:49:39 -08:00
artemp
f25d4d9279 + implement cairo_context wrapper and remove unnecessary dependencies
( cairomm, libsigc++)
2013-01-09 17:00:30 +00:00
Dane Springmeyer
648105c2c4 move params impl to cpp to avoid overhead of lexical cast header compile which would otherwise be included implicitly in every datasource plugin 2013-01-04 09:24:35 -08:00
Dane Springmeyer
70ef017f8c move karma out of header to radically speed up compile times of files including image_filter_types.hpp 2013-01-04 00:07:57 -08:00
Dane Springmeyer
c7ed1f93d7 update svg_renderer 2012-12-17 19:13:00 -08:00
Dane Springmeyer
388ac9799d add a local symlink on linux to libmapnik.so.MAJOR.MINOR to enable easy local testing (without install) - refs #1618 2012-12-02 19:15:22 -08:00
Dane Springmeyer
5a99d7fbdb add miniz support - closes #1554 2012-11-04 07:10:05 -05:00
Dane Springmeyer
cea31234fa allow building svg_renderer again - refs #1438 2012-11-01 10:07:29 -07:00
Dane Springmeyer
a7f2eacd76 scons: only depend on libagg if it will be built 2012-10-10 10:19:24 -07:00
Dane Springmeyer
1468133bc0 ensure we rebuild libmapnik if agg sources change 2012-10-01 18:22:12 -07:00
Dane Springmeyer
ef28a1db80 cleanup includes in rule/feature_style_processor and move code to rule.cpp and raster_symbolizer.cpp 2012-10-01 15:01:12 -07:00
artemp
01ae1a179d Merge branch 'master' into conv_simplify 2012-09-17 11:35:15 +01:00
Dane Springmeyer
ad8e4e4cc7 Merge pull request #1366 from mapnik/debugsymbolizer
Debug Symbolizer
2012-09-14 16:43:38 -07:00
artemp
5f8bb423e8 Merge branch 'conv_simplify' of git://github.com/kkaefer/mapnik into kkaefer-conv_simplify 2012-09-06 13:12:39 +01:00
Colin Rundel
dc3763885c More parser clean up - color parser
Dropped color_factory class in favor of single color_parser function. Moved implementation to new color_factory.cpp since it is odd to have two headers (color.hpp, color_factory.hpp) and only one source file.
2012-08-29 16:41:48 -04:00
Konstantin Käfer
ae865a59fb Merge branch 'master' into conv_simplify
Conflicts:
	include/mapnik/vertex_converters.hpp
2012-08-28 20:37:27 +02:00
Dane Springmeyer
5120d0398d add build file for headers and svg/output code directories to hold the svg_renderer used for output - refs #1438 2012-08-27 17:58:49 -07:00
Dane Springmeyer
ac418a7d4e remote the last references 2012-08-27 16:43:40 -07:00
Konstantin Käfer
13c46b6cc6 Merge branch 'master' into conv_simplify
Conflicts:
	bindings/python/mapnik_line_symbolizer.cpp
	bindings/python/mapnik_polygon_symbolizer.cpp
2012-08-24 23:29:43 +02:00
Konstantin Käfer
4e1423cefe Merge branch 'master' of git://github.com/mapnik/mapnik into conv_simplify
Conflicts:
	src/cairo_renderer.cpp
2012-08-24 23:24:31 +02:00
Dane Springmeyer
05fdb5424b more fully disable the svg_renderer backend - refs #1438 2012-08-23 10:10:18 -07:00
Dane Springmeyer
bf3efbeab8 move image filter grammar to cpp and re-use in load map by attaching to xml_tree - closes #1435 2012-08-23 08:13:22 -07:00
artemp
9810557cdc + geojson geometry parser implementation 2012-08-17 12:47:41 +01:00
artemp
21f86761a7 + json: split feature_grammar into geometry and feature grammars 2012-08-17 11:25:21 +01:00
Konstantin Käfer
22150f908f add facilities to choose the simplification algorithm 2012-08-16 16:53:38 +02:00
Dane Springmeyer
9aa0eec63d fix naming of wkt_generator 2012-08-15 16:44:23 -07:00
artemp
aecf0531f5 + remove metawriters for the upcoming 2.1 release 2012-08-15 09:47:03 +01:00
Dane Springmeyer
9d9c525de0 revert 1dfde78 and properly avoid clipping for point type geometries in markers_symbolizer while moving markers_placement to cpp file to avoid overhead of declaring all possible permutations of vertex convertors - closes #1341 2012-07-31 17:27:52 -07:00
Hermann Kraus
f3326115ac Add debug symbolizer. 2012-08-01 01:16:48 +02:00
artemp
f0ada2b284 + remove colorizer (@springmeyer - was it intentional?) 2012-07-25 10:00:08 +01:00
Dane Springmeyer
1dfde7846b default to not clipping for markers_symbolizer as a temporarily workaround for #1341 2012-07-24 19:56:08 -07:00
Dane Springmeyer
ebf87969e4 move css_color and path_expression grammars to cpp 2012-07-24 15:43:32 -07:00
Dane Springmeyer
3f444302f0 move wkb_generator.cpp to cpp to reduce grammar compilation burden in the python bindings 2012-07-24 15:04:39 -07:00
Dane Springmeyer
29deca8db8 shave off 4 seconds from xml_node.cpp compile time (16 -> 12) by moving transform grammar to cpp - refs #1267 2012-07-23 18:12:10 -07:00
Dane Springmeyer
348dfff0c7 move feature_grammar to cpp file reducing compile time mem usage for feature_collection_parser.cpp - refs #1267 2012-07-23 17:03:06 -07:00