Dane Springmeyer
1ad3ae044b
at workaround for throw_out_of_range_fmt
2017-11-09 10:07:26 -08:00
Artem Pavlenko
98c26bcae0
SVG parser - fix default gradient vector in linear gradient [0,0,1,0] + support units in offset
attribute.
2017-11-06 12:39:50 +01:00
Artem Pavlenko
743c14d3ff
add UDL via operator"" _case
2017-11-06 10:31:53 +01:00
Ben Harper
05849f0da5
Add new angled-point marker placement mode for lines
...
This adds a new mode called 'angled-point' to the marker-placement modes.
The full list of modes is then:
point, angled-point, interior, line, vertex-first, vertex-last
Angled point is identical to point, except that when placing a marker on
a line, the marker's angle is taken from the angle of the line segment.
There is another possible use of the "angled-point" concept for polygons,
and that is for placing labels on stand (aka erf) polygons. By computing
a dominant angle for a mostly rectangular polygon, this can produce quite
good results. I'm not sure whether I should implement that now, or if I
could do that later.
2017-10-26 15:09:17 +02:00
talaj
8347778abb
fix memory leak ( #3775 )
2017-10-06 09:27:58 +02:00
talaj
377253bcc8
Check duplicate style names ( #3770 )
...
* Ported map I/O tests from Python.
These test loading, saving and round-tripping Map XML, and are
pretty much a direct port of the old Python `load_map_test.py` and
`save_map_test.py`.
* check duplicate style name
* update test data
2017-09-28 15:51:55 +02:00
Artem Pavlenko
3d4963f40c
move implementatio into *.cpp + return 'closest_point_result' struct.
2017-09-22 13:21:50 +02:00
talaj
d14203561d
color font support improvements ( #3758 )
...
👍
2017-09-13 10:14:46 +01:00
Artem Pavlenko
01574e8038
update comment
2017-09-12 09:43:50 +01:00
Dane Springmeyer
4bc7ec73de
fix spelling in svg parser error
2017-09-10 08:59:54 -07:00
artemp
a682cea51e
svg-parser - unify error messages text + update unit test
2017-08-08 12:38:24 +01:00
artemp
6f73181e9b
Enforce consistent error handling policy - always throw on fatal errors (both strict and non-strict). In strict
mode throw on first parsing error. Remove return values from parse
,parse_from_string
and traverse_tree
methods. Update unit tests.
2017-08-02 10:32:13 +01:00
artemp
a26723b4a5
add missing ' in error message.
2017-08-02 10:32:00 +01:00
Jiri Drbalek
a3247c8dce
remove superfluous line
2017-07-07 20:44:15 +00:00
artemp
b164117d99
disable handling unsupported attributes (leaving only well-known unsupported elements) to reduce verbosity.
2017-07-07 10:09:08 +02:00
talaj
53249053e4
cairo renderer: clear map background with given color as agg renderer does ( #3718 )
2017-07-04 16:32:45 +02:00
talaj
d0ecd51b63
Set premultiplied flag to the color font glyph bitmap ( #3716 )
...
* color font bitmap is premultiplied
* update visual tests
2017-07-03 17:15:07 +02:00
artemp
71344f78df
wkb_reader : pre-allocate number of polygons in multi_polygon
and number of geometries in geometry_collection
via vector.reserce(...)
2017-07-03 15:18:23 +02:00
artemp
1e8ec57593
add <image> and <switch> to unsupported
elements.
2017-06-29 09:41:16 +02:00
artemp
47bfe7cb91
make unsupported
elements/attributes arrays const.
2017-06-29 09:41:16 +02:00
artemp
5118220c4c
handle "well-known" unsupported elements and attributes.
2017-06-29 09:41:16 +02:00
artemp
8f2961b9e2
svg_parser - implement preserveAspectRatio
support (ref https://www.w3.org/TR/SVG/coords.html#PreserveAspectRatioAttribute )
2017-06-29 09:41:16 +02:00
artemp
3edcd4afa2
fix viewBox
coordinate system logic + apply transform in <use>
element
2017-06-29 09:41:16 +02:00
artemp
fafc751e42
svg_parser - add support for "href" preserving deprecated (since SVG 2) "xlink:href"
2017-06-29 09:41:16 +02:00
artemp
c2ad505899
fix method name
2017-06-29 09:41:16 +02:00
artemp
aae7253ba1
SVG parser - refactor to use switch
where appropriate + experimental support for <symbol>
2017-06-29 09:41:16 +02:00
artemp
87abf93da3
move name_to_int
into separate header for re-use.
2017-06-29 09:41:16 +02:00
artemp
2de8ce0eb7
svg_parser - don't log unsupported entities just yet (ref #763 )
2017-06-29 09:41:16 +02:00
artemp
53a69463ea
SVG parser - add support for <use>
element (ref #763 ).
2017-06-29 09:41:16 +02:00
artemp
199a281627
remove debug stderr
2017-06-29 09:41:16 +02:00
artemp
ca4d140fb0
cleanup
2017-06-29 09:41:16 +02:00
artemp
b6aa45144c
svg_parser - refactor => remove mutable temporary_gradient_
member variable + process stop
elements from within linearGradient
and radialGradient
.
2017-06-29 09:41:16 +02:00
artemp
6da83bc986
svg_parser - store unresolved
gradient nodes for deferred initalisation.
2017-06-29 09:41:16 +02:00
artemp
ef6c2e71b8
svg-parser : handle parsing failures via error_handler
( throw in strict mode and log+continue when strict==false)
2017-06-29 09:41:16 +02:00
artemp
e56233833e
svg_parser - fix bug introduced in previous commit.
2017-06-29 09:41:16 +02:00
artemp
3f591af871
initial support for strict SVG parsing (WIP)
2017-06-29 09:41:16 +02:00
artemp
5aba57eb61
remove out-of-date comment line [skip ci]
2017-06-15 11:33:36 +02:00
artemp
3451d11b00
tiff_reader - fix num_rows
logic in read_stripped
method ref #3679
2017-06-12 17:55:24 +02:00
Jiri Drbalek
a734ff1e90
layers should be composited with zero offset
2017-06-02 15:32:00 +00:00
artemp
dfa8f100b2
freetype_engine - port singleton
changes from v3.0.x
2017-06-01 12:47:18 +02:00
artemp
c61e85b875
unify namespace names
2017-05-23 18:49:25 +02:00
artemp
3a475517c0
TIFF I/O - use memory mapping in tiff_reader.cpp
when MAPNIK_MEMORY_MAPPED_FILE
is defined.
2017-05-22 16:29:22 +02:00
artemp
34a622f48e
TIFF I/O - use memory mapping for file based I/O.
2017-05-22 13:07:42 +02:00
artemp
3c1be21162
tiff_reader - use image_reader_exception
2017-05-22 13:05:08 +02:00
artemp
12d6662009
TIFF I/O - read_tiled
: remove std::swap_ranges and apply the same logic as in read_stripped.
2017-05-18 16:43:27 +02:00
artemp
4d8796dbd3
remove unused code
2017-05-18 15:23:22 +02:00
artemp
545bcb6585
remove bogus assert
2017-05-18 14:24:01 +02:00
artemp
cb7a3abfcb
follow up fix for the bug reported by @flippmoke + fix return value check in TIFFReadRGBAStrip
2017-05-18 13:12:52 +02:00
Blake Thompson
efcb667f03
The last stripe of a tiff could be read incorrectly due to a swap
2017-05-17 17:06:40 -05:00
artemp
ef9b1025fa
fix bug - use tile_width_
and tile_height_
+ cleanup
2017-05-17 14:55:41 +02:00
artemp
1d95cad922
TIFF I/O - make read_stripped
handle both RGBA and raw encoded strips ( #3670 )
2017-05-16 13:44:55 +02:00
artemp
e8cd4b9aef
TIFF I/O : update and fix logic handling rgba vs grey scale.
2017-05-12 18:39:58 +02:00
artemp
e62bf6e18f
TIFF I/O - use scanline
to read stripped
grey for now.
2017-05-12 15:55:46 +02:00
artemp
88fb137061
TIFF I/O - make read_tiled templated on ImageData
ref #3669 #3670 (WIP)
2017-05-11 17:25:07 +02:00
artemp
db2eaf2e2b
TIFF I/O : add support for interleaved data in void tiff_reader<T>::read_tiled(std::size_t x0,std::size_t y0, ImageData & image)
ref #3669 #3670
2017-05-11 12:13:07 +02:00
artemp
1725b1ebba
TIFF.input - port changes from https://github.com/mapnik/mapnik/pull/3668 (ref #3669 )
2017-05-10 14:33:29 +02:00
artemp
77f849b136
TIFF I/O : add support for multiple bands in 'scanline reading method in
read_any_gray` (partially fixes #3669 )
...
(NOTE: we default to `scanline` even for `stripped` images, TODO add support as per #3670 )
2017-05-10 13:21:51 +02:00
artemp
333ef9fde1
update copyright year
2017-05-05 13:02:01 +02:00
artemp
064b99168b
geometry.hpp
2017-03-27 16:14:51 +01:00
artemp
fd36ac5279
Merge branch 'master' into geometry-refactor
2016-11-10 18:01:11 +01:00
Jiri Drbalek
0221cd36df
take scale_factor into account when inflating buffer
2016-10-17 11:59:21 +00:00
Jiri Drbalek
b830469d2d
multiply blur radius by scale_factor
2016-10-17 11:59:21 +00:00
artemp
8e0e344b72
Merge branch 'master' into geometry-refactor
2016-09-05 09:41:52 +01:00
Dane Springmeyer
fa44f0e247
Add memory_datasource test + fix returning of invalid_featureset for emptyset
2016-09-02 15:09:45 -07:00
artemp
38bff90a99
Merge branch 'master' into geometry-refactor
2016-09-01 16:06:20 +01:00
artemp
af099a57ef
topojson grammar - change interface + instantiate with Iterator = char const*
to reduce binary size
2016-08-31 17:42:18 +01:00
artemp
f360f50eed
JSON - make generic_json
a proper spirit grammar and reduce code bloat
2016-08-31 14:36:35 +01:00
Dane Springmeyer
f81583554a
Merge branch 'master' of github.com:mapnik/mapnik into geometry-refactor
2016-08-22 16:19:17 -07:00
artemp
3788b2781e
tiny format
2016-08-16 15:36:43 +01:00
artemp
31814b32d0
rename empty_featureset
=> invalid_featureset
to avoid ambiguity + add helper is_valid
method
2016-08-15 10:41:30 +01:00
artemp
aa77eb4550
Expressions - add more regex tests to cover #3483
2016-08-09 16:13:12 +01:00
Artem Pavlenko
b0cf57aa53
Merge pull request #3477 from mapycz/cairo-style-level-comp-op
...
Style level comp-op and opacity for Cairo renderer
2016-08-08 10:52:54 +01:00
Bas Couwenberg
2003415f09
Fix 'occured' typo, replace with 'occurred'.
2016-08-05 14:50:50 +02:00
Bas Couwenberg
388a8a7c4d
Fix 'intialize' typo, replace with 'initialize'.
2016-08-05 14:49:45 +02:00
Jiri Drbalek
621a5e51ac
style level comp-op and opacity for Cairo renderer
2016-08-03 20:14:56 +00:00
artemp
d3293f73e1
c++ format
2016-07-25 15:55:50 +02:00
Dane Springmeyer
7fc9dfe06b
simplify visitor code in image_compositing
2016-07-25 14:51:45 +02:00
artemp
2864d90460
more explicit conversions to the target variant type
2016-07-25 13:45:35 +02:00
artemp
7fa35f481e
Support creating paletted images for any number of pixels e.g < 3 (ref #3466 )
2016-07-20 14:01:14 +02:00
artemp
7712f253c9
represent value_null as an empty string e.g "" (text rendering logic)
2016-07-20 12:39:55 +02:00
artemp
dc88582b4d
Merge branch 'master' into geometry-refactor
2016-07-19 10:25:33 +01:00
artemp
3d0b109739
value_null - always represent as "null"
2016-07-15 12:22:53 +01:00
artemp
54d51e2728
Revert "feature_kv_iterator - change logic in 'increment' to skip key/value's when value doesn't exist"
...
This reverts commit 3397b8f14f
.
2016-07-15 12:21:41 +01:00
artemp
3397b8f14f
feature_kv_iterator - change logic in 'increment' to skip key/value's when value doesn't exist
2016-07-14 09:46:37 +01:00
artemp
bab985dd04
always return am empty featureset instead of featureset_ptr()
2016-07-13 15:17:51 +01:00
artemp
dc74551dc0
always return am empty featureset instead of featureset_ptr()
2016-07-13 15:16:33 +01:00
artemp
efabcc8081
make all mapnik::geometries aliases to mapbox::geometry and attempt to adapt new polygon model (one std::vector)
...
NOTE: some boost.geometry algorithms are broken as a result
2016-06-29 12:41:57 +01:00
artemp
19d376b7e6
make mapnik::geometry::point<T> an alias to mapbox::geometry::point
2016-06-27 09:45:37 +01:00
artemp
9dd00b28dc
Merge remote-tracking branch 'origin/master' into geometry-refactor
2016-06-27 08:51:55 +01:00
artemp
7de7464caf
tidy
2016-06-22 17:25:37 +01:00
artemp
2e8c0d36c2
implement custom char_array_bufrer
and remove boost::iostreams dependency
2016-06-22 17:21:25 +01:00
artemp
67d2a0e141
Merge branch 'master' into geometry-refactor
2016-06-20 15:01:29 +01:00
Mickey Rose
217d18a996
use std::deque to store svg::path_attributes
...
- refs #3453
2016-06-16 22:34:24 +02:00
Joris Valette
7ca86b0947
Fix stroke-width size not included in markers ellipse bounding box
2016-06-03 11:12:14 +02:00
artemp
efdc90f699
fix building with BIGINT=no (NOTE: some tests will fail)
2016-05-26 17:23:53 +02:00
artemp
a24dfbf6a0
simplify logic a bit
2016-05-26 16:27:22 +02:00
artemp
081c003b0e
c++ style
2016-05-26 16:27:22 +02:00
Artem Pavlenko
aec5949d5a
Merge pull request #3416 from mapycz/scale-factor-improvements
...
Scale factor improvements
2016-05-18 15:05:04 +02:00
artemp
e596ffc1c2
don't instantiate types that are not used in core library
2016-05-03 18:33:06 +02:00
artemp
ff821c9239
geometry::envelope - deduct value_type of box2d<T> automatically + add missing typedefs
2016-05-03 18:02:42 +02:00