Matt Amos
44e69e9b05
Cairo renderer implementation of group symbolizer.
...
This uses the renderer_common header to do most of the heavy
lifting, but otherwise is very similar to the AGG renderer
implementation.
Add cairo ref images for group symbolizer tests.
2014-02-18 15:45:11 -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
Matt Amos
b85e7d0764
Added method to extract bounding boxes for symbolizers.
...
This is done by creating a fake 'virtual' environment at a fake
point and running the symbolizer render code. The actual render
is saved in a thunk for after the group layout has been done.
2014-02-18 11:11:06 -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
Jordan Hollinger
269b038147
Extract text layout related properties (e.g. displacement, alignments) into seperate object from other placement related text symbolizer properties.
2014-01-30 06:01:57 -05:00
Dane Springmeyer
c86cf6e5f9
remove uneeded header
2014-01-29 10:42:28 -08:00
artemp
5416bd6c3a
impl move ctor
2014-01-29 18:08:21 +00:00
artemp
4a2c5d84b7
make ImageData explicitly movable
2014-01-29 14:39:56 +00:00
artemp
5a1888a3b9
mapnik::color operator=
2014-01-29 09:56:44 +00:00
artemp
6ccaf8beb2
1. return by ref from operator=
...
2. provide operator= overload
2014-01-28 16:50:41 +00:00
artemp
9b08d1ba00
unify assignment op's
2014-01-28 16:49:52 +00:00
artemp
c6b96d2f36
remove vertex_type (unused)
2014-01-28 16:19:36 +00:00
artemp
1d8d5964d4
operator= overload
2014-01-28 16:18:47 +00:00
artemp
1aa6cafea1
remove noexcept - we can't guarantee noexcept in std::swap(a,b)
...
and
```c++
static_assert( noexcept ( std::swap(*this,rhs)), "throwing swap");
```
would fail at compile time
2014-01-28 14:21:58 +00:00
artemp
322b378971
operator= using std::swap §
2014-01-28 10:57:26 +00:00
artemp
6f81c88f9a
mapnik::Map - implement assignment-op in terms of swap
2014-01-28 09:58:47 +00: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
84166882d9
minimum boost version is 1.47 - remove obsolete code handling older versions
2014-01-27 13:19:21 -08:00
Dane Springmeyer
dec15c257b
geometry envelope: calculate size once
2014-01-27 12:19:49 -08:00
Dane Springmeyer
c5aad93428
fix topojson compile and centralize confix workaround
2014-01-26 16:19:27 -08:00
Dane Springmeyer
63ea37b4c2
further no terminal port
2014-01-26 14:49:03 -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
0fc7b8bc01
include <array> header for std::array
2014-01-26 13:45:29 -08:00
Dane Springmeyer
29e7b19007
boost::array -> std::array
2014-01-26 13:44:30 -08:00
Dane Springmeyer
8181aa9dec
addLayer -> add_layer (change also coming in expr-v2 branch)
2014-01-26 13:41:30 -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
328df74c13
correct include for std::min/max
2014-01-22 17:02:28 -08:00
Dane Springmeyer
cdaa31aa5e
Revert "branch 2.3.x from master at v2.2.0-242-ge85cdda"
...
This reverts commit 9e66317af1
.
2014-01-20 14:39:28 -08:00
Dane Springmeyer
2b08987903
Merge branch 'master' into expr-v2
2014-01-17 19:59:05 -08:00
artemp
3628b5f237
halo-transform initial impl
2014-01-17 11:47:18 +00:00
Dane Springmeyer
833cfb9827
Revert "branch 2.3.x from master at v2.2.0-242-ge85cdda"
...
This reverts commit 9e66317af1
.
2014-01-09 12:39:35 -08:00
artemp
d9f289e4f2
Merge branch 'MapQuest-mla-expr-v2-renderer-common' into expr-v2
2014-01-07 16:05:56 +00:00
Matt Amos
fcbc727f63
scale_factor_
now in common_
.
2014-01-07 16:00:11 +00:00
artemp
2884bd0443
fix : use 'template' keyword to treat 'set' as a dependent template name error (clang)
2014-01-07 15:52:28 +00:00
Matt Amos
6479785648
Merge remote-tracking branch 'upstream/expr-v2' into mla-expr-v2-renderer-common
2013-12-19 14:09:09 +00:00
Dane Springmeyer
e52b4ebf9a
harfbuzz_shaper: just call hb_shape not hb_shape_full
2013-12-18 12:22:40 -05:00
artemp
5dae2999b1
symbolizers: set_property helper
2013-12-11 17:27:52 -05:00
artemp
f21152a6a9
register target type for symbolizer properties
2013-12-11 17:27:52 -05:00
artemp
d5a0537471
convert json value into symbolizer_base::value_type
2013-12-11 17:27:52 -05:00
artemp
7cf452da77
generic ``to_integral
`` helper function (convert strongly typed enumeration values to underlying type)
2013-12-11 17:27:52 -05:00
artemp
b7dda95d84
move symbolizer to json into core
...
symbolizer json grammar (needs more work)
2013-12-10 15:51:07 -05:00
Matt Amos
5e13658cf9
Merge remote-tracking branch 'upstream/expr-v2' into mla-expr-v2-renderer-common
2013-12-10 11:47:36 +00:00
Matt Amos
ceaea9a948
Factored out common implementation of polygon symbolizer.
2013-12-09 20:42:00 +00:00
Dane Springmeyer
eca1c6e46b
Merge branch 'master' of github.com:mapnik/mapnik into expr-v2
...
Conflicts:
src/load_map.cpp
2013-12-09 11:40:55 -08:00
Matt Amos
dd9584bdd6
Factored out markers symbolizer logic.
...
It's not ideal - there's still a bunch of "dispatch" objects from
which the common elements could be factored for greater
readability.
2013-12-09 18:50:00 +00:00
Dane Springmeyer
3376a2e1a0
avoid duplicate call to start_layer_processing
...
Conflicts:
include/mapnik/feature_style_processor_impl.hpp
2013-12-07 15:11:26 -08:00
Matt Amos
f01953e8f7
Factored out common implementation of raster symbolizer.
2013-12-06 18:09:24 +00:00
Matt Amos
da5574d247
Factored out common implementation of point symbolizer.
2013-12-06 17:30:06 +00:00
Matt Amos
05982c4caf
Factored out common code for building symbolizer.
...
There's a lot of code common between symbolizers which do things
like layout, setup, etc... So it seems sensible to extract the
common operations & loops into a single place which is
independent of the actual renderer.
I've started doing this with C++11 lambdas, although that might
not be the best implementation long term. Should be easy enough
to change, though.
2013-12-06 16:33:26 +00:00