Jiri Drbalek
18c1a99604
Polygon pattern on line geometries for AGG backend
2018-09-18 12:12:21 +00:00
Jiri Drbalek
8b27aba0c4
Fix seams of mesh faces when warping transparent raster
2018-08-07 11:57:38 +00:00
Artem Pavlenko
af842a8bf9
Merge branch 'pi-is-wrong' of https://github.com/lightmare/mapnik into lightmare-pi-is-wrong
2018-07-30 10:40:51 +01:00
Jiri Drbalek
4a93209423
render building symbolizer rewrite
...
- make projection and view transforms first
- removed dependency on segment_t
- no need for sorting faces
2018-07-27 10:23:33 +00:00
Artem Pavlenko
65080e2a95
add support for BOOST_VERSION < 106700
2018-07-23 10:58:27 +01:00
Artem Pavlenko
4c31bd16d2
Merge branch 'master' into boost_1_67
2018-07-18 09:27:56 +01:00
Mickey Rose
68a7f5f63c
proj_transform: fix strided coordinate array transform
2018-07-16 14:18:49 +02:00
Mickey Rose
f84191204e
eradicate M_PI
2018-07-16 14:18:49 +02:00
Mickey Rose
32e7202223
well_known_srs: move implementation to .cpp
...
- add lonlat2merc, merc2lonlat overloads for single point
- add stride argument to overloads for coordinate arrays
- make all functions exported
- change static string constants to exported
- change static numeric constants to constexpr
- remove superfluous numeric constants
2018-07-16 14:18:32 +02:00
Mickey Rose
a0a2c78950
util/math: clamp, degrees, radians
...
Use common functions for degrees <-> radians conversions, except when
dealing with agg, where it makes sense to use available deg2rad/rad2deg
functions instead of including another header.
2018-07-13 12:34:25 +02:00
Mickey Rose
0a6e82e555
move src/math.cpp under src/util/
2018-07-11 23:55:21 +02:00
Mickey Rose
7c4ccf0209
make util::normalize_angle reasonably fast on large values
...
Because it simply calculates the remainder after division by full turn,
it shouldn't take time proportional to the magnitude of its operand.
2018-07-11 23:14:23 +02:00
Mickey Rose
25f0ef09a5
use MAPNIK_VERSION_AT_LEAST for minimum-version check
2018-07-11 10:43:06 +02:00
Mickey Rose
947e424f56
proj_transform: fix bbox reprojection
...
- remove buggy calculate_bbox, use boost::geometry::envelope instead
- move helper envelope_points to anonymous namespace and make it always
produce exactly the requested number of points, even if it's not
evenly divisible by 4
2018-07-10 11:31:06 +02:00
Dane Springmeyer
434511ca3b
fix to only throw in strict mode
2018-06-24 19:08:38 -07:00
Dane Springmeyer
7673bbe827
only throw on duplicate styles in strict mode
2018-06-24 10:19:33 -07:00
Raul Marin
8e11ef3fd7
Improve padding calculation
2018-06-06 18:39:15 +02:00
Artem Pavlenko
95d5fabad0
Merge branch 'master' into boost_1_67
2018-05-21 15:58:24 +01:00
Jiri Drbalek
846e961b05
Replace magic number with described constant
2018-05-08 16:54:46 +00:00
Jiri Drbalek
3deb55cc5f
Use existing constant
2018-05-08 16:44:41 +00:00
Artem Pavlenko
b1a19bc13c
Merge branch 'master' into boost_1_67
2018-05-01 10:01:59 +02:00
Raul Marin
3171b89fea
Generalize overlap_optimization to use points and text too
2018-04-27 17:15:03 +02:00
Raul Marin
0a2be27ba9
Use overlap optimization in load_map_string too
2018-04-27 17:14:57 +02:00
Artem Pavlenko
b7bdd08837
define BOOST_SPIRIT_INSTANTIATE_UNUSED once and re-use [skip-ci]
2018-04-18 14:18:40 +02:00
Artem Pavlenko
664d3508de
remove reference_wrapper usage when injecting attributes into grammar ( >= boost_1_67) [skip-ci]
2018-04-18 12:53:17 +02:00
Artem Pavlenko
c946620fec
remove unused instantiation
2018-04-18 10:31:33 +02:00
Artem Pavlenko
9e79e1edf1
update const-ness in x3::context definitions to support boost 1_67 [skip-ci]
2018-04-17 15:41:17 +02:00
Artem Pavlenko
82fb67441f
Merge pull request #3880 from Algunenano/master_icu61
...
Qualify ICU types explicitly
2018-04-10 10:32:30 +02:00
Artem Pavlenko
d2d587cb1b
mapycz-save-map-denominator
2018-04-10 10:25:23 +02:00
Raul Marin
1ddfe6c315
Qualify ICU types explicitly
...
ICU 61 has dropped the global `using namespace icu;`
http://site.icu-project.org/download/61#TOC-Migration-Issues
2018-04-03 13:18:43 +02:00
Blake Thompson
25e4bb3f6c
A fix for two distinct issues associated with gdal featuresets, the first is overviews were not properly being utilized based on the resolution of the final image requested. The second is that allocation of far too much memory could be possible in GDAL to attempt to do resampling internally in mapnik. This now has a hard cap so that we allocate less memory in these situations but are still able to resample internally in mapnik.
2018-03-30 15:10:29 -05:00
Jiri Drbalek
ac50139c54
Raster colorizer: check image bounds
2018-03-23 11:55:40 +00:00
Artem Pavlenko
a8d7fc1cfb
Revert "avoid symbols duplication"
...
This reverts commit c737f4d56f
.
2018-03-15 15:58:23 +01:00
Artem Pavlenko
c737f4d56f
avoid symbols duplication
2018-03-09 09:57:49 +01:00
Artem Pavlenko
934124d30c
follow up on 5b8b75e680
2018-03-01 12:11:03 +01:00
Artem Pavlenko
eb1a32eb79
fix dereferencing out-of-range iterator (caught by -fsanitize=undefined,integer) ( #3867 )
2018-03-01 11:54:41 +01:00
Artem Pavlenko
17a98767b4
use safe_cast
for narrowing double->typename span_gen_type::value_type cast ( #3856 ) (thanks @talaj!)
2018-02-14 16:47:47 +01:00
Artem Pavlenko
15f16ce6ec
cast header to unsiged char const* (-fsanitize=address)
2018-02-13 13:34:42 +01:00
Jiri Drbalek
f10e051e17
Add grid placement for text and shield symbolizer
2018-02-06 15:19:05 +00:00
Jiri Drbalek
69c3ee550d
interior, polylabel: Scale precision by polygon size
2018-02-03 14:00:30 +00:00
Jiri Drbalek
0c5d167028
polygon_vertex_adapter: Fix crash in case of empty interior ring
2018-01-23 15:18:44 +00:00
Jiri Drbalek
99038229f7
Polylabel: cover the case of empty polygon or exterior ring
2018-01-17 13:39:15 +00:00
Jiri Drbalek
a97eace434
Interior: cover the case of empty polygon or exterior ring
2018-01-17 12:58:42 +00:00
Artem Pavlenko
ff31c6d6eb
SVG parser - add ignore_
member variable to allow skipping of unsupported elements, currently clipPath
( #3818 )
2018-01-09 15:19:52 +00:00
Artem Pavlenko
c24568f033
Merge branch 'polylabel-as-interior' of https://github.com/mapycz/mapnik into mapycz-polylabel-as-interior
2018-01-08 10:21:09 +00:00
Artem Pavlenko
c29f944726
Merge branch 'fix-group-symbolizer-crash' of https://github.com/lightmare/mapnik into lightmare-fix-group-symbolizer-crash
2018-01-05 12:16:41 +00:00
Jiri Drbalek
f52a0fa4f6
new interior algorithm
2017-12-13 21:48:13 +00:00
Jiri Drbalek
ea7ba2c099
add polylabel placement method
2017-12-13 21:48:13 +00:00
Jiri Drbalek
e243e16fd9
find text interior placement after reprojection
2017-12-13 21:48:13 +00:00
Artem Pavlenko
43d7278352
Don't apply preserveAscpectRatio
logic logic if width
and height
expressed as % values ( #3812 )
2017-12-06 11:23:54 +01:00
Artem Pavlenko
bfb071233e
fix 'prioritize_linking' option + remove depricated has_key
usage
2017-11-23 11:30:35 +01:00
Artem Pavlenko
a04caf339e
Merge branch 'master' into scons3
2017-11-22 15:47:03 +01:00
Artem Pavlenko
ce12610adc
Add copyleft notice
2017-11-21 15:53:08 +01:00
Artem Pavlenko
5732df452c
support SCons 3 (initial attempt)
2017-11-16 11:59:55 +01:00
Dane Springmeyer
f32f3b34ae
add glibc_workaround.cpp if option is chosen
...
This reverts commit 751d9bff1672f6b8cbd2b5ebe2eb460223746806.
2017-11-15 20:32:38 -08:00
Artem Pavlenko
3cb74f0871
attempting to fix #3793
2017-11-14 10:10:26 +01:00
Artem Pavlenko
97f520c7cf
cleanup
2017-11-14 10:10:26 +01:00
Artem Pavlenko
4aaba786fa
fix warning: comparison of integers of different signs
2017-11-13 09:48:31 +01:00
Dane Springmeyer
c2ca920181
remove inadvertent change
2017-11-09 10:08:23 -08:00
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