| Age | Commit message (Collapse) | Author |
|
If comparing a DynamicGeodeticReferenceFrame object and its export to
WKT1, which is a simple DATUM object, currently in non-strict comparison
mode, we'd consider the datum to be equivalent to the dynamic datum, but
not the reverse, which breaks the symmetric property of the
isEquivalentTo() operation. So fix this, to consider both equivalent
whatever the operand order.
(in strict mode, the objects will be considered different of course)
Spotted in the GDAL GeoTIFF CRS reader code:
https://github.com/OSGeo/gdal/blob/f9d48bdcc8c90df20e53b5af5785f1e5d78910db/frmts/gtiff/gt_wkt_srs.cpp#L832
Do same change for vertical datum vs dynamic vertical datum.
|
|
MapServer/MapServer#6478)
|
|
|
|
If window.h is included in the same compilation unit we can expect this kind of errors:
```
util.hpp:348:15: error: expected identifier before ‘,’ token
348 | STRICT,
```
|
|
|
|
- Remove the explicit PROJ_MSVC_DLL_IMPORT symbol used for importing
symbols from a MSVC .dll: by default on MSVC, we use
now __declspec(dllimport), unless PROJ_MSVC_DLL_EXPORT is defined
by PROJ at build time. This makes it easier for users: they
don't have to define anything special. This simplifies in particular
the build of our binaries
- For static builds, export -DPROJ_DLL= as public, so that users
that import PROJ through CMake mechanism don't have to do it
manually.
|
|
conversion is the first or last operation (fixes #2890)
|
|
(fixes #2886)
|
|
with IAU generic authority name
|
|
IAU_2015:xxxx transparently
|
|
and aliases (preparation for EPSG v10.035 update)
|
|
authority_citation, uri) for parity with WKT2:2019
|
|
geocentric latitude
|
|
This also fixes conversion between geocentric latlong and geodetic latlong
with cs2cs. This was dealt with in PR 1093, but in the wrong direction
(the geocentric latitude must be <= in absolute value to the geodetic one)
The issue here was linked to the semantics of the +geoc specifier, which
affects the semantics of the input coordinates in the forward direction
(+geoc means that the input coordinate is is a geocentric latitude),
which defeats the logic of doing A to B by using the inverse path of A
and the forward path of B.
|
|
planetocentric geodetic CRS
|
|
netCDF datasets using a pole rotation method
|
|
scope/area/extent/id attributes (fixes #2813)
For PROJJSON only, also accept the ``name`` attribute.
|
|
the WKT2 representation isn't lossless)
|
|
|
|
With this commit, and the 2 previous ones, given mytest.cpp
```
int main()
{
PJ* pj = proj_create(nullptr, "+proj=vgridshift +grids=us_nga_egm96_15.tif");
for( int i = 0; i < 5*1000*1000; i++)
{
PJ_COORD coord;
coord.lpz.lam = 0;
coord.lpz.phi = 0;
coord.lpz.z = 0;
proj_trans(pj, PJ_FWD, coord);
}
return 0;
}
```
we get a x2 speedup
Before:
```
$ PROJ_LIB=data:$HOME/proj/PROJ-data/us_nga LD_LIBRARY_PATH=src/.libs hyperfine --warmup 1 'taskset -c 11 ./mytest'
Benchmark #1: taskset -c 11 ./mytest
Time (mean ± σ): 1.950 s ± 0.014 s [User: 1.945 s, System: 0.005 s]
Range (min … max): 1.937 s … 1.971 s
```
After:
```
$ PROJ_LIB=data:$HOME/proj/PROJ-data/us_nga LD_LIBRARY_PATH=src/.libs hyperfine --warmup 1 'taskset -c 11 ./mytest'
Benchmark #1: taskset -c 11 ./mytest
Time (mean ± σ): 984.4 ms ± 3.1 ms [User: 977.0 ms, System: 7.2 ms]
Range (min … max): 979.3 ms … 990.5 ms
```
|
|
PJ_CONTEXT
|
|
purpose of the new database connection sharing
|
|
|
|
|
|
|
|
allowing to choose which nlohmann/json to use
Co-authored-by: Mike Taves <mwtoews@gmail.com>
|
|
|
|
to list all geoid model names that apply to a vertical CRS
|
|
Non-trivial updates:
- some vertical CRS are now encoded as DerivedVerticalCRS. e.g EPSG:8228
"NAVD88 height (ft)", with base EPSG:5703 "NAVD88 height". As we don't
have support in our PROJ db model for DerivedVerticalCRS, modify the
import script to 'resolve' the derivation up to the original datum.
- Method EPSG:1069 'Change of Vertical Unit' is no longer used. It is
replaced by a generic-purpose EPSG:1104 method that doesn't take any
conversion factor. And generic conversions EPSG:7812 and EPSG:7813 are
now used in concatenated operations, which require code changes as
well.
|
|
Closes #2667
|
|
proj_get_crs_info_list_from_database() filter on and return celestial body name
|
|
|
|
|
|
for intermediate objects
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
The big size of coordinateoperation.cpp could require significant amount
of RAM to build it with -O2 level, and cause compiler crashes in some
environments.
|
|
Add +proj=topocentric geocentric->topocentric conversion (fixes #500)
|
|
Add option to allow export of Geographic/Projected 3D CRS in WKT1_GDAL
|
|
|
|
as CompoundCRS with a VerticalCRS being an ellipsoidal height, which is
not conformant. But needed for LAS 1.4 that only supports WKT1
|
|
|
|
comparing to a DerivedGeographicCRS/DerivedGeodeticCRS
|
|
built from EPSG code or WKT1
Related to https://github.com/OSGeo/gdal/issues/3144
|
|
|