Artem Pavlenko
5347a1d939
format identation
2022-11-21 19:08:05 +00:00
Artem Pavlenko
d4ae5ac653
SVG group renderer implementation (WIP) [skip ci]
2022-11-18 15:17:58 +00:00
Artem Pavlenko
a65d65a5ab
Update .clang-format to BraceWrapping: BeforeCatch : true
...
run `pre-commit`
2022-11-10 15:57:38 +00:00
Artem Pavlenko
bd018ef5ab
git-clang-format
2022-11-03 11:29:50 +00:00
Artem Pavlenko
fa9ee1fc61
Issue warning not an error when font face not found (ref #4354 )
2022-10-18 13:56:05 +01:00
Mathis Logemann
e6553ef652
simplify cmake
2022-08-18 20:38:21 +02:00
Mathis Logemann
eb3823aa4a
precommit
2022-08-17 17:35:25 +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
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
c85f8462fd
[CMake] fixes for windows (WIP)
2022-04-22 15:10:49 +02:00
Mathis Logemann
503fe35817
Merge branch 'master' of https://github.com/mapnik/mapnik into feature/cmake-static
2022-04-16 11:21:05 +02:00
Johannes Schauer Marin Rodrigues
01e018eb0a
src/proj_transform.cpp: only use proj_context_errno_string for proj >= 8.0.0
2022-04-14 11:52:25 +02:00
Johannes Schauer Marin Rodrigues
4f72043bcd
src/proj_transform.cpp: improve error handling of proj_transform()
...
- set proj log level to PJ_LOG_ERROR
- let error message indicate whether proj_create_crs_to_crs or
proj_normalize_for_visualization failed
- output proj_context_errno_string when an error is thrown
2022-04-10 11:55:04 +02: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
5ee7571761
add dlerror for plugin loading
2022-03-15 21:12:43 +01:00
Mathis Logemann
4493a06878
call mapnik::setup automatically
2022-03-15 21:12:43 +01:00
Artem Pavlenko
2d03db8ef1
Fix scons build
2022-02-15 15:40:16 +00:00
Mathis Logemann
45568e8895
[datasource] call after_load for static plugins
2022-02-14 17:34:20 +01:00
Mathis Logemann
0f0e06c6b8
[datasource] add plugin_registered function
2022-02-14 10:14:59 +01:00
Mathis Logemann
6fcdccaf83
[CMake] fix rename MAPNIK_STATIC_PLUGINS => BUILD_SHARED_PLUGINS
2022-02-09 15:57:03 +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
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
9bf8fcc823
fix color.cpp formatting
2022-01-28 10:37:38 +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
Mathis Logemann
3b1d09702c
[unit-test] enable tiff test
2022-01-27 18:40:22 +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
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
a3ccf2967f
[scons] add mapped_memory_file to source list
2022-01-24 21:21:45 +01:00
Mathis Logemann
fe887a2c83
fix #4268 by adding mapped_memory_file
2022-01-24 10:45:32 +01:00
Mathis Logemann
4f95463c75
remove make_unique
2022-01-19 12:42:52 +01:00
Mathis Logemann
f0940c2075
[CMake] move all build artifacts into same dir to remove the need of copy_dlls (except for plugins)
...
[CMake] improve BUILD_TESTING and use pkgconf for cairo on linux
[CMake] add Threads dependency to -Config
2021-11-15 00:40:47 +01:00
Mathis Logemann
e626ba2688
replace _WINDOWS with _WIN32
2021-10-21 18:22:53 +02:00
Mathis Logemann
aa903c675f
[CMake] improve pkg-config export
...
add needed libs
pkg-conf: move libmapnikjson and libmapnikjson to m_requires
make pkg multi config aware
update proj min ver
correct prefix
use the correct output name
add import prefixes, just in case
2021-10-20 16:23:04 +02:00
Joshua Hintze
15798e6ebb
-Fixed issue with VS2017 compiling
2021-10-15 19:31:45 -06:00
Mathis Logemann
6dee79f442
[CMake] mapnik::mapnik restructure. should give a better overview
2021-10-11 19:08:25 +02:00
Mathis Logemann
ac95449ff5
[CMake] fix critical webp init
2021-10-09 09:40:44 +02:00
Mathis Logemann
fa2fec338b
[CMake] add import prefix for libmapnik
...
so that the resulting archive is also named libmapnik
2021-09-23 19:11:29 +02:00
Mathis Logemann
fcc7016124
add basic pkg-config exports
2021-09-23 18:46:48 +02:00
Mathis Logemann
a2d3364ec7
[CMake] add version and soversion to base libraries
2021-09-23 10:41:25 +02:00
Mathis Logemann
35ea6f2a56
[CMake] refactor mapnik_install
2021-09-22 19:52:39 +02:00
Mathis Logemann
25774ac82a
[CMake] unify and simplify install commands.; Add Components to targets
2021-09-22 14:41:50 +02:00
Mathis Logemann
8bd463d4fc
make mapnik::core a public dependency of mapnik::mapnik
2021-09-14 20:46:43 +02:00
Mathis Logemann
02180115bf
some last minor improvements
2021-08-25 16:41:57 +02:00
Mathis Logemann
b925abf403
fix library name
2021-07-22 21:35:12 +02:00
Mathis Logemann
81397f84bc
add debug postfix to wkt, json and mapnik.
...
Mapnik can be installed with multi configuration enviroment
2021-07-22 20:34:08 +02:00
Mathis Logemann
7f2511632f
add packaging
2021-07-02 22:26:36 +02:00
Mathis Logemann
d610671327
try install json and wkt again
2021-07-02 16:02:30 +02: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
88a15daf93
Fix parse_svg_value
2021-04-22 11:36:10 +01:00
Artem Pavlenko
a1cb756fa0
SVG parse_svg_value: update is_percent
only if parsing successful
2021-04-19 18:02:24 +01:00
Artem Pavlenko
3031b7cf6a
SVG parse_svg_value/parse_font_size: re-initialise default val on parser failure
2021-04-19 08:55:39 +01:00
Artem Pavlenko
7c5f4539e1
Fix error message + update SVG parser unit test
2021-04-15 16:29:05 +01:00
Artem Pavlenko
654a3c1f9f
SVG : refactor and simplify width/height+viewBox logic ( https://www.w3.org/TR/SVG11/struct.html#SVGElement ) + check font_sizes_
size before accesing last element
2021-04-15 15:38:59 +01:00
Artem Pavlenko
0feabeb7e8
SVG circle: ignore when r = 0
2021-04-13 13:48:05 +01: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
Mathis Logemann
e1fa32f21f
install dependencies. Required for windows (and ?macos?). Needs testing on linux.
2021-04-10 14:36:22 +02: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
7121bd6fbf
Revert "hopefully fix unstatisfied proj_transform_cache"
...
This reverts commit d2066da339
.
2021-04-01 15:55:57 +02:00
Mathis Logemann
d2066da339
hopefully fix unstatisfied proj_transform_cache
2021-03-31 20:25:46 +02:00
Mathis Logemann
c29c84327a
add proj_transform_cache to source list
2021-03-25 13:34:25 +01: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
3a302667a1
Fix return value (MAPNIK_WEBMERCATOR_PROJ is not geographic SRS)
2021-03-24 09:42:52 +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
Mathis Logemann
36be4fe594
renamed target mapnik::headers to mapnik::core
2021-03-18 15:35:55 +01: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
977c65e9de
Fix proj_transform order in Map::query_point
2021-03-09 11:33:21 +00: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
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
Mathis Logemann
dec9056511
remove unnecessary cmake_minimum_required from sub projects
2021-02-03 19:14:08 +01: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
Mathis Logemann
953796645f
enable position independent code for wkt and json
2021-01-24 19:35:21 +01:00
Artem Pavlenko
db9829d702
Fix missing proj context and cleanup/simplify proj_transform
2021-01-22 15:23:11 +00:00
Artem Pavlenko
6cc353f8a2
Use 'proj_backward_strategy' and avoid creating an extra proj_transform
2021-01-22 15:22:18 +00:00
Artem Pavlenko
ff14ad3425
Link to libsqlite3 when required
2021-01-21 12:47:41 +00:00
Artem Pavlenko
19511463ab
Include <cmath> for HUGE_VAL
2021-01-21 12:46:57 +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
f432018bdb
added cache variable for lib/bin/archive output
2020-11-25 12:16:06 +01:00
Mathis Logemann
45fd654898
added MAPNIK_DECL to interior and polylabel explicit template
2020-11-21 18:19:58 +01:00
Mathis Logemann
99d8c3e503
fix cmake typo
2020-11-21 18:04:24 +01:00
Mathis Logemann
695ad02cb2
fix svg renderer
2020-11-21 18:01:48 +01:00
Mathis Logemann
0eb0408cc3
add options for grid/svg renderer
2020-11-21 17:03:30 +01:00
Mathis Logemann
3eb00b9794
use feature test for <execution>
2020-11-21 15:41:03 +01:00
Mathis Logemann
096befe69e
try with c++14
2020-11-21 15:34:13 +01:00
Mathis Logemann
744aa2a76a
do not compile features....
2020-11-21 15:02:07 +01:00
Mathis Logemann
9213f76d49
do not compile features if they are not set
2020-11-21 14:54:26 +01:00