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
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
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
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
cb75f00780
Move proj_transform initialisation to add_layer
method
2021-02-25 11:05:11 +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
bd961c4da2
update copyright year [skip ci]
2021-01-05 14:39:07 +00:00
artemp
dfa8f100b2
freetype_engine - port singleton
changes from v3.0.x
2017-06-01 12:47:18 +02:00
artemp
333ef9fde1
update copyright year
2017-05-05 13:02:01 +02:00
artemp
5745bedbd9
update copyright year to 2016
2016-12-20 17:57:22 +01:00
artemp
ce0f87fb71
merge spirit-x3
2016-10-13 17:00:11 +02:00
artemp
31814b32d0
rename empty_featureset
=> invalid_featureset
to avoid ambiguity + add helper is_valid
method
2016-08-15 10:41:30 +01:00
Bas Couwenberg
388a8a7c4d
Fix 'intialize' typo, replace with 'initialize'.
2016-08-05 14:49:45 +02:00
artemp
bab985dd04
always return am empty featureset instead of featureset_ptr()
2016-07-13 15:17:51 +01:00
artemp
8f9134c72d
file_io - rename open
to is_open
to be consistent with STL i/o via @lightmare ( 0d032c2618 (commitcomment-16753722)
)
2016-03-18 10:02:19 +01:00
artemp
da617f92eb
add scale_image_agg' and
reproject_and_scale_raster` overloads for backward caps
2015-11-19 12:26:16 +00:00
Dane Springmeyer
7fa1e58ab7
better c++11 usage
2015-10-12 10:10:12 -07:00
artemp
8c6bf0eef6
update copyright notice
2015-06-16 12:49:16 +02: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
333965b588
update copyright year
2014-11-20 15:25:50 +01:00
Dane Springmeyer
3cbde2dc54
map.remove_all should clear other containers
2014-11-07 19:50:18 -05:00
Dane Springmeyer
41009bfeb3
fix font caching logic
2014-10-07 00:21:52 -07:00
Dane Springmeyer
f733c7f2ac
comment debug code
2014-10-06 14:31:11 -07:00
Dane Springmeyer
737c299341
fix back compat for text-placement-type:dummy - closes #2502
2014-10-06 11:37:39 -07:00
Dane Springmeyer
66889d32f9
only memcache local fonts if not already globally known and not already cached (avoid extra io for ttc)
2014-10-02 00:47:32 -07:00
Dane Springmeyer
d96093d3aa
rebase with master
2014-10-01 18:45:28 -07:00
Dane Springmeyer
83533c16c6
fix add_layer move signature - refs #2453
2014-10-01 14:20:58 -07:00
Dane Springmeyer
aae56fa387
avoid style, layer, and fontset copies in load_map - refs #2453
2014-10-01 14:09:09 -07:00
Dane Springmeyer
5f0b5ddafd
ignore font cache in map assignment and comparison
2014-09-28 23:31:48 -07:00
Dane Springmeyer
d1adabf7d5
3.x port of localized font caching and then some
2014-09-26 19:54:07 -07:00
artemp
ecfaec1027
rename ctrans.hpp to view_transform.hpp
2014-08-28 10:29:04 +01:00
artemp
de22d5900c
rename CoordTransform to view_transform to better reflect its purpose and be consistent
2014-08-28 10:17:15 +01:00
Dane Springmeyer
751e039347
add RESPECT mode to make 'fixing' of bbox aspect a no-op on map
2014-08-14 20:27:27 -07:00
Dane Springmeyer
d27b45553a
use emplace/emplace_back over insert/push_back - refs #2336
2014-08-05 15:19:37 -07:00
artemp
a010195b36
modify add_layer to work with both move and copy semantics
2014-05-28 09:54:56 +01:00
artemp
fcfbc70abf
+ explicit move ctor's for mapnik::Map and mapnik::font_set
...
+ fix methods sig's
2014-05-27 15:35:37 +01:00
artemp
9791766e32
fix typo
2014-05-27 12:36:05 +01:00
artemp
9972680020
Map : add member-by-member comparison op
2014-05-27 11:34:39 +01:00
artemp
4f6b00b589
use custom swap() and avoid std::swap calling move ctor (recursion)
2014-05-27 10:36:42 +01:00
Dane Springmeyer
74c7e67d60
Various c++11 improvements
...
- std::make_unique
- avoiding uneccessary std::move calls which make actually prevent rvo (http://stackoverflow.com/questions/4986673/c11-rvalues-and-move-semantics-confusion )
- more c++11 for loops
2014-05-05 16:02:42 -07:00
Dane Springmeyer
ef837eb92f
c++11 optimizations for faster map loading
2014-04-28 17:10:00 -07:00
artemp
6f81c88f9a
mapnik::Map - implement assignment-op in terms of swap
2014-01-28 09:58:47 +00:00
Dane Springmeyer
e9ca9c8790
symbolizer-expressions replayed against latest master
2013-11-27 22:50:15 -08:00
Dane Springmeyer
f998b2bda6
Merge branch '2.3.x' of github.com:mapnik/mapnik
...
Conflicts:
deps/agg/build.py
deps/clipper/build.py
include/mapnik/feature_style_processor_impl.hpp
plugins/input/csv/csv_datasource.cpp
2013-11-03 23:10:21 -08:00
Dane Springmeyer
6ffd0e9bc2
map size calculations: be explicit about types
2013-11-03 23:07:02 -08:00