Mathis Logemann
7ef431ece2
use std::optional instead of boost::optional
2024-05-18 10:22:29 +02:00
Artem Pavlenko
8839f5774a
pre-commit run --all-files
2023-02-24 18:07:09 +00:00
Artem Pavlenko
a499989b1d
add missing header
2023-02-24 18:05:01 +00:00
Artem Pavlenko
8efaa959f0
projection - rename 'expanded' to 'definition' (PJ_PROJ_INFO) + add 'description' method
2023-02-24 09:23:52 +00: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
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
5c086b0cd5
Add proj_transform caching to minimise expensive initialisations calls in libproj >= 6 [WIP]
2021-01-27 09:40:28 +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
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
8c6bf0eef6
update copyright notice
2015-06-16 12:49:16 +02:00
artemp
0a24e8cfca
remove unused #include's
2015-06-16 10:04:50 +02:00
artemp
2eaa90033a
move singleton to util/singleton.hpp
...
move windows UTF conversion routines to util/utf_conv_win.hpp
2015-06-02 11:10:41 +01:00
artemp
a8a90b7656
use std::lock_guard instead of unique_lock (better fit for the job)
2015-05-20 16:12:22 +01:00
Dane Springmeyer
930eb184d8
pedantic proj api usage
2015-04-26 23:24:19 +02:00
artemp
333965b588
update copyright year
2014-11-20 15:25:50 +01:00
Dane Springmeyer
471eaed9df
initialize is_geographic
2014-08-08 12:00:20 -07:00
Dane Springmeyer
28a05c96ef
iwyu + faster compile
2014-07-22 19:36:39 -07:00
Oliver Tonnhofer
2c38670443
prevent double-free in mapnik::projection
...
A double-free can happen when init_proj4 is called outside of the
constructor (for projections with defer_proj_init=true) and when that
call fails. In this case proj_ctx_ is not set to NULL and then freed
again in the destructor. Set to null to avoid second pj_ctx_free call.
See #2170
2014-03-08 19:51:42 -08:00
artemp
eb3da7d32d
c++11 : use nullptr instead of NULL
2013-11-27 15:54:16 +00:00
artemp
582ca02f44
remove unused boost.thread includes
2013-10-11 13:39:39 +01:00
artemp
0e40b3c87d
== c++11
...
use std::thread (removes boost.thread dependency)
2013-10-11 13:20:46 +01:00
Dane Springmeyer
3b2bdba7b0
iwyu
2013-06-02 20:19:33 -07:00
Dane Springmeyer
7302b3b654
fix #1865
2013-05-24 16:45:02 -07:00
artemp
9b138728d0
+ fix assignment operator #1776
2013-03-27 10:39:02 +00:00
Dane Springmeyer
cf11a27a22
remove hardcoded define to enable proj4
2013-01-29 02:03:04 -05:00
Dane Springmeyer
3969ac246d
make proj4 able to be fully disabled at compile time - refs #1703
2013-01-28 13:45:41 -05:00
Dane Springmeyer
f8b1520d1a
refactor projection interface: 1. cleanup custom lonlat<->merc code. 2. centralize proj4 strings into constants, 3. tweak projection benchmarking to allocate objects in loop so we can test that specifically - refs #1703
2013-01-28 01:47:32 -05:00
Dane Springmeyer
7c58bf9fcb
replace boost::trim with faster custom trim - closes #1633
2012-12-07 14:06:13 -08:00
Dane Springmeyer
1941a700a4
add compile time warning if building against proj < 4.8
2012-04-11 08:23:41 -07:00
Dane Springmeyer
7cca1489b7
fix memory leak of pj_ctx if a projection cannot be initialized
2012-04-11 08:06:29 -07:00
kunitoki
af201551b8
got rid of old CVS $Id comments kludge in files
2012-04-08 02:45:01 +02:00
Dane Springmeyer
98e470903c
less lexical cast - refs #1055
2012-04-06 13:39:13 -07:00
Dane Springmeyer
7c529600eb
Revert "avoid mutex locks on pj_transform for proj 4.7 and above - closes #1072 "
...
This reverts commit 0748d2beea
.
2012-03-24 08:03:15 -07:00
Dane Springmeyer
0748d2beea
avoid mutex locks on pj_transform for proj 4.7 and above - closes #1072
2012-02-09 17:28:31 -08:00
Dane Springmeyer
17d13cff67
whitespace fixes - closes #911
2012-02-01 17:53:35 -08:00
kunitoki
f1fb0c1939
- fix copyright to 2011 (script to do this will follow)
2011-10-23 15:04:25 +02:00
Dane Springmeyer
ba15947a4f
add Projection.expanded() function to ask proj4 what its internal, normalized definition looks like (useful only for debugging)
2011-05-17 19:05:15 +00:00
Tom Hughes
05ab656b57
The upcoming 4.8.0 release of PROJ.4 is supposed to be threadsafe, so
...
lets believe them and not use any locks if we are building against
version 4.8.0 or later.
Instead we use the new proj_ctx_alloc routine to create a context and
pass that when initialising the projection structure.
2010-09-24 15:26:50 +00:00
Dane Springmeyer
df42fcde56
locking is required around pj_init_plus (partial revert of 2063) as it appears pj_init_plus will fail under high concurrent load even with proj 4.7.0 (only seen when reprojecting data) and will likely require use of a context (available in next release) if we wish to remove locks
2010-08-27 22:05:15 +00:00
Artem Pavlenko
f9b9c14500
pass parameters by const ref
2010-08-05 11:56:11 +00:00
Dane Springmeyer
f802d21865
speed optimizations by more careful use (or avoidance) of locking around projection code
2010-07-21 23:05:22 +00:00
Artem Pavlenko
246731874b
+ apply 'mapnik-format' to *.cpp *.hpp
2010-06-02 11:03:30 +00:00
Artem Pavlenko
97a40d7e7e
+ fix msvc-9.0 compiler warnings
2009-02-17 23:19:28 +00:00
Artem Pavlenko
6062f42bbe
+ applied patch avoid_extent from rcoup
2008-11-19 21:50:12 +00:00
Artem Pavlenko
f3a3ce04db
convert to degrees if projection is geographic
2008-02-20 12:44:34 +00:00
Artem Pavlenko
b44762e592
allow multi/single threaded variants
2008-02-04 16:12:13 +00:00
Artem Pavlenko
f4949ffca5
patch from TomH adds a global mutex to protect all access to the
...
proj4 library and ensure that only one thread can be inside a call to
the library at a time.
2008-02-04 11:54:07 +00:00