Matt Amos
3d7b84a598
Fix deadlock in recursive datasource registration.
...
The datasource cache was taking an exclusive lock on the simple
mutex used to protect the singleton's data pointer. This works
okay when everyone always calls it non-recursively, but when the
recursive flag is true then it will always deadlock when called
on any directory with subdirectories.
Additionally, many methods which accessed private data members of
the cache were not protected by any locks.
Since the call pattern of registering datasources is strictly
tree-shaped then it's a good candidate for a recursive mutex. This
has a slightly higher overhead than a simple mutex, so rather than
change the singleton's mutex to be recursive, I've added a new
instance mutex to the datasource cache.
Also, added a very basic test which reproduces the problem and
shows that it's fixed with this patch.
2015-08-23 20:25:35 +01:00
Blake Thompson
10ad41d218
Removed unrequired MAPNIK_DECL from src/image_util_jpeg added pragma to prevent warning on linux with clang.
2015-08-12 13:00:04 -05:00
Blake Thompson
3d262c7426
Fixed linking errors in parse jpeg. closes #3031
2015-08-12 09:32:32 -05:00
artemp
715cff3f2a
fix - pass by const ref
2015-08-12 12:09:40 +02:00
artemp
ebf4d66900
Merge branch 'master' into image_filters
2015-08-12 11:27:59 +02:00
artemp
771d2844db
Merge branch 'dot-scale' of https://github.com/naturalatlas/mapnik into naturalatlas-dot-scale
2015-08-12 10:40:12 +02:00
artemp
751abba262
add parse_jpeg_quality method + uint test parsing jpegXX and jpeg:quality=XX options
...
ref #3024
2015-08-12 10:29:57 +02:00
Blake Thompson
75522c0cc5
Merge branch 'master' into image_filters
2015-08-11 15:31:41 -05:00
Blake Thompson
792e94ae90
Removed image-filter from map object, made it so that premultiplication/demultiplication only took place when correctly required in image filters.
2015-08-11 14:31:29 -05:00
artemp
b5dedd0e69
JPEG - revive backward compatible quality format jpeg<N> e.g jpeg80, jpeg90 etc.
...
ref #3024
2015-08-11 17:13:54 +02:00
Artem Pavlenko
e68da0d083
Merge pull request #3016 from mapycz/text-null-bbox
...
Null text collision box
2015-08-10 12:18:31 +02:00
Blake Thompson
a492028f25
Initial commit of changes for image_filters so they can be called outside of agg renderer
2015-08-07 15:54:39 -05:00
Blake Thompson
ec73b50557
Added ability for image filters to be used on the map object, so that the entire map has an image filter applied. Corrected issues with colorblind algorithms due to incorrect algorithm used as colorspace was required to be in sRGBA rather then RGBA.
2015-08-05 12:35:17 -05:00
Jiri Drbalek
c1d8095d59
shields: set marker after collision test
2015-08-04 13:38:52 +00:00
Jiri Drbalek
162f82cba5
ensure null text has no bbox
2015-08-04 13:29:16 +00:00
Brian Reavis
9bdca97579
Fixed dot symbolizer not acknowledging scale factor.
2015-08-02 14:55:26 -06:00
artemp
42bf2303e0
fix parse_double_optional_percent grammar and update tests
2015-07-31 11:35:02 +02:00
artemp
3a4d57492f
make parser strict - return marker_null() on SVG parser failures
...
redirect stderr to MAPNIK_LOG
2015-07-31 10:44:42 +02:00
artemp
56712c2435
fix XMLPARSER=libxml2 logic
2015-07-30 14:34:01 +02:00
artemp
ffcacf3509
make libxml2 optional dependency (XMLPARSER=libxml2)
2015-07-30 13:14:37 +02:00
artemp
9d43f69cf6
const correctness
2015-07-30 11:09:08 +02:00
artemp
e5c4dbf1c0
format
2015-07-30 11:04:17 +02:00
jakepruitt
b4bc16751c
Adjusted error message logic for logging path ids
2015-07-29 22:37:30 -04:00
artemp
4cf6ce1866
correct error handling
2015-07-29 13:01:51 +02:00
artemp
9531adbf56
re-use attribute pointer and reduce number of local vars
2015-07-29 11:16:51 +02:00
artemp
a8f5ddff73
handle empty <g> element + fix visibity parsing
2015-07-28 19:37:55 +02:00
artemp
e9284ce62a
c++ tidy
2015-07-28 16:50:06 +02:00
artemp
515da3f9a8
rapidxml based svg parser - initial impl
2015-07-28 16:33:39 +02:00
artemp
42c8da72e9
Merge branch 'master' into svg-parser-errors
2015-07-28 10:29:59 +02:00
Dane Springmeyer
a5db121231
followup to #2990 [skip ci]
2015-07-27 16:45:22 -07:00
Dane Springmeyer
90f2fd91f5
Merge pull request #2990 from mapycz/fix-text-minimum-path-length
...
fix text-minimum-path-length
2015-07-27 16:33:25 -07:00
artemp
8ebb9db431
add xml:id
support ( ref #2989 )
2015-07-27 15:55:34 -07:00
Dane Springmeyer
871a881634
Merge pull request #3002 from mapnik/issue-2971
...
Fix windows compile around glyph_info forward declare
2015-07-27 14:59:18 -07:00
Dane Springmeyer
ba8d51e029
include fixups
2015-07-27 14:57:57 -07:00
artemp
2e7d75f022
track errors parsing double values
2015-07-24 11:05:26 +02:00
artemp
ce2eaa02ee
add operator==()
2015-07-23 12:58:14 +02:00
artemp
6a1a25efbf
remove duplicate if else
2015-07-23 11:14:13 +02:00
artemp
4b9b1b5401
fix err message
2015-07-22 16:38:45 +02:00
artemp
9eadd48d7b
add tests for no-existing svg file + bogus color in fill
and stroke
2015-07-22 11:52:18 +02:00
artemp
34a1d1315a
clamp rx/ry to valid range (<= 0.5*width/0.5*height)
...
SVG spec : ".. If 'rx' is greater than half of the width of the rectangle, then the user agent must process the 'rect' element with the effective value for 'rx' as half of the width of the rectangle. If 'ry' is greater than half of the height of the rectangle, then the user agent must process the 'rect' element with the effective value for 'ry' as half of the height of the rectangle.."
2015-07-21 20:50:26 +02:00
artemp
804115089b
clamp rx/ry to valid range (<= 0.5*width/0.5*height)
...
SVG spec : ".. If 'rx' is greater than half of the width of the rectangle, then the user agent must process the 'rect' element with the effective value for 'rx' as half of the width of the rectangle. If 'ry' is greater than half of the height of the rectangle, then the user agent must process the 'rect' element with the effective value for 'ry' as half of the height of the rectangle.."
2015-07-21 20:48:43 +02:00
artemp
9af3313063
use parse_id_from_url
for stroke
2015-07-21 14:56:23 +02:00
Jiri Drbalek
8faff70620
fix text-minimum-path-length
2015-07-21 12:54:16 +00:00
artemp
43b3770a95
make gradient movable
2015-07-21 14:12:47 +02:00
artemp
d1b39f5841
handle color parsing in one place
2015-07-21 11:45:11 +02:00
artemp
d7cf0d5bca
add parse_id_from_url method
2015-07-21 11:30:04 +02:00
artemp
55a9855069
add xml:id
support ( ref #2989 )
2015-07-21 10:25:57 +02:00
artemp
52007b8019
Merge branch 'master' into svg-parser-errors
2015-07-21 09:46:38 +02:00
artemp
9ab1935a36
add boolean flag for tracking when to re-calculate extent (ref #2985 )
2015-07-17 20:17:51 +02:00
artemp
bb8b835618
calculate percentage value inside parser, reduce local vars
2015-07-17 20:00:14 +02:00
artemp
a8da31b765
make '%' sign optional ( was 0 or N)
2015-07-17 19:49:28 +02:00
Dane Springmeyer
f9d65d0167
Merge branch 'master' of github.com:mapnik/mapnik into issue-2971
2015-07-17 07:23:10 -07:00
artemp
c4d8af702d
don't return early from parse_linear_gradient
2015-07-17 09:42:05 +02:00
artemp
62a58937a4
try to never fail (almost)
2015-07-16 16:55:41 +02:00
artemp
d2cfd0f0ea
log all errors without throwing
2015-07-16 12:58:32 +02:00
artemp
55215a7b30
Merge branch 'master' into svg-parser-errors
2015-07-16 12:18:25 +02:00
artemp
1733db5022
c++ - don't rely on implicit int to bool conversions
2015-07-15 17:46:27 +02:00
Dane Springmeyer
0a126a3765
attemp to fix #2971
2015-07-14 22:54:32 -07:00
artemp
ec68559d3d
fix stderr
2015-07-14 19:54:41 +02:00
artemp
a46af76216
initial commit - make parse and parse_from_string return boolean ,collect error messages
2015-07-14 19:45:50 +02:00
artemp
c2295755f6
fix typo
2015-07-13 13:48:34 +02:00
artemp
0a484bf784
handle Multi-geoms + update cairo and grid renderers
...
update
2015-07-07 18:37:27 +02:00
artemp
56fe702bac
agg line_symbolizer - dispatch to appropriate clipper based on geometry_type
2015-07-07 14:19:51 +02:00
Dane Springmeyer
a91d73779f
revert the functionality of 944f34b
- refs #2937
2015-07-06 19:27:05 -07:00
Dane Springmeyer
3ed7e347cb
use unique_ptr instead of shared_ptr for glyph_positions_ptr - refs #2516
2015-07-06 18:47:47 -07:00
Dane Springmeyer
3f91186a74
avoid creating placements for off canvas placements - refs #2929
2015-07-06 18:28:37 -07:00
Jiri Drbalek
8fe19a7b45
fix rendering text on tile's borders
2015-07-03 13:22:23 +00:00
Dane Springmeyer
39eab41ecd
use C++11 in cairo_context::set_dash - refs #2948
2015-07-02 10:19:33 -07:00
artemp
4f6c286f92
style
2015-07-02 10:14:36 +02:00
Dane Springmeyer
9a54d720cd
add symbol for save_to_string<image_view_rgba8> - closes #2938 - refs #2939
2015-06-30 17:52:08 -07:00
Dane Springmeyer
48eb4abedb
merge with master
2015-06-30 00:38:45 -07:00
Dane Springmeyer
5a032ee98b
fix #2924 and #2412
...
- adds back support for minimum-path-length on lines (only supported lines in 2.3.x)
- made text-largest-bbox-only work only on polygons (restores 2.3.x behavior)
TODO: give more control: #1583
2015-06-24 17:02:34 -07:00
Dane Springmeyer
15589c8568
pull in latest master
2015-06-22 13:51:09 -07:00
Dane Springmeyer
9a5cc81924
fix a few -Wunused-argument warnings [skip ci]
2015-06-22 13:29:57 -07:00
Jérémy Lal
f4b10fbbff
Spelling error
2015-06-19 23:25:27 +02:00
artemp
7e0c23815e
remove boost::ptr_vector usage
2015-06-19 10:45:43 +02:00
artemp
98d87f4c88
replace remaining boost::unordered_map
2015-06-18 11:08:35 +02:00
Dane Springmeyer
07e06e1781
tame a few more boost -Wsign-conversion warnings
2015-06-17 13:29:54 -07:00
Blake Thompson
bd9e580cd8
Merge branch 'master' into offset
2015-06-16 11:50:04 -05:00
artemp
8c6bf0eef6
update copyright notice
2015-06-16 12:49:16 +02:00
artemp
0a24e8cfca
remove unused #include's
2015-06-16 10:04:50 +02:00
Dane Springmeyer
bb6c9a98a5
fix more -Wsign-conversion -Wconversion warnings
2015-06-15 20:41:52 -07:00
Dane Springmeyer
20145f2fb5
fix warnings in tiff_reader
2015-06-15 20:41:51 -07:00
Dane Springmeyer
b2c85e0c65
fix a slew of -Wsign-conversion, -Wconversion, -Wunused-argument warnings
2015-06-15 20:41:51 -07:00
Dane Springmeyer
427f0486ff
avoid -Wshadow warning
2015-06-15 20:41:50 -07:00
Dane Springmeyer
23e25ca432
share const rendering buffer impl to avoid const_cast + avoid various warnings
2015-06-15 20:41:50 -07:00
Dane Springmeyer
7ba45aa9ab
fix variable shadowing and ignore -Wsign-conversion for boost
2015-06-15 20:41:50 -07:00
Dane Springmeyer
d69e2cbe66
use safe_cast to safely handle -Wsign-conversion/narrowing warnings
2015-06-15 20:41:50 -07:00
Dane Springmeyer
5418c74aad
Fix -Wshadow and -Wsign-conversion warnings
2015-06-15 20:41:49 -07:00
Dane Springmeyer
6d124cc229
remove unused set_rectangle method
2015-06-15 20:41:49 -07:00
Dane Springmeyer
7e2028e9fd
Fix -Wshadow warning
2015-06-15 20:41:49 -07:00
Dane Springmeyer
ecd2e4aea0
fix -Wshadow warning
2015-06-15 20:41:49 -07:00
Dane Springmeyer
c55662ab43
rename pixel_cast to safe_cast
2015-06-15 20:41:48 -07:00
Dane Springmeyer
72b4cb8a3a
fix -Wsign-conversion warnings from boost_regex
2015-06-15 20:41:47 -07:00
Dane Springmeyer
45bda29a45
switch to c++11 library over boost (confirmed no speed drop on osx with test_marker_cache.cpp)
2015-06-15 20:41:47 -07:00
Dane Springmeyer
8172eda3d1
fix gamma for symbolizers that do not (yet) support user driven gamma - closes #2912
2015-06-12 18:18:39 -07:00
Dane Springmeyer
0d86afff36
start using -Wsign-compare and -Wshadow + fix heaps of warnings - refs #2907
2015-06-12 14:51:18 -07:00
Dane Springmeyer
84a0c49ec3
Avoid crashing if we try to read a png as a jpeg - closes #2903
2015-06-11 14:02:34 -07:00
Dane Springmeyer
6a3d63aa40
consistent initialization in scriptrun and placement_finder
2015-06-11 11:44:27 -07:00
artemp
eabe5b50e6
Merge branch 'master' into mapycz-fix-raster-scaling
2015-06-11 13:15:38 +01:00
artemp
96f7120ecc
add pixel_cast<T>() ref #2893
...
replace boost::numeric_cast with mapnik::pixel_cast
2015-06-11 13:10:02 +01:00
artemp
e32465368b
Merge branch 'fix-raster-scaling' of https://github.com/mapycz/mapnik into mapycz-fix-raster-scaling
2015-06-11 10:28:41 +01:00
Dane Springmeyer
352586e9d7
handle pj_transform HUGE_VAL results (aka inf)
...
- turns out pj_transform will not always return an error code for
failed transforms and may instead just set values as HUGE_VAL
- this commit handles this and calls it an error by return false
from forward/backward
Arguably if `point_count` > 1 some values might be correctly transformed
while others might be HUGE_VAL. For the purposes of Mapnik we will consider
any HUGE_VAL as an error because we have no way to handle partial failures.
2015-06-10 18:34:11 -07:00
artemp
8e30a89522
remove wkt_generator_grammar_int to minimise code duplication
...
remove redundant template parameter - we can deduce coord_type from Geometry
add coord generator traits to control generator instantiation at compile time
2015-06-10 11:10:17 +01:00
Blake Thompson
08602392a3
Merge branch 'master' into offset
2015-06-09 13:18:31 -05:00
Blake Thompson
75f7cb26bb
Reversed the offsets
2015-06-09 09:18:52 -05:00
Dane Springmeyer
32d925b965
fix clipping regression on line patterns #2897 (proper tests depend on 2896)
2015-06-08 19:06:43 -07:00
Dane Springmeyer
c9293b8fd0
actually fix #2894 - refs #2202
2015-06-08 18:51:13 -07:00
Jiri Drbalek
76b7466719
fix rendering raster without scaling
2015-06-08 17:31:56 +00:00
Dane Springmeyer
d7bffd51f2
shuffle marker_helpers includes
2015-06-06 08:19:54 -07:00
Dane Springmeyer
29c9e97d76
minor code cleanup in process_group_symbolizer
2015-06-06 08:09:06 -07:00
Dane Springmeyer
4bf4bb0104
Merge pull request #2880 from zerebubuth/fix/rapidxml-loader-trim-whitespace
...
Fix rapidxml XML loader to trim whitespace
2015-06-03 14:03:53 -07:00
Artem Pavlenko
a235316573
Merge pull request #2883 from mapycz/missing-style
...
better handling of missing styles
2015-06-03 11:54:06 +01:00
Jiri Drbalek
27ba7483be
xml loader: throw on missing style for strict parsing
2015-06-03 10:36:50 +00:00
artemp
3a4c67c9d6
Merge remote-tracking branch 'origin/master'
2015-06-03 11:30:57 +01:00
artemp
3c159f7163
remove unused dump_xml.hpp
2015-06-03 11:18:32 +01:00
Blake Thompson
a138b8717d
Removed angus clipper library from code and updated all visual tests to master
2015-06-02 14:14:21 -05:00
Matt Amos
5616d406b4
Trim whitespace in rapidxml parser text nodes.
...
The libxml parser already trims text nodes, which leads to a
difference in behaviour when reading map style XML. This patch
normalises the behaviour between the two.
2015-06-02 17:50:08 +01:00
Dane Springmeyer
f8370acc9c
fix a few files that need utf_conv_win.hpp
2015-06-02 07:14:31 -07:00
artemp
82a98a6d85
catch and remove more spurious std::move's
2015-06-02 14:48:02 +01:00
artemp
df4226a825
remove spurious std::move's (clang - moving a temporary object prevents copy elision [-Wpessimizing-move])
2015-06-02 14:26:35 +01:00
artemp
2eaa90033a
move singleton to util/singleton.hpp
...
move windows UTF conversion routines to util/utf_conv_win.hpp
2015-06-02 11:10:41 +01:00
Artem Pavlenko
2e377e876a
Merge pull request #2879 from zerebubuth/fix/remove-unused-source-files
...
Remove unused source `memory.[ch]pp`.
2015-06-01 11:22:11 +01:00
Matt Amos
ebab4df95f
Remove unused source memory.[ch]pp
.
...
I could not find any references to this source file from any
other, and it looks like it has been largely unmodified for the
past 5 years. This suggests that it has been orphaned.
2015-05-29 19:06:13 +01:00
Jiri Drbalek
5ea57b62de
vertex placement: fix infinite loop
2015-05-28 15:06:56 +00:00
Blake Thompson
94dd9eb613
Merge pull request #2865 from mapycz/improve-visual-test-6
...
Visual tests improvements, support for grid renderer
2015-05-26 15:44:40 -05:00
Blake Thompson
4f6d87e5b1
Merge branch 'master' of github.com:mapnik/mapnik
2015-05-26 15:15:16 -05:00
Blake Thompson
feae68f142
FreeBSD build script fix closes #2861
2015-05-26 15:15:08 -05:00
Blake Thompson
3492d06f80
Always use -fPIC, refs #2861 , closes #2867
2015-05-26 15:11:44 -05:00
Blake Thompson
e027204b91
Added c++ with -fPIC for SUSE
2015-05-26 13:02:18 -05:00
Jiri Drbalek
51064a9479
grid: use correct types
2015-05-25 21:03:40 +00:00
Dane Springmeyer
84e4d8bf22
Start calling geometry::correct everywhere possible - refs #2834
2015-05-20 14:00:30 -07:00
Blake Thompson
05b4ea4955
Removed multiply_opacity
2015-05-20 13:14:44 -05:00
Blake Thompson
2031215247
Renamed set_opacity to apply_opacity, reverted it to the old logic of set_alpha. Updated tests, clamping is now used.
2015-05-20 13:08:18 -05:00
Blake Thompson
b68d079255
Changed the name of the set_alpha and multiply_alpha to be set_opacity and multiply_opacity
2015-05-20 12:39:01 -05:00
Blake Thompson
25c6576fdd
Updated the way that multiply_alpha works, such that it is not clamped at the multiplier, but rather at the result of the multiplier and alpha.
2015-05-20 12:39:00 -05:00
Jörg Afflerbach
b385c71789
Message about unused text nodes now also contains line numbers.
...
Helped me a lot when I needed to find a superfluous `-->` in a large `map.xml`.
2015-05-20 18:55:29 +02:00
artemp
a8a90b7656
use std::lock_guard instead of unique_lock (better fit for the job)
2015-05-20 16:12:22 +01:00
artemp
433741877d
fix - use std::size_t to avoid narrowing
2015-05-20 11:31:41 +01:00
artemp
3ce65e8b65
rename view_to_string to view_to_stream and tempalate on stream type
2015-05-19 11:58:20 +01:00
artemp
05b5d16e87
more std::size_t fixes (consistent usage)
2015-05-19 11:43:39 +01:00
artemp
64979f24b7
use enumeration type !
2015-05-19 11:30:51 +01:00
artemp
3b5a8f354f
use std::size_t
2015-05-19 11:17:01 +01:00
artemp
bf6b7d79bd
use if/else if ...
2015-05-18 11:21:56 +01:00
Dane Springmeyer
a3ac9dbca2
remove unused boost/math include and typedefs
2015-05-15 14:43:42 -07:00
Dane Springmeyer
7a0cf4d750
fix unused typedef warning in image_util
2015-05-15 14:43:42 -07:00
Blake Thompson
cf3ff82f1a
Also allow the possibility for negative values being passed to image option values
2015-05-15 15:51:53 -05:00
Blake Thompson
4fce3a7451
Updates to fix failing image options
2015-05-15 15:25:52 -05:00
Blake Thompson
219ad1f2cc
Updated min zoom and max zoom to use maximum scale denom and minimum scale denominator #1447
2015-05-15 14:34:12 -05:00
Blake Thompson
3e24c5a417
Doh, fixing stupid C++ that I wrote after properly writing a unit test
2015-05-15 13:21:51 -05:00
Blake Thompson
90de0d65cb
Corrected errors in palette unit test and corrected logic in bounding box projection transform
2015-05-15 12:15:27 -05:00
artemp
e892f752e9
update remaining image writers to use image_options
2015-05-15 16:55:30 +01:00
artemp
08986ca8a1
truncate white space character (U-0020) at wrapping point - ref #2670
2015-05-15 15:55:51 +01:00
artemp
ccc4a63cb9
call preceding
with index one pass current to handle case when i == break_point ( breakitr->preceding( i + 1)
)
...
ref #2701
2015-05-15 14:41:18 +01:00
Dane Springmeyer
c3d2f813f4
Merge pull request #2804 from mapycz/rm-log
...
remove useless log
2015-05-14 23:06:11 -07:00
Dane Springmeyer
3ae6e49a2e
Merge pull request #2812 from mapnik/feature/add_tests
...
Adding tests and cleanup
2015-05-14 23:05:48 -07:00
Dane Springmeyer
956de13d4e
fix issues reported by scan-build - closes #2813
2015-05-14 18:00:25 -07:00
artemp
6ed878955a
cleanup
2015-05-14 15:39:11 +01:00
artemp
75a77882e8
image_options - add key0=value0:key1:key2=value2 parser
...
remove tokenizer usage from image_util_png
2015-05-14 15:37:21 +01:00
Artem Pavlenko
2a8086fbcc
Merge pull request #2788 from mapycz/fix-labeling-on-polygons
...
fix labeling on polygons
2015-05-14 14:10:02 +01:00
Jiri Drbalek
78ce66aee0
remove useless log
2015-05-14 12:25:53 +00:00
artemp
881dba4fc9
fix camel case
2015-05-14 12:53:21 +01:00
artemp
ee414c4796
partially revive numeric_cast<>
2015-05-14 12:40:00 +01:00
Jiri Drbalek
527cbe7897
fix labeling on polygons
2015-05-14 11:26:01 +00:00
artemp
5b865d1f2e
more constness
2015-05-14 12:07:34 +01:00
artemp
3b3ca55042
remove numeric_cast + more constness correctness
2015-05-14 11:17:53 +01:00
artemp
e20ae67110
apply constness
2015-05-14 10:47:06 +01:00
artemp
78c56968c1
add clamp(v, min, max) function + clamp opacity
in ctor
2015-05-14 10:43:25 +01:00
Blake Thompson
f3abe7fc25
Added test coverage to image buffer
2015-05-13 16:50:31 -05:00
Blake Thompson
1dddfd17ef
Removed try catch around set_alpha, and just checked bounds. Added unit tests for image_view
2015-05-12 12:24:14 -05:00
Dane Springmeyer
493e1d8362
fix #2743 [skip ci]
2015-05-11 16:59:00 -07:00
Blake Thompson
74eea94a4e
Merge branch 'master' of github.com:mapnik/mapnik
2015-05-11 13:14:20 -05:00
Blake Thompson
f54164da75
Changed the way that set alpha worked, renaming old method to multiply_alpha, added new set_alpha, that simply sets the alpha. Added protection for overflows and underflows. Added unit tests to cover all code
2015-05-11 13:12:13 -05:00
artemp
614d2688de
make non-state mutating operator()s const
2015-05-11 16:09:01 +02:00
Blake Thompson
bbe88a9352
Added fix for null image views and added test coverage for is_solid
2015-05-10 14:27:44 -05:00
Dane Springmeyer
4c76edaef7
algorithm is a somewhat large stl header, move it to cpp
2015-05-06 06:37:06 -07:00
Dane Springmeyer
126c777c8d
shuffle around boost/geometry usage in headers to reduce compile time
2015-05-05 22:04:49 -07:00
artemp
47c272b874
c++ constness, formatting
2015-05-05 14:12:29 +02:00
Blake Thompson
0eecbd3e0f
Modified marker cache to store shared_ptrs in order to prevent threading issues and to close #2713
2015-05-04 14:11:41 -05:00
artemp
6d4a4139b3
is_switchable to control switchabilty of vertex_converters -- revive stroke_tag
...
fix vertex_converter in cairo/agg
2015-05-04 14:49:17 +02:00
artemp
470da20d53
fix remanining cAmEl case names
2015-05-04 12:49:11 +02:00
artemp
081cf02dcf
fix method signitures to use std::size_t
...
rename getSize() -> size(), getRowSize() -> row_size
2015-05-04 10:57:57 +02:00
Jiri Drbalek
78d7ea007a
fix labeling
2015-04-30 07:20:10 +00:00
Dane Springmeyer
4ade976ee1
fix SVG rendering
2015-04-29 15:41:18 -07:00
Artem Pavlenko
051944a22f
Merge pull request #2783 from mapycz/fix-infinite-loop
...
fix infinite loop
2015-04-29 11:41:52 +02:00
artemp
fd1bcbbeba
remove unused includes
2015-04-29 11:35:44 +02:00
Jiri Drbalek
2a79d1500b
fix infinite loop
2015-04-29 08:58:19 +00:00
artemp
c64dc3672a
vertex_converter - refactor to pass Processor
to apply function (while it allows to instantiate vertex_converter object only using converter tags, it doesn't reduce object code)
...
make offset_converter 'non-switchable' relying on be able to shortcut in `vertex(*x, *y)` when offset is 0.0 -> results in reduced binary size
2015-04-28 14:18:33 +02:00
Dane Springmeyer
930eb184d8
pedantic proj api usage
2015-04-26 23:24:19 +02:00
Dane Springmeyer
0685c43802
followup after #2773 : remove python from install doc,static datasources, utils
2015-04-25 08:21:59 +02:00
Dane Springmeyer
124362d2d4
stop correcting geometries at decode time
...
- the original motivation for this was to avoid needing to
mutate a copy later on (for operations needing correct winding order)
- but mutating a copy is looking feasible, so removing this now.
2015-04-22 14:27:43 +02:00
Dane Springmeyer
ef3364695b
avoid potential access of uninitialized text_placements_ptr - closes #2766
2015-04-22 14:27:07 +02:00
artemp
06d77865db
update to templated geometry
2015-04-22 12:23:51 +02:00
artemp
2768aa6a4a
Merge branch 'mapnik-geometry' into mapnik-geometry-template
2015-04-22 12:13:29 +02:00
Blake Thompson
d7f7bc18c1
A large set of changes that help allow WKT for int64_t type geometeries, modified some strategies, made it so that the clipper would use mapnik geometries.
2015-04-21 09:34:52 -05:00
Dane Springmeyer
3fb41e865a
fix outline drawing in debugsymbolizer ring mode
2015-04-14 15:33:05 +02:00
Dane Springmeyer
cdb9a2ead4
add debug symbolizer mode for visualizing exterior and interior rings and their winding order
2015-04-14 02:44:14 +02:00
Blake Thompson
f98fd0da7c
Added tests for non standard projections, forcing use of proj4.
2015-04-10 14:05:58 -05:00
Blake Thompson
2392c7eb12
Added geometry_reprojection_impl
2015-04-10 10:55:30 -05:00
Blake Thompson
87fb41907a
Added template to geometries
2015-04-09 15:22:51 -05:00
artemp
2bc2e6b85e
use geometry_to_path to convert geometry
2015-04-08 18:48:41 +02:00
artemp
310865a0c3
help compiler to apply RVO ( return the same object by value)
2015-04-08 13:10:22 +02:00
Blake Thompson
431c581759
Added a lot of additional tests for geometry_reprojection
2015-04-07 18:37:30 -05:00
Blake Thompson
c5d5a1f22e
Added several unit tests around reprojection.
2015-04-07 17:20:29 -05:00
Blake Thompson
0fec41a87e
Updated reprojection code
2015-04-07 11:55:45 -05:00
artemp
54d8746aa8
svg_renderer - add generate_path vertex processor (work-in-progress)
2015-04-07 15:46:06 +02:00
Blake Thompson
6be658f5b5
Moved geometry envelope to an impl
2015-04-06 11:00:03 -05:00
artemp
3be0074c20
bug fix - add missing break statement
2015-04-02 14:58:05 +02:00
Blake Thompson
5ca850a17e
Added proper use of auto in several for loops
2015-04-01 17:55:36 -05:00
Blake Thompson
78835c9d87
Initial commit for new method to provide geometry reprojection
2015-04-01 16:18:05 -05:00
artemp
390fff5bb4
ensure we're returning the same object from multiple return paths
...
from_wkb now returns geometry::geometry_empty instead of throwing
update cpp_tests
2015-04-01 15:04:05 +02:00
Dane Springmeyer
b88aaed491
wkb: use 'mapnik::geometry::correct'
2015-03-31 12:30:05 -07:00
artemp
74fb3ddde0
Merge branch 'master' into mapnik-geometry
2015-03-25 16:19:02 +01:00
artemp
dc6f1924fa
split multi geometries before applying placement algos
2015-03-25 14:20:47 +01:00
artemp
389d00d442
make geometry methods templated to allow using modified geometry types ( e.g variant<reference_wrapper<T>..>
...
symbolizer_helper - store geometries in custom varaint using reference_wrapper<T const>
2015-03-25 12:58:50 +01:00
Dane Springmeyer
b87e09c147
fix memory datasource accumulate_extent
2015-03-24 14:46:26 -07:00
Dane Springmeyer
dcc5632f82
svg_renderer is broken, disable temporarily
2015-03-24 14:15:57 -07:00
Blake Thompson
3270d42b74
Standardizing on the output of a boolean to string is true or false rather then 0 or 1.
2015-03-24 14:32:25 -05:00
artemp
4389c80d84
and finaly, rename 'new_geometry' namespace to 'geometry'
2015-03-24 14:21:28 +01:00
artemp
7e03d41606
rename geometry_impl.hpp to geometry.hpp
2015-03-24 13:32:05 +01:00
artemp
323fdd5212
rename geometry -> path ( geometry_type -> path_type)
2015-03-24 13:17:07 +01:00
artemp
ac1ffa2bfb
move geometry.hpp into path.hpp and update code base to reflect this change
2015-03-24 12:42:09 +01:00
artemp
1cf0a897ac
move datasource::geometry_t into separate header and rename -> datasource_geometry_t to avoid cyclic dependencies issue
...
to_ds_type - return actual datasource_geometry_t (remove optional)
update across datasources
experssions - revert to using
2015-03-24 12:13:31 +01:00
artemp
9352d69987
refactor local pattern alignment calc
2015-03-20 10:43:42 +01:00
artemp
360f920924
Merge branch 'master' into mapnik-geometry
2015-03-20 09:51:59 +01:00
Blake Thompson
08a3911b0a
Added the introduction of an image_view_null, this could possibly fix windows build issues
2015-03-19 21:28:16 -05:00
Dane Springmeyer
c1d7fe3a8f
fix compile error on windows: error C2065: 'M_PI': undeclared identifier
2015-03-19 12:14:24 -07:00
artemp
8a0b4a6b6e
Merge branch 'master' into mapnik-geometry
2015-03-19 19:17:01 +01:00
artemp
3bbb9a24f1
debug_symbolizer - update to use mapnik-geometry
2015-03-19 12:30:21 +01:00
Dane Springmeyer
85b20f45d7
Merge pull request #2682 from mapycz/fix-enum-word-separator
...
fix enum word separator
2015-03-19 00:22:31 -07:00
artemp
28fe4847b9
csv.input - correct
WKT geometry to be consistent
...
symbolizer_helper - handle geometry types in VERTEX_PLACEMENT
2015-03-18 16:18:44 +01:00
artemp
6a8e78ab9c
fix group_symbolizer_helper
2015-03-18 13:50:15 +01:00
Matt Amos
dd5f6ea739
Use correct bounding box for avoid-edges check.
...
This was previously using `query_extent_`, which is in
world-space, but it should have been using `dims_`, which is the
extent of the rendered area in pixel-space, as the calculations
for collisions are all done in pixel-space.
2015-03-18 11:57:21 +00:00
artemp
1bb06d89fa
group_symbolizer - update to mapnik-geometry
2015-03-18 12:10:21 +01:00
artemp
ab5116df8d
dot_symbolizer - update to use mapnik-geometry
2015-03-17 16:53:28 +01:00
artemp
beb705acb3
Merge branch 'master' into mapnik-geometry
2015-03-17 09:45:19 +01:00
Blake Thompson
5a49842952
Moved image_null into a header
2015-03-16 12:18:07 -05:00
artemp
71c9c04e92
Merge branch 'master' into mapnik-geometry
2015-03-16 16:20:46 +01:00
Dane Springmeyer
dc31d53cdc
fix labeling on polygons (allows kurdish-text visual test to pass)
2015-03-16 00:32:25 -07:00
Blake Thompson
46ea6a5b1a
Added impl for image_view_any and fix to benchmark that was missing include for mapnik/color.hpp
2015-03-13 17:28:22 -05:00
Blake Thompson
64ee848445
Forgot to add src/image_vew.cpp
2015-03-13 16:48:45 -05:00
Blake Thompson
29099ece46
Added image_view implementation
2015-03-13 16:34:49 -05:00
Blake Thompson
bf61a033d3
Intial commit for impl
2015-03-13 10:52:39 -05:00
artemp
914b8dbd76
Merge branch 'master' into mapnik-geometry
2015-03-12 15:14:45 +01:00
Artem Pavlenko
9117e7d9ff
Merge pull request #2621 from mapycz/markers-upright
...
marker direction
2015-03-12 14:58:16 +01:00
artemp
50ca6fcbe8
Merge branch 'master' into mapnik-geometry
2015-03-12 14:55:45 +01:00
artemp
6d13454f72
reinstate 'from_wkt' interface
2015-03-12 14:12:53 +01:00
artemp
f3edf2dfc0
wkt_grammar - update to use mapnik-geometry and optimise(minimise) memory allocations
2015-03-11 11:55:43 +01:00
Blake Thompson
fe01d52845
Removed unused resolution data from grids
2015-03-10 23:19:30 -05:00
Dane Springmeyer
c8e56f1128
fix high zoom crash in line pattern rendering - closes #2726
2015-03-10 18:16:04 -07:00