Dane Springmeyer
9dae68ebbf
add builds scripts for json/wkt grammars
2014-10-13 01:07:11 -07:00
Dane Springmeyer
44bc5b59d6
break out wkt/json grammars into separate libraries
2014-10-13 01:06:36 -07:00
Dane Springmeyer
885a98f9c1
improve handling of format properties - refs #2516
...
- changes evaluated_format_properties_ptr to unique_ptr
- refactors group symbolizer helper to keep scope by
having each "thunk" own its helper
- glyph_info can now be noncopyable
- format node children now need an owner for their
evaluated_format_ptr so the enclosing parent layout
now allocates and holds pointers in a deque
- plus other noncopyable/move constructor fixes
2014-10-12 21:41:59 -07:00
Dane Springmeyer
38b944aef7
break apart expression+transform grammars - refs #2526
2014-10-12 16:36:33 -07:00
Dane Springmeyer
a9f58c70b4
shuffle complexity into layout constructor
...
- should reduce mistakes in refactoring
- gives top level ownership of evaluated_format_properties_ptr to a layout node (#2516 )
- not sure ^^ if this actually keeps it in scope enough for rendering?
- moves data transformation functions off of text_symbolizer_properties
2014-10-12 16:07:26 -07:00
Dane Springmeyer
f3eba54078
noncopyable glyph_info - refs #2516
2014-10-12 14:24:57 -07:00
Dane Springmeyer
2000c1713d
in place construction of glyph_positions
2014-10-12 13:54:07 -07:00
Dane Springmeyer
4e7feaf747
move glyph_positions to new cpp
2014-10-12 13:46:35 -07:00
Dane Springmeyer
39ff0945ef
in place construction of pixel_positions
2014-10-12 13:38:18 -07:00
Dane Springmeyer
e4c895d4c1
zero copy usage of text_line
2014-10-12 13:23:03 -07:00
Dane Springmeyer
a648538bcd
add more code comments to placement_finder to help explain layouts
2014-10-12 12:18:59 -07:00
Dane Springmeyer
a8c8ea9ac4
reserve space for glyph_pos in renderer prepare_glyphs
2014-10-11 22:59:56 -07:00
Dane Springmeyer
3d142c2712
move evaluate_text_properties to standalone function - refs #2516
2014-10-11 22:48:00 -07:00
Dane Springmeyer
e6a66aaaba
finish work to pass font_feature_settings by value - refs #2516
2014-10-11 22:39:40 -07:00
Dane Springmeyer
a61364d263
revert halign support - refs #2426
2014-10-11 20:03:56 -07:00
Dane Springmeyer
477d6cc7ee
zero-copy text_item insertion
2014-10-11 19:12:15 -07:00
Dane Springmeyer
eabdf46118
drop unwise glyph_info caching - reverts 99a46f6910
- re-opens #2334
2014-10-11 17:32:41 -07:00
Dane Springmeyer
d4f0d51a91
cairo text rendering: avoid double call of set_character_sizes for text and halo
2014-10-11 16:59:22 -07:00
Dane Springmeyer
ba285aa9fa
remove unused (after 8bc7a56cda
) font_face::char_height_
2014-10-11 15:55:15 -07:00
Dane Springmeyer
b275144004
make cairo_context.add_text more like agg::text_renderer
2014-10-11 13:08:28 -07:00
Dane Springmeyer
51620e2b4d
cairo: avoid creating evaluated_format_properties_ptr on stack
2014-10-11 11:37:16 -07:00
Dane Springmeyer
e1eb9fa5b1
reduce pointer usage in text renderer - refs #2516
2014-10-10 18:01:24 -07:00
Dane Springmeyer
8bc7a56cda
use real max glyph height
...
- avoids breakage on fonts lacking an `X` glyph (#2506 )
- avoids needing to create and mutate a temporary glyph (#2516 )
- lots of minor visual changes - mostly improvements notably more correct collision boxes for lines with tall glyphs
2014-10-10 15:18:11 -07:00
artemp
74e872c48b
avoid storing evaluated text properties in text_symbolizer_properties (all style related strucures must be read-only)
...
make process(..) method const
2014-10-10 12:38:06 +01:00
Dane Springmeyer
c6ed108a72
start marking as much of the text structures as const as possible - refs #2516
2014-10-09 23:00:39 -07:00
Dane Springmeyer
2d88f736fe
remove uneeded access to format tree
2014-10-09 20:51:43 -07:00
Dane Springmeyer
c26c60e48e
remove set_old_style_expression
2014-10-09 20:51:43 -07:00
Dane Springmeyer
364af033a2
stash work on trying to convert font_feature_settings to be passed by value
2014-10-09 19:23:11 -07:00
Dane Springmeyer
536b23bfde
fix uneeded pointer indirection with glyph_info/glyph_position
2014-10-09 18:38:29 -07:00
Dane Springmeyer
aed5243302
avoid creating evaluated_format_properties on the stack
2014-10-09 18:24:39 -07:00
Dane Springmeyer
38567d8213
font_set: explicitly initialize face_names_ member
2014-10-09 17:36:51 -07:00
Dane Springmeyer
1fead3396b
cleanup unused clipped_ member of base_symbolizer_helper after 9835057b0f
2014-10-09 11:40:30 -07:00
Dane Springmeyer
c4857c640b
clean up string handling in font_set::add_face_name
2014-10-08 16:46:48 -07:00
Dane Springmeyer
1f29ce7d3d
back to using shared_ptr for holding text_placement_info
2014-10-08 16:28:07 -07:00
Dane Springmeyer
a24b29624a
remove unused include
2014-10-08 16:27:38 -07:00
Dane Springmeyer
65438f17aa
further tests of path expressions for shields
2014-10-08 08:00:59 -07:00
Dane Springmeyer
41009bfeb3
fix font caching logic
2014-10-07 00:21:52 -07:00
Dane Springmeyer
c2fe4a14be
drop useless template usage for has_key
2014-10-06 23:21:13 -07:00
Dane Springmeyer
934f0dec1d
warn if duplicate attribute - closes #2508
2014-10-06 23:20:43 -07:00
Dane Springmeyer
7ce776a79c
fix handling of shield-text-opacity/text-opacity - closes #2507
2014-10-06 21:52:29 -07:00
Dane Springmeyer
51f62ad083
dodge #2505 by avoiding registering gdal/ogr plugin
2014-10-06 18:19:52 -07:00
Dane Springmeyer
1ae43a25ff
text_properties code cleanup - pregame for #2504
2014-10-06 16:59:49 -07:00
Dane Springmeyer
f733c7f2ac
comment debug code
2014-10-06 14:31:11 -07:00
Dane Springmeyer
1670fdabf0
fix line symbolizer 'rasterizer' property - closes #2503
2014-10-06 14:10:43 -07:00
Dane Springmeyer
737c299341
fix back compat for text-placement-type:dummy - closes #2502
2014-10-06 11:37:39 -07:00
jhollinger2
5ca07a26d1
Refactor marker helpers for agg and grid renderer.
2014-10-06 14:03:48 -04:00
Dane Springmeyer
e0ba9e9a8c
use common dispatch for symbolizers
2014-10-03 19:07:08 -07:00
Dane Springmeyer
2cf3990e0d
warn if fontset not found and load_map is not in strict mode - closes #1791
2014-10-03 17:43:44 -07:00
Dane Springmeyer
ebf7a61135
fix unsafe return of temporary - closes #2493
2014-10-03 16:39:25 -07:00
Dane Springmeyer
2925a70046
c++ style / delay std::string creation in xml loading
2014-10-03 16:39:25 -07:00
Dane Springmeyer
b09df2fa13
Merge pull request #2490 from MapQuest/group-margin
...
Use margin attribute in group symbolizer
2014-10-03 12:19:02 -07:00
jhollinger2
4dfa76a0fc
Update group symbolizer collision to use margin instead of minimum-distance. Add test case.
2014-10-03 13:46:23 -04:00
artemp
e8b3083a6a
remove std::function usage in text_properties
2014-10-03 16:00:05 +01:00
Dane Springmeyer
f81fc53cbc
fix compile on windows of font_feature_settings.cpp - refs #2489
2014-10-02 16:31:16 -07:00
Dane Springmeyer
109b45a0ad
c++ style
2014-10-02 15:37:55 -07:00
Dane Springmeyer
dfaa860522
Revert "min compiler is g++ 4.8 - refs #2486 "
...
This reverts commit 612b4a0207
.
2014-10-02 13:23:35 -07:00
Jiri Drbalek
47c9d77f8f
Merge pull request #2485 from mapycz/fix-text-layout-wrap-char
...
add wrap-character support to Layout node of TextSymbolizer
2014-10-02 21:36:31 +02:00
Dane Springmeyer
612b4a0207
min compiler is g++ 4.8 - refs #2486
2014-10-02 12:04:32 -07:00
Jiri Drbalek
5861980f91
add wrap-character support to Layout node of TextSymbolizer
2014-10-02 18:34:37 +00:00
artemp
2bab0512ff
refactor vertex_cache to use unique_ptr's and less copying
2014-10-02 16:36:50 +01:00
artemp
a04276d90a
use c++11 features over boost when available
2014-10-02 15:09:17 +01:00
Jiri Drbalek
667b6e3adc
fix compile on ubuntu precise
2014-10-02 12:18:39 +00:00
Dane Springmeyer
66889d32f9
only memcache local fonts if not already globally known and not already cached (avoid extra io for ttc)
2014-10-02 00:47:32 -07:00
Dane Springmeyer
0efb6964ef
per map load cache if a fonts is known as valid
2014-10-01 20:59:05 -07:00
Dane Springmeyer
687a33575c
fast, non-caching check if a font can be opened and read
2014-10-01 20:32:03 -07:00
Dane Springmeyer
ad7e619ba3
remove state from freetype_engine - now fully static
2014-10-01 20:03:03 -07:00
Dane Springmeyer
898d58c4f5
face_set_ptr can be unique rather than shared
2014-10-01 19:01:26 -07:00
Dane Springmeyer
d29add9db3
use face_manager_freetype typedef everywhere
2014-10-01 18:54:11 -07:00
Dane Springmeyer
767c51cea2
add missing stdexcept include
2014-10-01 18:51:17 -07:00
Dane Springmeyer
d96093d3aa
rebase with master
2014-10-01 18:45:28 -07:00
Dane Springmeyer
23cb5dd47d
new util::file class wrapping cstdio + more library usage
2014-10-01 18:31:04 -07:00
Dane Springmeyer
e6fe3cd8a6
new font_library raii class
2014-10-01 18:19:26 -07:00
Dane Springmeyer
83533c16c6
fix add_layer move signature - refs #2453
2014-10-01 14:20:58 -07:00
Dane Springmeyer
aae56fa387
avoid style, layer, and fontset copies in load_map - refs #2453
2014-10-01 14:09:09 -07:00
Dane Springmeyer
32f80b2b3e
fix layer buffer default
2014-10-01 14:08:08 -07:00
Dane Springmeyer
9b2c14466c
explicit move ctor for feature_type_style
2014-10-01 13:54:44 -07:00
Dane Springmeyer
ed3bc1d411
explicitly initialize all members of layer class in ctor
2014-10-01 13:53:12 -07:00
Dane Springmeyer
9ecdc839b5
c++ style
2014-10-01 11:24:41 -07:00
artemp
745d45bb68
remove std::function from placement loop
...
(std::function incurs overhead of polymorphic dispatch internally and relatively expensive - avoid using in performance critic code)
2014-10-01 11:26:14 +01:00
Dane Springmeyer
e9e5ec4a6b
quick fix for #2451
2014-09-30 21:29:55 -07:00
Dane Springmeyer
4c07585312
fix #2464
2014-09-30 21:16:29 -07:00
Dane Springmeyer
4cbc139689
remove boost::format usage
2014-09-30 18:35:07 -07:00
Dane Springmeyer
ad43b37672
Merge branch 'master' of github.com:mapnik/mapnik into localized-font-cache
2014-09-30 14:42:15 -07:00
Dane Springmeyer
09b02ddc17
Merge branch 'master' of github.com:mapnik/mapnik into localized-font-cache
...
Conflicts:
src/build.py
2014-09-30 14:42:01 -07:00
Dane Springmeyer
f34d12094c
new files
2014-09-30 12:50:42 -07:00
Dane Springmeyer
822d3a5bce
break apart symbolizer.hpp + fwd declars + svg output grammar impl
2014-09-30 12:50:08 -07:00
Dane Springmeyer
8752271910
code cleanup
2014-09-29 19:59:59 -07:00
Dane Springmeyer
40a1189357
chip away at complexity of marker_helpers.hpp
2014-09-29 19:32:22 -07:00
Dane Springmeyer
dc57849b7d
geometry container typedef fixing
2014-09-29 18:40:57 -07:00
Dane Springmeyer
d0b167affc
iwyu shuffle
2014-09-29 17:14:40 -07:00
Dane Springmeyer
3ee609112a
using pimpl to isolate boost::regex headers - refs #2439
2014-09-29 16:48:19 -07:00
Dane Springmeyer
aaec8058fa
fix property name in error message
2014-09-29 16:32:46 -07:00
Dane Springmeyer
848370c678
speed up compile / move iomanip to cpp - refs #2439
2014-09-29 13:49:56 -07:00
Dane Springmeyer
89f64f6b97
avoid spirit usage in function_call.hpp - refs #2439
2014-09-29 13:12:46 -07:00
Dane Springmeyer
b7b39d4444
add missing file
2014-09-29 12:11:03 -07:00
Dane Springmeyer
688e97e148
move dasharray parser to cpp file - refs #2439
2014-09-29 12:07:15 -07:00
artemp
95d13e0b3d
Merge branch 'master' into vertex-converter
2014-09-29 12:34:54 +01:00
artemp
4f67ec0fc7
update cairo and grid renderers to use new vertex_converters
2014-09-29 12:25:34 +01:00
Dane Springmeyer
4541a2207b
simplify code in create_face
2014-09-28 23:54:24 -07:00
Dane Springmeyer
11d8f40342
add code comments to create_face
2014-09-28 23:32:29 -07:00
Dane Springmeyer
0a1906f7a6
cleanup
2014-09-28 23:32:02 -07:00
Dane Springmeyer
5f0b5ddafd
ignore font cache in map assignment and comparison
2014-09-28 23:31:48 -07:00
Dane Springmeyer
7b97e3ace8
unique_ptr for font_face_set
2014-09-28 22:35:08 -07:00
Dane Springmeyer
e21e8b6696
c++ style
2014-09-28 22:20:59 -07:00
Dane Springmeyer
d1adabf7d5
3.x port of localized font caching and then some
2014-09-26 19:54:07 -07:00
artemp
130e621ace
use c++11 in vertex_converters (work-in-progress)
2014-09-26 12:41:03 +01:00
Dane Springmeyer
385a77fc47
pass map to renderer common (viable after 60a55cb48
, needed for upcoming font changes)
2014-09-25 22:37:43 -07:00
Dane Springmeyer
60a55cb48b
noncopyable renderer_common (needed for upcoming font work)
2014-09-24 22:46:19 -07:00
Dane Springmeyer
a26a82dc12
allow font re-registration - closes #1895
2014-09-24 18:22:45 -07:00
Dane Springmeyer
eb8686388f
add to string impl for length func - closes #2437
2014-09-24 17:37:16 -07:00
Dane Springmeyer
aa239a65ed
remove unneeded include
2014-09-24 12:23:54 -07:00
artemp
4be6ca37e9
c++11 - use auto
2014-09-23 18:49:31 +01:00
Jiri Drbalek
31607cb3f4
add text attribute horizontal-alignment="adjust"
2014-09-23 08:49:27 +00:00
Dane Springmeyer
d59529d22f
map ExpressionFormat -> Format for 2.3.x back compat - refs #2429
2014-09-22 23:34:36 -07:00
Dane Springmeyer
69dd74e079
rename wrap-char -> wrap-character to match Mapnik 2.3.x - refs #2333
2014-09-19 16:53:03 -07:00
Dane Springmeyer
0c901f790e
respect halo-transform in grid_renderer
2014-09-19 15:37:13 -07:00
Dane Springmeyer
9e78712dc4
Merge pull request #2377 from mapycz/3.x-fix-text-on-line-glyph-distance
...
text rendering with line placement on corners in 3.x
2014-09-19 15:12:32 -07:00
Dane Springmeyer
98adcc2d58
fix compile with clang++ after #2416
2014-09-19 14:51:27 -07:00
Dane Springmeyer
753cd5d6a0
Merge pull request #2416 from mapycz/add-font-features
...
add font-feature-settings
2014-09-19 14:30:17 -07:00
Jiri Drbalek
57be44d815
text ligatures off when character-spacing > 0
2014-09-17 19:22:14 +00:00
Jiri Drbalek
2dcfa9e4b7
add font-feature-settings
2014-09-17 19:22:07 +00:00
Jiri Drbalek
e6a32f22cf
fix image painted
2014-09-16 18:54:52 +02:00
Dane Springmeyer
0cb63c51e8
finish removing ancient reduced size grid rendering pathway - amends f3a824c2cc
2014-09-12 00:56:51 -07:00
Dane Springmeyer
91ee910ad2
remove debugging line
2014-09-11 15:46:49 -07:00
Dane Springmeyer
519149087e
add support to tiff reader for reporting alpha
2014-09-11 15:44:48 -07:00
artemp
af33a87cfd
disable AA when warping images #1913
2014-09-11 16:49:00 +01:00
artemp
e545b68699
revert accidental removal of 'wrap-before' expression
2014-09-11 10:14:36 +01:00
artemp
246336d2b1
Merge branch 'min-dist-compatibility' of git://github.com/MapQuest/mapnik into MapQuest-min-dist-compatibility
2014-09-10 16:20:36 +01:00
artemp
f8dc7b023a
text - add ``repeat-wrap-char
`` parameter default:false ( #2333 )
2014-09-10 16:08:41 +01:00
Jordan Hollinger
9b5a9dfe3e
Change text-margin option to margin.
2014-09-10 07:45:41 -04:00
artemp
90f6258b41
expressions : add ``lenght()
`` unary function
2014-09-10 12:09:33 +01:00
artemp
b441586acf
text-symbolizer: revive 'wrap-char' property which uses special (naive) line_breaker - ref #2333
2014-09-09 17:30:01 +01:00
artemp
635c3728f2
wrap BreakIterator into std::unique_ptr to avoid leaking memory
...
(per ICU docs: "The caller owns the returned object and is responsible for deleting it.")
2014-09-08 12:01:22 +01:00
Dane Springmeyer
479b9e13d0
Merge pull request #2383 from MapQuest/min-dist-compatibility
...
3.x -> 2.3.x compatibility for minimum-distance
2014-09-06 22:50:13 -07:00
Dane Springmeyer
ecc8696664
simplify load_map code
2014-09-06 22:15:26 -07:00
Dane Springmeyer
54b2880e53
markers: support offset, geometry-transform, and simplify - closes #2108
2014-09-06 21:27:15 -07:00
Dane Springmeyer
e26570dfdb
completely ignore layers with status=off - closes #153
2014-09-06 10:08:40 -07:00
artemp
2727eddf90
implement 'avoid-adges' for markers placements (point placement)
...
(TODO: support all placement types)
2014-09-05 16:19:55 +01:00
artemp
3cb047fc5c
avoid callling TIFFs global structures ref #2391
2014-09-05 12:30:33 +01:00
Jiri Drbalek
b7e7e29781
fix text rendering with line placement on corners
2014-09-05 10:46:46 +00:00
Jiri Drbalek
1af6f5db10
format
2014-09-05 10:46:46 +00:00
Dane Springmeyer
035a947892
no need for harfbuzz-icu
2014-09-04 23:16:25 -07:00
Dane Springmeyer
492e084714
add copy ctor to rule: avoids last copy of syms in load_map - closes #1293
2014-09-04 22:03:54 -07:00
Dane Springmeyer
7ee9f3268a
Merge branch 'master' of github.com:mapnik/mapnik into 3x-msvs
2014-09-04 13:06:02 -07:00
Dane Springmeyer
f73eef6f7a
rollback png8 default in 2.3.x - closes #2110
2014-09-04 12:08:47 -07:00
Dane Springmeyer
038cc41cd4
we are targeting 2014 so rollback 2013 CTP workarounds
2014-09-04 18:26:17 +00:00
Dane Springmeyer
7d5d02e031
Merge branch 'master' of github.com:mapnik/mapnik into 3x-msvs
2014-09-04 09:22:53 -07:00
Jiri Drbalek
67d8f41a1b
fix angle calculation
...
Conflicts:
src/text/vertex_cache.cpp
2014-09-03 11:53:23 -07:00
Dane Springmeyer
beaf7a56cc
fix linking problems from python
2014-08-31 07:44:41 +00:00
Dane Springmeyer
bfc772f697
attempt to build the python bindings (TODO: symbol errors wrt to swap)
2014-08-31 07:01:06 +00:00
Dane Springmeyer
603ea3811f
Merge branch 'master' of github.com:mapnik/mapnik into 3x-msvs
2014-08-30 20:05:33 -07:00
Dane Springmeyer
a8017ddae6
fix std:: prefixing for cmath
2014-08-30 15:13:34 -07:00
Dane Springmeyer
3f6a5ae246
re-enable harfbuzz shaper
2014-08-29 00:05:34 -07:00
Dane Springmeyer
b93d0e97e0
remove one more unused function::name that does not compile with msvs 2013 - refs #2396
2014-08-28 18:57:59 -07:00
Dane Springmeyer
37f4c574f3
remove unused function::name that does not compile with msvs 2013 - refs #2396
2014-08-28 18:49:56 -07:00
Dane Springmeyer
3c66054524
Merge branch 'master' of github.com:mapnik/mapnik into 3x-msvs
2014-08-28 17:23:59 -07:00
artemp
1ac0ebdd83
rename coord_transform to transform_path_adapter and move implementation into separate header
2014-08-28 10:59:08 +01:00
artemp
ecfaec1027
rename ctrans.hpp to view_transform.hpp
2014-08-28 10:29:04 +01:00
artemp
de22d5900c
rename CoordTransform to view_transform to better reflect its purpose and be consistent
2014-08-28 10:17:15 +01:00
Dane Springmeyer
91da442cdd
fix issue 9 for 2013 CTP from #2396
2014-08-26 20:39:08 -07:00
Dane Springmeyer
ee1c2aec47
use icu shaper to avoid needing to build harfbuzz right now - refs #2396
2014-08-26 19:24:06 -07:00
Dane Springmeyer
5789777199
fix issue 7 from #2396
2014-08-26 19:23:24 -07:00
Dane Springmeyer
c1140fb2ea
fix issue 4 of #2396
2014-08-26 19:01:45 -07:00
Dane Springmeyer
147375e197
workaround issue 3 from #2396
2014-08-26 13:23:48 -07:00
Dane Springmeyer
8d448dad5c
fix issue 2 from #2396
2014-08-26 12:43:31 -07:00
artemp
bfa13152e3
implement unary functions as functors
2014-08-26 11:41:26 +01:00
artemp
4fcbeaf706
avoid creating expression_string(str) visitor objects recursively
2014-08-26 11:00:42 +01:00
artemp
0cfbd3c5e8
expression_string : implement function call support
2014-08-26 10:51:55 +01:00
Dane Springmeyer
8e996e10ab
add support for windows unicode paths in rapidxml loader
...
Conflicts:
src/rapidxml_loader.cpp
2014-08-25 15:43:43 -07:00
artemp
3bd323ca85
expressions - add 'abs' function
2014-08-25 15:13:52 +01:00
artemp
2a254a4017
expressions - refactor function calls into separate compilation unit
2014-08-25 15:06:53 +01:00
artemp
4adb0abb64
expressions - implement unary and binary function expression nodes
...
(sample functions: exp, pow, sin, cos, min, max, tan, atan)
2014-08-25 14:17:18 +01:00
Jiri Drbalek
e1aededb09
refactor marker placements
2014-08-24 18:10:41 +00:00
Jordan Hollinger
688dfcabc9
Disallow use of minimum-distance with either repeat-distance or text-margin.
2014-08-22 08:52:45 -04:00
artemp
eb7716aeed
expressions - initial function_call framework implementation (TODO)
2014-08-22 12:30:25 +01:00
Jordan Hollinger
a28d3dd99c
Handle text-margin, repeat-distance, and backward compatible minimum-distance in placement_finder. Update visual tests.
2014-08-21 20:49:00 -04:00
Jordan Hollinger
c8c792277d
Add attribute text-margin in place of minimum-distance.
2014-08-20 19:43:36 -04:00
Dane Springmeyer
bb897e0144
use fast path for bbox reprojection (skipping extra point-sampling)
2014-08-20 14:47:27 -07:00
Dane Springmeyer
22117c6c64
code comments to clarify when/why base_path is needed at parse time when loading from a string
2014-08-20 13:53:25 -07:00
Dane Springmeyer
b9060c038c
rapidxml: avoid overhead of stringstream - amends 95d5b73
2014-08-20 13:46:00 -07:00
Dane Springmeyer
65bd9e6926
adapt to ptree change in boost 1.56 - closes #2365
...
Conflicts:
src/save_map.cpp
2014-08-19 09:08:33 -07:00
Dane Springmeyer
41064ed49d
pixel snapping for shields (and points) - closes #1866/refs #1316/amends 2fcd53134
2014-08-18 19:45:21 -07:00
Dane Springmeyer
e94b58f678
load_map: always parse transform so that xml warning keep working
2014-08-18 19:40:34 -07:00
Dane Springmeyer
d6c59d96ec
fix simply option + tests for #1484 and #1992
2014-08-18 19:23:50 -07:00
Dane Springmeyer
5d424e9389
remove unneeded code
2014-08-18 19:19:38 -07:00
artemp
801848ac97
Merge branch 'jh-min-repeat-distance' of git://github.com/MapQuest/mapnik into MapQuest-jh-min-repeat-distance
...
Conflicts:
include/mapnik/renderer_common/process_group_symbolizer.hpp
src/text/text_properties.cpp
2014-08-18 14:05:14 +01:00
Dane Springmeyer
751e039347
add RESPECT mode to make 'fixing' of bbox aspect a no-op on map
2014-08-14 20:27:27 -07:00
Dane Springmeyer
6ec3905fc5
fix redefinition warnings + dodge a compile error due to clashing toupper in python + clib by using iosfwd - closes #2355
2014-08-12 23:52:31 -07:00
Dane Springmeyer
7da05accc0
Merge branch 'master' of github.com:mapnik/mapnik into custom-variant-2
2014-08-12 23:19:26 -07:00
Dane Springmeyer
9b789a398b
remove bilinear8 from master/3.x - closes #2076
2014-08-12 13:43:37 -07:00
artemp
95cea92a4a
convert all boost::variant to util::variant
...
apart from topojson (TODO)
2014-08-12 13:40:45 +01:00
artemp
e5c316ae0b
Merge branch 'master' into custom-variant-2
2014-08-12 10:41:58 +01:00
artemp
3f8c459195
make mapnik::symbolizer a mapnik::util::variant<Symbolizers...>
2014-08-12 10:40:38 +01:00
Dane Springmeyer
fe31aed576
fix #2274 in master/3.x
2014-08-11 19:50:50 -07:00
Jordan Hollinger
c63e3a55f1
Merge branch 'master' of github.com:mapnik/mapnik into jh-min-repeat-distance
2014-08-11 17:43:51 -04:00
artemp
eabba25948
fix cairo_renderer usage in demo/viewer + revert aac69d0b34
2014-08-11 15:43:38 +01:00
artemp
9a1639a1d6
AGG/Cairo - fix pattern opacity
2014-08-11 15:42:45 +01:00
artemp
201641a206
AGG/Cairo - fix pattern opacity
2014-08-11 15:36:48 +01:00
Jordan Hollinger
726274c2c9
Merge branch 'master' of github.com:mapnik/mapnik into jh-min-repeat-distance
2014-08-11 09:48:04 -04:00
artemp
27ee642bbe
fix cairo_renderer usage in demo/viewer + revert aac69d0b34
2014-08-11 13:40:12 +01:00
artemp
9bfb41a39f
convert symbolizer properties to use util::variant
2014-08-11 13:24:53 +01:00
artemp
e315922b70
Merge branch 'master' into custom-variant-2
...
Conflicts:
include/mapnik/value.hpp
2014-08-11 11:53:59 +01:00
Dane Springmeyer
48078da22d
debug font crash - refs #2341
2014-08-10 20:35:23 -07:00
Dane Springmeyer
c285cfa188
refactor cairo_renderer
...
- splits process functions into new cpp files to reduce peak compile memory usage
- drops cairo_renderer_base to match agg_renderer design
- only cairo_ptr is accepted so cairo_surface_ptr must be converted into a context first
- fixes -fvisibility=hidden
2014-08-10 13:53:45 -07:00
Dane Springmeyer
9c7f8284bd
iwyu
2014-08-10 13:52:45 -07:00
Dane Springmeyer
678907e027
silence webp -Wunused-function warning
2014-08-09 13:57:01 -07:00
Dane Springmeyer
52b1da225b
less verbose ifdefs
2014-08-09 13:44:42 -07:00
Dane Springmeyer
4cb7b56f66
remove uneeded logging
2014-08-08 15:01:48 -07:00
Dane Springmeyer
578da31702
use extern template to fix osx -flto bug - closes #2339
2014-08-08 14:16:49 -07:00
Dane Springmeyer
1727fae6e7
remove boost concept_check usage - refs #2346
2014-08-08 13:15:57 -07:00
Dane Springmeyer
471eaed9df
initialize is_geographic
2014-08-08 12:00:20 -07:00
Dane Springmeyer
8f183ac63a
Merge pull request #2345 from mapnik/emplace
...
use emplace/emplace_back over insert/push_back - refs #2336
2014-08-08 11:30:14 -07:00
artemp
1f403a078e
transform : is_null_node visitor
2014-08-08 16:43:15 +01:00
Jiri Drbalek
fa0b97fff7
add markers placement methods vertex-first and vertex-last
2014-08-08 06:34:33 +00:00
Dane Springmeyer
6ae59b80af
iwyu
2014-08-06 12:27:10 -07:00
artemp
0490b7887c
text_symbolizer - ``geometry-transform
`` support
2014-08-06 14:54:38 +01:00
artemp
9835057b0f
Use vertex_converters in text placement
2014-08-06 13:10:24 +01:00
Dane Springmeyer
ce8aee1994
be explicit about copy needed to safely pass glyph_info into text_line - closes #2337
2014-08-05 17:03:30 -07:00
Dane Springmeyer
d27b45553a
use emplace/emplace_back over insert/push_back - refs #2336
2014-08-05 15:19:37 -07:00
Dane Springmeyer
7a013e8151
switch glyph_info cache to an unordered_map (but no perf diff on osx)
2014-08-05 14:31:29 -07:00
Dane Springmeyer
76bd45fa30
fix order of smooth/offset - same bug as #2202 but for patterns
2014-08-05 13:54:10 -07:00
Dane Springmeyer
2a7fc29e42
add support for opacity with svgs in pattern symbolizers - refs #1010
2014-08-05 13:48:40 -07:00
Dane Springmeyer
2c9e089317
move harfbuzz_shaper inc + other iwyu fixups
2014-08-05 11:10:49 -07:00
artemp
c3a83e6f74
re-arrange headers
2014-08-05 18:58:22 +01:00
artemp
2b90b382e7
move render_pattern into sepratre compilation module
2014-08-05 17:40:15 +01:00
artemp
a8991cd600
refactor clipping_extent into separate header for sharing
2014-08-05 17:22:13 +01:00
artemp
dd05521289
Revert "avoid overflowing"
...
This reverts commit ebd183d58e
.
2014-08-05 13:13:52 +01:00
artemp
ebd183d58e
avoid overflowing
2014-08-05 11:57:57 +01:00
artemp
59b666cb77
Cairo : use vertex_converter in line_pattern_symbolizer ( #1386 )
...
fix pattern alignment
2014-08-05 11:48:42 +01:00
Dane Springmeyer
99a46f6910
re-enable glyph_info caching - refs #2326 , #2265 , #2334
2014-08-04 19:50:16 -07:00
Dane Springmeyer
fb12fc8b68
default to global alignment for polygon patterns - refs #2325
2014-08-04 16:20:12 -07:00
Dane Springmeyer
03429f9bcb
use std::unordered_map in non-perf critical code
2014-08-04 13:59:02 -07:00
Dane Springmeyer
75248e3376
remove obsolete wrap-character option for text symbolizer - closes #2333
2014-08-04 12:52:46 -07:00
Dane Springmeyer
5af394e496
scons: ensure cairo_renderer.cpp is built farther in the stack away from expression_grammar.cpp
2014-08-04 10:24:11 -07:00
artemp
c1c5421fb6
add divide, linear-dodge and linear-burn blending modes (needs testing)
2014-08-04 12:33:37 +01:00
Dane Springmeyer
9f05389754
fix handling of all sym enums as expressions - fixes tests from #2328
2014-08-03 21:28:36 -07:00
jhollinger2
0aad860a75
Add repeat-distance to text symbolizer properties.
...
Update collision detector to handle minimum-distance and repeat-distance seperately.
Update placement_finder to use repeat-distance.
Update group symbolizer to handle minimum-distance and repeat-distance.
2014-08-03 16:10:21 -04:00
artemp
96cc6b5417
fix typo
2014-08-01 20:15:59 +01:00
artemp
21d28c419c
Cairo : add SVG support for in line patterns
2014-08-01 14:37:39 +01:00
artemp
d44177b870
set image-transform for line pattern symbolizer
2014-08-01 13:40:08 +01:00
artemp
f2db42d5e4
support image-transform for vector patterns
2014-08-01 13:39:29 +01:00
artemp
a9f0408e4f
polygon_pattern_symbolizer: use set_symbolizer_property + add image-transform
2014-08-01 10:05:30 +01:00
artemp
90099bc171
Cairo : add SVG pattern support in polygon_pattern_symbolizer
2014-07-31 15:43:59 +01:00
artemp
18a7731d42
AGG line/polygon_pattern_symbolizer add support for SVG patterns
2014-07-31 15:25:22 +01:00
artemp
d4224ae852
polygon_pattern_symbolizer - fix 'opacity'
2014-07-31 10:29:44 +01:00
Dane Springmeyer
3412c071ab
initialize default black square in marker cache - refs #952
2014-07-31 00:41:27 -07:00
Dane Springmeyer
6078f4cef1
more marker bbox fixes
2014-07-30 23:43:48 -07:00
Dane Springmeyer
f1cffaeb1f
Start fixing placement of raster markers with cairo renderer
2014-07-30 21:57:16 -07:00
Dane Springmeyer
a1cd4c2768
sync cairo with agg rendering for line_patterns
2014-07-30 17:51:44 -07:00
Dane Springmeyer
936bfe201c
remove tabs from cairo_renderer.cpp
2014-07-30 16:11:06 -07:00
Dane Springmeyer
2a18280dc5
Add support for dynamic expressions for dasharrays - closes #2168
2014-07-30 16:02:23 -07:00
Dane Springmeyer
b7ecd00c31
complete support for face-name/fontset-name in <Format> node - closes #1900
2014-07-30 14:16:32 -07:00
Dane Springmeyer
da457eba81
Merge branch 'master' of github.com:mapnik/mapnik
2014-07-30 08:42:03 -07:00
artemp
a6272fc16d
fix symbolizer helper
2014-07-30 14:09:15 +01:00
Dane Springmeyer
8646ccc83f
start passing fontsets down to format and layout - refs #1900
2014-07-29 18:29:20 -07:00
Dane Springmeyer
ba999ff4be
Merge pull request #2295 from mapycz/3.x-szn-markers-symbolizer
...
refactor markers placements
2014-07-29 17:04:27 -07:00
Dane Springmeyer
1fa31d5d20
remove force-odd-labels - refs #2120
2014-07-29 14:37:29 -07:00
Dane Springmeyer
ea0a9240a3
save_map: pass explicit_defaults down to symbolizers
2014-07-29 09:38:39 -07:00
artemp
08c3dd1f88
convert remaining text properties to expressions
2014-07-29 14:43:26 +01:00
artemp
0c5c01d9a3
remove err ','
2014-07-29 13:31:57 +01:00
artemp
c565aa8722
move symbolizer property handling to symbolizer_utils
2014-07-29 13:31:07 +01:00
Jiri Drbalek
2940de0b0b
refactor markers placements
2014-07-29 11:52:39 +00:00
artemp
97f87b1946
aggregate text symbolizer properties loading
2014-07-29 10:09:54 +01:00
artemp
9d91f3ca82
c++11 : cleanup crufty code
2014-07-29 10:09:21 +01:00
Dane Springmeyer
cdb075f75f
make clipping off by default - closes #2146
2014-07-28 20:31:10 -07:00
Dane Springmeyer
8feedd94cd
rename mapnik::boolean to mapnik::boolean_type - closes #1899
2014-07-28 19:46:49 -07:00
Dane Springmeyer
51be686f6c
remove paths-from-xml option in load_map parsing - closes #1893
2014-07-28 19:33:48 -07:00
Dane Springmeyer
366865cfea
fix #2129
2014-07-28 19:11:18 -07:00
Dane Springmeyer
cb3a4e10b7
reduce lock-time when creating datasources - #2317
2014-07-28 16:17:31 -07:00
artemp
f338028802
fix init order
2014-07-28 17:50:44 +01:00
artemp
0cf6e47006
c++ char_properties -> evaluated_format_properties
2014-07-28 17:22:32 +01:00
artemp
72fd012221
c++ style
2014-07-28 15:16:59 +01:00
artemp
fb3d9cd7b6
convert horizontal/vertical/justify_alignment properties to expressions
2014-07-28 15:09:29 +01:00
artemp
c93b7fd632
cleanup
2014-07-28 12:20:14 +01:00
artemp
51cf60125e
rename source files to reflect class name e.g layout -> text_layout
2014-07-28 12:10:34 +01:00
artemp
e31eefb1e0
implicit capture of this pointer by value
2014-07-28 11:29:56 +01:00
Dane Springmeyer
0d95f038a7
shuffle the cost of spirit grammars
2014-07-25 16:15:18 -07:00
artemp
70059cc346
remove redundant ExpressionFormat node
2014-07-25 14:26:13 +01:00
artemp
37245fdde1
text properties : add framework to handle expressions in enumerations
...
+ make text-transform an expression
2014-07-25 14:19:41 +01:00
Dane Springmeyer
99de69d96f
Merge branch 'master' of github.com:mapnik/mapnik into grammar-refactor
2014-07-24 14:55:30 -07:00
Dane Springmeyer
c5be70ff65
refactor spirit grammars
2014-07-24 14:31:59 -07:00
artemp
ff96af0480
tex/formatting/format fix add_expressions
2014-07-24 14:51:34 +01:00
artemp
b53572ab9c
update text/formatting/format
2014-07-24 14:45:02 +01:00
artemp
a65239bf4b
fix format_node::to_xml - attach format_properties to new_node
2014-07-24 12:13:34 +01:00
artemp
9c39d4ebd2
collect expressions from format_properties
2014-07-24 12:00:46 +01:00
artemp
1927a00ee0
text-properties : make fill and halo-fill expressions
2014-07-24 11:37:16 +01:00
Dane Springmeyer
3defa77d88
remove big endian support - closes #2313
2014-07-23 14:16:44 -07:00
Dane Springmeyer
133f399777
iwyu
2014-07-23 14:16:11 -07:00
Dane Springmeyer
8dcd85a708
iwyu
2014-07-23 14:02:36 -07:00
artemp
8502019310
more format_properties expessions
2014-07-23 18:09:18 +01:00
artemp
e67f046a0e
start re-factoring char_property (TODO: change name!)
2014-07-23 16:19:14 +01:00
artemp
510c4b538d
pedantic
2014-07-23 09:31:42 +01:00
Dane Springmeyer
265043e4d7
iwyu
2014-07-22 23:57:06 -07:00
Dane Springmeyer
148007cc48
iwyu + fwd declares
2014-07-22 23:36:54 -07:00
Dane Springmeyer
3de2457799
fwd declare layer
2014-07-22 23:11:12 -07:00
Dane Springmeyer
64e70fb374
iwyu
2014-07-22 22:40:39 -07:00
Dane Springmeyer
28a05c96ef
iwyu + faster compile
2014-07-22 19:36:39 -07:00
Dane Springmeyer
006c460c9c
fix use of comp-op as data-driven expression
2014-07-22 10:52:30 -07:00
artemp
98e8937d1c
range based for loops + code cleanup
2014-07-22 16:22:43 +01:00
artemp
498bba7cf8
c++ : pass arg by const ref
2014-07-22 16:09:10 +01:00
artemp
f12b5e06dd
c++ style
2014-07-22 15:58:37 +01:00
artemp
bfc6c61d62
c++ - pass by const ref etc.
2014-07-21 14:46:54 +01:00
artemp
eacde4fe43
remove dummy_shaper
2014-07-21 12:41:31 +01:00
artemp
3c2dd839e4
serialize color properties
2014-07-21 12:28:27 +01:00
artemp
a9062fe112
restore serialization in text_properties and text/formattin/layout
2014-07-21 11:43:59 +01:00
artemp
ee58762bd9
add property_serializer impl
2014-07-21 11:19:26 +01:00
artemp
8465a78c97
use 2 spaces identation in xml output
...
prefer c++11 range based loops for readability
2014-07-18 21:05:25 +01:00
artemp
93d40323c5
orientation -> symbolizer_base::value_type
2014-07-18 15:48:56 +01:00
artemp
594470ee17
expressions in text/formatting/layout (work-in-progress)
2014-07-18 11:18:54 +01:00
artemp
f9ed5d4027
add has_attribute(std::string const&) member function
2014-07-18 11:17:48 +01:00
artemp
efe0cf57b4
move set_property_from_xml into separate header for re-use
2014-07-18 11:14:28 +01:00
artemp
dcb60d5842
make add_expressions pure virtual in base class
2014-07-17 17:26:54 +01:00
artemp
18d1d0b8d5
fix path_move_dx
2014-07-17 17:26:20 +01:00
artemp
620aa62ab5
remove unused member variable
2014-07-17 17:01:03 +01:00
artemp
21986e5d4a
refactor pass
2014-07-17 16:55:22 +01:00
artemp
79c1ac96b4
avoid captures in displacement_evaluator
2014-07-17 16:55:22 +01:00
artemp
8a01cce2f7
move displacement_evaluator_ initialisation
...
c++ style fixes
2014-07-16 16:34:42 +01:00
artemp
4166fcdd5d
store displacement logic in std::function and delay calc until dx/dy are evaluated (layout)
2014-07-16 14:24:00 +01:00
artemp
562058aff6
remove printing to cerr
2014-07-15 16:35:11 +01:00
artemp
6c03a617a5
text displacement expr : more re-factoring and various fixes
2014-07-15 16:31:43 +01:00
artemp
1f17620e18
make methods pure virtual where appropriate
...
pass std::string by const ref (!)
c++ style
2014-07-15 11:15:26 +01:00
artemp
72bae0d6b8
text properties : displacement expr
2014-07-15 10:15:56 +01:00
artemp
f8fc104e7d
more meaningful names
2014-07-14 16:55:57 +01:00
artemp
a66c1ddb06
convert to expressions: text-ratio, wrap-before, rotate-displacement
2014-07-14 16:51:11 +01:00
artemp
24e21cd387
set_property_from_xml helper function
2014-07-14 16:08:58 +01:00
artemp
73bda71710
text_properties : add expression_ptr's to the expression_set
2014-07-14 14:15:36 +01:00
artemp
e066aa924f
text_properties : wrap-width
2014-07-11 15:44:44 +01:00
artemp
4afd98a34a
text_properties : store 'orientation' parameter in symbolizer_base::value_type
2014-07-11 14:43:56 +01:00
artemp
8fc9d54619
fix typo
2014-07-11 11:53:06 +01:00
artemp
64ef711b76
move enumerations into separate compilation unit
2014-07-11 10:26:51 +01:00
artemp
61c54b3943
c++ style
2014-07-11 10:12:33 +01:00
artemp
c79e74116d
cleanups
2014-07-11 09:51:34 +01:00
artemp
9e84b6101b
store const* in glyph_t
2014-07-10 12:46:42 +01:00
artemp
203a2c55e6
fix missing make_unique on c++11 compilers
2014-07-10 12:45:51 +01:00
artemp
72e0889000
replace auto_ptr with unique_ptr (creeped in from 2.3.x)
2014-07-10 12:28:52 +01:00
artemp
6cd7026aac
pass text_placement_info by ref to placement_finder + formatting
2014-07-10 11:44:46 +01:00
artemp
8c6015ec60
first take at cleaning-up text placement code
...
(NOTE: get_text_info is temp disabled in python bindings)
2014-07-09 11:31:03 +01:00
artemp
17a23f5d6b
call parse_symbolizer_base before setting symbolizer specific properties
2014-07-09 11:15:01 +01:00
artemp
fb1ec4cee0
remove dead code
2014-07-09 10:28:00 +01:00
artemp
04facd3542
mode range ``for loops
``
2014-07-08 17:02:22 +01:00
artemp
888ae11309
use pre-increment in iterator loops
2014-07-08 16:38:15 +01:00
artemp
81f7e69088
coord_arrat<T> : add support for range based for loop interface
...
update wkb parser to use it ^^
2014-07-08 16:22:24 +01:00
artemp
fe215a684e
c++11 style : replace (almost) all typedef with type alias's
2014-07-07 18:23:15 +01:00
artemp
0f01000570
prefer using type alias's instead of ``typedef
``
...
e.g
```c++
using identifier attr(optional) = type-id ;
```
2014-07-07 11:56:16 +01:00
artemp
673c8edbb5
set_symbolizer_property_impl - pre-evaluate expressions when is_enum = false
2014-07-07 11:30:08 +01:00
artemp
1f2f17160e
initial implementation to pre-evaluate symbolizer properties where possible
...
FIXME: generic version needs needs help type deduction
2014-07-03 16:35:18 +01:00
artemp
ab3aad38ad
symbolizer properties : image_transform, cleanups
2014-07-03 09:06:24 +01:00
Dane Springmeyer
6034837c95
perf/image_scaling: avoid unnessary clearing of target image which will already be zero-initialized
2014-07-03 00:37:50 -07:00
artemp
5ef8078252
markers_symbolizer properties update
2014-07-02 13:08:05 +01:00
artemp
13d3465000
update point_placement_enum, gamma_method_enum, line_rasterizer_enum parsing, gamma-method
2014-07-02 11:01:38 +01:00