Artem Pavlenko
bd018ef5ab
git-clang-format
2022-11-03 11:29:50 +00:00
Konstantin Käfer
98e5e64d80
SVG: Fix reflection points for smooth curves after arcs
...
Internally, Agg/Mapnik converts arcs to curves. This means that the detection logic in the “smooth curve” command, which looks at the previous points for calculating the reflection point, mistakenly assumes that the previous commands were curve commands, even though they were in reality arc commands. To fix this, we add an explicit lineto command after every arc.
2022-10-18 12:17:05 +02:00
Artem Pavlenko
9cf40a6144
Fix radial-distance
simplification algorithm to always oupput last vertex (ref #4347 )
2022-09-23 09:41:11 +01:00
Mathis Logemann
4cd4985e75
resolve double defined symbol
2022-08-23 21:37:06 +02:00
Mathis Logemann
213be3777c
Merge branch 'master' of https://github.com/mapnik/mapnik into feature/cmake-static
2022-08-17 17:34:52 +02:00
Mathis Logemann
2b7456f54b
Revert "precommit"
...
This reverts commit f48589738f
.
2022-08-17 17:22:07 +02:00
Mathis Logemann
f48589738f
precommit
2022-08-17 17:19:59 +02:00
Mathis Logemann
eb16e7a647
fix all files
...
format files
2022-08-14 22:26:31 +02:00
Artem Pavlenko
9627432723
Fix -Wdeprecated-enum-enum-conversion
warnings (AGG)
2022-08-04 11:25:35 +01:00
Artem Pavlenko
a9c98dff5d
Fix deprecation warning (libtiff)
...
/usr/include/x86_64-linux-gnu/tiff.h:81:45: note: 'uint16' has been explicitly marked deprecated here
typedef TIFF_MSC_DEPRECATED uint16_t uint16 TIFF_GCC_DEPRECATED;
2022-08-04 11:01:56 +01:00
Mathis Logemann
2b8eec969b
PluginInfo: remove static init and exit methods
...
those aren't used.
2022-03-15 21:12:43 +01:00
Mathis Logemann
0f0e06c6b8
[datasource] add plugin_registered function
2022-02-14 10:14:59 +01:00
Mathis Logemann
65dde2cce3
Merge branch 'master' of https://github.com/mapnik/mapnik into feature/cmake-static
2022-02-07 15:35:45 +01:00
Mathis Logemann
42f465f842
refactor datasource plugins
...
fix merge
remove old DATASOURCE_PLUGIN call
fix memory_datasource
wip
wip
fix temp return
fix install
wip before_unload
linux
remove docker
remove docker
comments
add windows error message if libmapnik=static and plugins=dynamic
fix false plugin macro
plugin default de/constructor to remove UB
simplyfy plugin targets - add fpic
fix makro
simplyfy
use unique_ptr for plugin handle
rename option static plugins
replace local init with fnc call
call setup everywhere
init datasource_static
2022-02-07 15:35:09 +01:00
Mathis Logemann
d148121dad
fix formatting of warning.hpp
2022-02-02 17:31:43 +01:00
Mathis Logemann
8a1f2579e9
Merge branch 'master' of https://github.com/mapnik/mapnik into feature/cmake-static
2022-02-02 17:15:55 +01:00
Mathis Logemann
2d846dd5f3
static plugins
...
wip static plugins
add remaining datasources
wip
formatting
2022-02-02 16:35:49 +01:00
Mathis Logemann
779787f980
Merge branch 'master' of https://github.com/mapnik/mapnik into feature/clang-format
2022-01-28 10:31:55 +01:00
Artem Pavlenko
7df7e16c56
Merge pull request #4284 from mathisloge/fix/windows-utf8
...
CMake stuff, missing includes and enables tiff test on windows
2022-01-28 09:20:52 +00:00
Artem Pavlenko
dafdbb01ea
Merge pull request #4276 from mathisloge/remove_cxx11_support
...
remove cxx11_support.hpp
2022-01-28 09:18:53 +00:00
Mathis Logemann
ba27149232
add missing includes
2022-01-27 18:32:21 +01:00
Mathis Logemann
6dcf754077
format dir test
...
format dir test
fix
2022-01-27 00:12:12 +01:00
Mathis Logemann
e7c3d04309
format dir include and src
...
format all files
Revert "format all files"
This reverts commit 95d5812e49e7f916b68e786596f5a8eb5bcac414.
Revert "format some files"
This reverts commit ed3c8762d4d828b2b28e7b18809fc33f4f8ccaf5.
format all files
fix formatting in dir include
fix formatting of debug macro
2022-01-27 00:12:08 +01:00
Artem Pavlenko
1d6350b1e5
Merge pull request #4281 from mathisloge/fix/unique_shared_ptr
...
use shared::ptr<T>::use_count instead of unique()
2022-01-25 12:09:52 +00:00
Mathis Logemann
9ac35a0a9c
use use_count instead of unique()
...
This should be safe to use, since there aren't any weak_ptr's using the shared_ptr. Furthermore any async operations should be finished or guarded for multithreaded execution.
2022-01-25 10:21:27 +01:00
Artem Pavlenko
9e3bafcd4c
Merge pull request #4279 from mathisloge/fix/issue-4268
...
fix #4268 by adding mapped_memory_file
2022-01-25 08:54:50 +00:00
Mathis Logemann
fe887a2c83
fix #4268 by adding mapped_memory_file
2022-01-24 10:45:32 +01:00
Mathis Logemann
26052486ee
remove cxx11_support.hpp
2022-01-20 23:07:17 +01:00
Mathis Logemann
4f95463c75
remove make_unique
2022-01-19 12:42:52 +01:00
Mathis Logemann
e626ba2688
replace _WINDOWS with _WIN32
2021-10-21 18:22:53 +02:00
Joshua Hintze
cab3ba345c
-Removed unneeded macro escapes
2021-10-15 19:33:50 -06:00
Joshua Hintze
15798e6ebb
-Fixed issue with VS2017 compiling
2021-10-15 19:31:45 -06:00
Mathis Logemann
bf6081b207
[unit-test] add std includes for external catch2
2021-10-09 13:46:24 +02:00
Mathis Logemann
8500b3cd69
remove not needed include of <warning.hpp>
2021-07-24 00:58:28 +02:00
Mathis Logemann
a7ec89a8a1
Merge branch 'master' of https://github.com/mapnik/mapnik into cmake-support
2021-05-29 22:43:59 +02:00
Artem Pavlenko
0efdcafe56
make from_u8string
inline
2021-05-17 16:11:53 +01:00
Artem Pavlenko
6fa2666747
Add convertion functions from_u8string
to support c++20 + update tests
2021-05-17 16:11:44 +01:00
Mathis Logemann
4879efce58
Merge branch 'master' of https://github.com/mapnik/mapnik into cmake-support
2021-04-22 19:41:35 +02:00
Artem Pavlenko
f293371a9d
SVG rendering improvements:
...
* process `font-size` attributes and use them to scale `em` units
* fix default `color-stop` value
* store `viewBox` and use it to calculate `%` values correctly
* add more absolute/relative values
* default `DPI`:96
* default `font-size`: 10
* process style attributes on `<svg>` element
* use viewBox `width`, `height` and `normalized_diagonal` for relevant length values
* apply scale factor to gradient transforms
2021-04-13 09:19:33 +01:00
Artem Pavlenko
9c2132f895
Fix gradient transform calc (apply scale factor)
2021-04-13 09:17:48 +01:00
Artem Pavlenko
ff8c411749
Use DPI=96 + add absolute and relative sizes + add missing value units
2021-04-12 14:16:39 +01:00
Mathis Logemann
b6d8f54779
Merge branch 'master' of https://github.com/mapnik/mapnik into cmake-support
2021-04-06 18:38:51 +02:00
Artem Pavlenko
6bab4e56fd
Move MAPNIK_DECL
to the front (ref https://github.com/mapnik/mapnik/pull/4220#issuecomment-814259514 )
2021-04-06 17:36:46 +01:00
Mathis Logemann
9049a7e58d
Merge branch 'master' of https://github.com/mapnik/mapnik into cmake-support
2021-04-06 17:27:28 +02:00
Artem Pavlenko
b974a4a683
Simplify proj_transform_cache implementation (ref https://github.com/mapnik/mapnik/pull/4191#issuecomment-813377082 )
2021-04-06 10:30:12 +01:00
Mathis Logemann
ee90425de1
fixes proj_transform_cache incomplete type for gcc
2021-04-01 17:57:20 +02:00
Mathis Logemann
b1e1ea66f5
try fix linux take II
2021-04-01 16:03:58 +02:00
Mathis Logemann
8cd78b6945
Merge branch 'master' of https://github.com/mapnik/mapnik into cmake-support
2021-03-26 20:04:30 +01:00
Artem Pavlenko
3489bdbe36
rename PROJ_VERSION to MAPNIK_PROJ_VERSION to avoid clashes with libproj
2021-03-25 16:38:21 +00:00
Mathis Logemann
f8b159f8ff
Merge branch 'proj6' of https://github.com/mapnik/mapnik into cmake-support
2021-03-25 13:26:30 +01:00
Artem Pavlenko
503b9c5bbf
Move proj_transform_cache declarations and implementaion into separate translation unit (ref VC++ C2492)
2021-03-25 12:16:15 +00:00
Mathis Logemann
4eed15f87a
Merge branch 'proj6' of https://github.com/mapnik/mapnik into cmake-support
2021-03-24 23:30:50 +01:00
Artem Pavlenko
6af16764aa
proj - add version check based on major*10000+minor*100+patch format
2021-03-19 13:22:16 +00:00
Artem Pavlenko
6b9b42f314
Declare proj_cache_
thread_local static
to allow mapnik::Map to be thread-safe under certain conditions + refactor
...
(benchmark/src/test_rendering_shared_map.cpp)
2021-03-18 16:05:58 +00:00
Artem Pavlenko
6099804559
Use POSIX definition of pi
constant (M_PI) + define tau
in terms of pi
+ better namings + remove deprecated proj4 style definitions
2021-03-15 18:06:26 +00:00
Mathis Logemann
79d369db1f
Merge branch 'master' of https://github.com/mapnik/mapnik into cmake-support
2021-03-15 08:52:15 +01:00
Artem Pavlenko
7cbbd7305b
Map::mapnik - restore non-const access to layers + create proj_transform and cache in get_proj_transform
+ declare proj_cache_
mutable
2021-03-09 10:48:32 +00:00
Artem Pavlenko
b532beccde
mapnik::Map ctor/operator= - initialise proj transforms
2021-03-04 10:19:44 +00:00
Artem Pavlenko
554556e4d5
Add support for libproj >=8
2021-03-04 10:18:42 +00:00
Artem Pavlenko
b75737fd6a
Implement proj_transform caching using boost::unordered_map which allows calling find
method with compatible key type.
...
In this case `std::pair<boost::string_view, boost::string_view>` avoiding potentially expensive temp string keys.
(TODO: In the future use c++20 `std::unordered_map::find` transparent keys facility)
2021-03-03 15:01:58 +00:00
Artem Pavlenko
11ff758c38
Add proj_transform::definition() method
2021-03-02 17:07:13 +00:00
Artem Pavlenko
a149ebed16
use std::size_t consistently (proj API)
2021-03-02 16:39:32 +00:00
Artem Pavlenko
cb75f00780
Move proj_transform initialisation to add_layer
method
2021-02-25 11:05:11 +00:00
Artem Pavlenko
e5c182591a
use unordered_map for proj_transform caching
2021-02-01 10:57:52 +00:00
Artem Pavlenko
5c086b0cd5
Add proj_transform caching to minimise expensive initialisations calls in libproj >= 6 [WIP]
2021-01-27 09:40:28 +00:00
Artem Pavlenko
db9829d702
Fix missing proj context and cleanup/simplify proj_transform
2021-01-22 15:23:11 +00:00
Artem Pavlenko
88241b32ee
Initial implementation of new proj7 APIs support
2021-01-15 15:21:09 +00:00
Artem Pavlenko
bd961c4da2
update copyright year [skip ci]
2021-01-05 14:39:07 +00:00
Mathis Logemann
8096bd869f
fix warning for unknown compiler
2020-11-25 08:47:51 +01:00
Mathis Logemann
b11ef9d44b
removed MAPNIK_DECL from feature_style_processor; conflicts with the feature_style_processor_impl.h
2020-11-21 18:18:21 +01:00
Mathis Logemann
5420ccd6af
now fix msvc compiler error. Why does msvc complain?
2020-11-20 20:16:27 +01:00
Mathis Logemann
621ab99961
Revert "fix mscv compiler errors"
...
This reverts commit fe3160ca99
.
2020-11-20 20:11:42 +01:00
Mathis Logemann
fe3160ca99
fix mscv compiler errors
2020-11-20 20:02:40 +01:00
Mathis Logemann
f6b7bc0867
add string to box2d which is required by msvc
2020-11-20 19:04:30 +01:00
Mathis Logemann
16b98fe3e7
more msvc warnings
2020-11-19 17:53:44 +01:00
Mathis Logemann
a2df8b7ad2
use absolute include
2020-11-19 17:45:40 +01:00
Mathis Logemann
64054fade4
compiler independent warning ignore
...
Signed-off-by: Mathis Logemann <mathisloge@gmail.com>
2020-11-19 17:25:10 +01:00
Artem Pavlenko
3a58dd89b5
Use mapnik::value_integer for id
type in feature generator
2020-10-19 12:09:42 +01:00
Artem Pavlenko
7d1a559ae2
GeoJSON - allow 'null' properties in Feature
objects [ #4177 ]
2020-10-08 10:53:12 +01:00
Artem Pavlenko
9cb1b7e37f
perfect forwarding in apply_visitor alias
2020-07-13 10:26:59 +01:00
Artem Pavlenko
cc78a5de78
Fix for boost < 1.70.0 (ref #4143 )
2020-05-12 12:14:18 +01:00
Artem Pavlenko
a14d27f090
Attempting to fix boost_1_65_1 compile (WIP)
2020-05-12 12:00:25 +01:00
Artem Pavlenko
8f3dded093
Re-implement feature_json_generator by adapting feature_impl into boost::fusion container and removing use semantic actions (simpler code + boost_1_73 support) (ref #4143 )
2020-05-11 22:18:55 +01:00
Artem Pavlenko
52ae365c66
fix operator== (ref #4137 )
2020-04-23 18:20:32 +01:00
Artem Pavlenko
cb638eaabf
color::swap
- add missing premultiplied_
(ref #4137 )
2020-04-23 18:20:32 +01:00
Martin Ždila
657442947b
add support for spacing-offset
2020-03-23 23:07:49 +01:00
Artem Pavlenko
8d73767949
css-parser-grammar: parse values into iterator_range via boost::spirit::x3::raw directive (no conversions) + cleanup
2020-02-06 11:23:02 +00:00
Artem Pavlenko
2ddbff46d5
add bool css_style_ member variable to control CSS style processing.
2020-02-04 17:30:58 +00:00
Artem Pavlenko
cc9e8e3db3
add missing headers
2020-02-04 15:15:32 +00:00
Artem Pavlenko
27bf941211
SVG CSS: refactor unit value symbols table into separate header + add css_data member to svg_parser
2020-02-04 15:02:41 +00:00
Artem Pavlenko
00b888c1ef
Add CSS parser grammar + move into separate include/css and src/css dirs.
2020-02-04 10:38:34 +00:00
Artem Pavlenko
0636734f8f
Revert "move sparsehash out of mapnik dir"
...
This reverts commit 720fbc74a1
.
2020-01-30 15:14:37 +00:00
Artem Pavlenko
720fbc74a1
move sparsehash out of mapnik dir
2020-01-29 14:16:47 +00:00
Artem Pavlenko
c7d29b826f
Add "darkslategray" and "rebeccapurple" named colors (ref: https://drafts.csswg.org/css-color/#typedef-color )
2020-01-24 15:26:10 +00:00
Artem Pavlenko
d87cf7db48
re-use code [skip ci]
2020-01-22 13:40:33 +00:00
Artem Pavlenko
cab05f1f2c
Only use reflection of the second control point on the previous command relative to the current point as first control point when both last and prev( NOTE: before last command in AGG logic!) are curve commands. This fixes long outstanding SVG rendering bug aka Octocat
bug (ref #4115 )
2020-01-21 15:49:00 +00:00
Artem Pavlenko
c30adf39c8
format
2020-01-21 15:48:32 +00:00
Artem Pavlenko
60a33a9b8f
use numeric parser for arc flags
2020-01-16 10:38:10 +00:00
Artem Pavlenko
222835e73a
Fix SVG path grammar - parse arc and sweep flags using special single digit parser, numeric int_
parser was over greedy and didn't handle compact notation produced by svgo ( https://github.com/svg/svgo ).
2020-01-14 14:38:10 +00:00
Artem Pavlenko
59e5f50e26
Use boost::spirit::x3::standard::char_ parser
2019-12-13 17:04:54 +00:00