aboutsummaryrefslogtreecommitdiff
path: root/src/projects.h
AgeCommit message (Collapse)Author
2017-02-27Merge pull request #487 from PositiveArrow/c11_compilationEven Rouault
C11 compilation
2017-02-26Fix warnings related to -Wshadow -Wnull-dereference -Wfloat-conversionr ↵Even Rouault
-Wmissing-prototypes -Wmissing-declarations
2017-02-10Consistent precision for mathematical macrosEtienne Jacques
2017-02-10Fix compilation with gcc with -std=c11 option.Etienne Jacques
2016-12-12Add a scripts/fix_typos.sh script and correct reported errorsEven Rouault
2016-11-20Plumbing for pipelines (#453)Thomas Knudsen
* re-enter pipeline The pipeline interface is now internally based on the pj_obs_api, which simplifies the implementation significantly. This is the first mock up - it compiles fine, but is currently untested * pipeline code cleaned up The pipeline code is now based on the PJ_OBS api (although you can still invoke a pipeline through pj_fwd/pj_inv and their 3D brethren). This has made it possible to eliminate scores of funky casts and convoluted workarounds. The code is now way more straightforward and mostly conforming with common C idioms.. Also, the proj.h / obs_api interface to the logging system has been streamlined through the introduction of the pj_log_error, pj_log_debug, and pj_log_trace functions. * Geodesics + minor changes First proj.h style interface to Charles Karney's geodesics code: pj_lp_dist. Also, renamed pj_apply -> pj_trans * Extended Ellipsoidal Parameters Second eccentricity, second and third flattening etc. * Rename pj_debug_set -> pj_log_level ... and add self test code for PJ_pipeline * Clean up missing pj_apply->pj_trans * Clean up missing pj_obs_dist_2d rename * pj_strerrno bug fixed. Some doc/comments added (In response to a review by @kbevers)
2016-11-12Pipeline plus api - in continuation of the Genereic Coordinates pull request ↵Thomas Knudsen
(#445) This commit reflects continued work on the new rationalized API with geodetic extensions (see rationale in proj.h). It also reflects the parallel work on the transformation pipeline reimplementation, by introducing the PJ_cart cartesian/ellipsoidal converter. See example/pj_obs_api_test.c for demo example code
2016-10-24Generic coordinates (#431)Thomas Knudsen
* Pipeline preliminaries Introducing the PJ_OBSERVATION data type as the basis for generic geodetic transformations. Also introducing the elements of a new minimalistic API focused on generic geodetic transformations. This API is documented in the new proj.h header, and is orthogonal (non-intrusive) wrt. the existing API from proj_api.h Finally added a large amount of comments to the somewhat intractable projects.h, and extended the PJ object with a number of additional ellipsoidal parameters of general geodetic usefulness. The PJ elements fwdobs and invobs extend fwd3d and inv3d in a homologous way to how fwd3d and inv3d extend fwd and inv.
2016-08-22Changed self-test build behaviour from opt-out to opt-inKristian Evers
2016-07-13Eliminated load time non-computable initializers in healpixKristian Evers
2016-05-31correct M_PI_HALFPI valueMicah Cochran
last digit changed to 9
2016-05-28Change math constants, similar to PR #372. Use M_ namespace with the de ↵Micah Cochran
facto standard M_PI and its ilk. Change names that are widely used in the project to be in the M_ namespace, so HALFPI becomes M_HALFPI. HALFPI is #defined as M_PI_2 (the defacto standard name). #defines _USE_MATH_DEFINES for MS Visual Studio (I didn't personally test this part, but Appveyor will not build otherwise).
2016-04-12refactoring + added selftest for 8 more projectionsThomas Knudsen
calcofi, cass,cc,wag2, wag3, wag7, wink1, wink2
2016-04-07pj_list cleanup + added selftest stubs for all projectionsThomas Knudsen
The projection list maintained by code in pj_list.c depended on stuff in projects.h. This stuff is non-obvious and since it is only used in pj_list.c, it has been moved from projects.h to pj_list.c (The material moved is based on some really clever X-macro techniques implemented by numerous redefinitions of the PROJ_HEAD macro, followed by immediate re-inclusion of te pj_list.h file). Also, the self test runner pj_run_selftests has been remodelled, now depending on a list of self test functions, generated in a similar way to the projection list, and like the projection list generated by X-macro techniques in pj_list.c. For this to work, self test functions need to be available for all projections. To fulfill this, stubs for all projections not having self tests already, have been added to PJ_aea.c Along with the recent build system patches by @kbevers, this first part of the macro-refactoring project is considered close to finished.
2016-04-05Some initial work on internal regression testsThomas Knudsen
Need these to reduce the chance I'm screwing up something during this rather intrusive code surgery
2016-04-01First steps toward simplified macros/internalsThomas Knudsen
The brief version:: In an attempt to make proj.4 code slightly more secure and much easier to read and maintain, I'm trying to eliminate a few unfortunate design decisions from the early days of proj.4 The work will be *very* intrusive, especially in the PJ_xxx segment of the code tree, but great care has been taken to design a process that can be implemented stepwise and localized, one projection at a time, then finalized with a relatively small and concentrated work package. The (very) long version: See the comments in PJ_minimal.c
2016-01-24Add support for big-endian NTv2 grids (#345)Even Rouault
2015-10-27Merge branch 'master' of https://github.com/piyushrpt/proj.4Even Rouault
Conflicts: nad/tv_out.dist
2015-10-24Switch utm to use etmerc to address issue #316.Charles Karney
Add a test to check this. Output of an existing test changed in 7th decimal place.
2015-10-23- API Extension to include fwd3d / inv3dPiyush Agram
- New SCH coordinate system for radar imaging systems
2015-09-11win32 PVALUE issuesisyphus
2015-07-07Make pj_init() locale safe and no longer modify locale (#226)Even Rouault
Remove setlocale() use in pj_init_ctx(), and replace uses of atof() & strtod() by their locale safe variants pj_atof() and pj_strtod(). Proj versions from now advertize #define PJ_LOCALE_SAFE 1 in proj_api.h and export pj_atof() & pj_strtod()
2015-05-31Remove unused $Id$ keywords.Elliott Sales de Andrade
2013-06-25move pj_open_lib() to public include fileFrank Warmerdam
git-svn-id: http://svn.osgeo.org/metacrs/proj/trunk@2356 4e78687f-474d-0410-85f9-8d5e500ac6b2
2013-06-25Remove internal declaration of PROJ_LIB - makes it hard to not have a valueFrank Warmerdam
git-svn-id: http://svn.osgeo.org/metacrs/proj/trunk@2355 4e78687f-474d-0410-85f9-8d5e500ac6b2
2013-06-22add pj_ctx_fgets() implementation (untested)Frank Warmerdam
git-svn-id: http://svn.osgeo.org/metacrs/proj/trunk@2347 4e78687f-474d-0410-85f9-8d5e500ac6b2
2013-06-22bulk of file api implementation complete and workingFrank Warmerdam
git-svn-id: http://svn.osgeo.org/metacrs/proj/trunk@2345 4e78687f-474d-0410-85f9-8d5e500ac6b2
2013-06-22preliminary step implementing virtual fileioFrank Warmerdam
git-svn-id: http://svn.osgeo.org/metacrs/proj/trunk@2344 4e78687f-474d-0410-85f9-8d5e500ac6b2
2012-06-19first nearly working grid catalog implementationFrank Warmerdam
git-svn-id: http://svn.osgeo.org/metacrs/proj/trunk@2219 4e78687f-474d-0410-85f9-8d5e500ac6b2
2012-06-18preliminary work on grid catalogsFrank Warmerdam
git-svn-id: http://svn.osgeo.org/metacrs/proj/trunk@2218 4e78687f-474d-0410-85f9-8d5e500ac6b2
2012-03-14avoid using macro expansion directly in #include to simplify codeFrank Warmerdam
git-svn-id: http://svn.osgeo.org/metacrs/proj/trunk@2196 4e78687f-474d-0410-85f9-8d5e500ac6b2
2011-11-22implement support for ctable2 format (read/write)Frank Warmerdam
git-svn-id: http://svn.osgeo.org/metacrs/proj/trunk@2121 4e78687f-474d-0410-85f9-8d5e500ac6b2
2011-05-31include string.h as memset is widely used nowFrank Warmerdam
git-svn-id: http://svn.osgeo.org/metacrs/proj/trunk@2048 4e78687f-474d-0410-85f9-8d5e500ac6b2
2011-05-31ensure PJ structure always initialized to zero after malloc (#112)Frank Warmerdam
git-svn-id: http://svn.osgeo.org/metacrs/proj/trunk@2045 4e78687f-474d-0410-85f9-8d5e500ac6b2
2011-05-10add support for vunits/vto_meter parameters to specify vertical unitsFrank Warmerdam
git-svn-id: http://svn.osgeo.org/metacrs/proj/trunk@2000 4e78687f-474d-0410-85f9-8d5e500ac6b2
2011-05-10fix up builds on windowsFrank Warmerdam
git-svn-id: http://svn.osgeo.org/metacrs/proj/trunk@1999 4e78687f-474d-0410-85f9-8d5e500ac6b2
2011-05-04added goodes interrupted homolosine (#106)Frank Warmerdam
git-svn-id: http://svn.osgeo.org/metacrs/proj/trunk@1997 4e78687f-474d-0410-85f9-8d5e500ac6b2
2010-10-19migrate pj_clear_initcache() to public api, and set pj_version to 4.8.0Frank Warmerdam
git-svn-id: http://svn.osgeo.org/metacrs/proj/trunk@1925 4e78687f-474d-0410-85f9-8d5e500ac6b2
2010-09-20use pj_log, fix bug with apply_vgridshiftFrank Warmerdam
git-svn-id: http://svn.osgeo.org/metacrs/proj/trunk@1903 4e78687f-474d-0410-85f9-8d5e500ac6b2
2010-07-06fix F_ERROR and E_ERROR macros to use ctx errno functionFrank Warmerdam
git-svn-id: http://svn.osgeo.org/metacrs/proj/trunk@1865 4e78687f-474d-0410-85f9-8d5e500ac6b2
2010-07-06I_ERROR must set context errnoFrank Warmerdam
git-svn-id: http://svn.osgeo.org/metacrs/proj/trunk@1864 4e78687f-474d-0410-85f9-8d5e500ac6b2
2010-06-11roll projCtx through various other low level functionsFrank Warmerdam
git-svn-id: http://svn.osgeo.org/metacrs/proj/trunk@1856 4e78687f-474d-0410-85f9-8d5e500ac6b2
2010-06-11preliminary implementation of projCtx APIFrank Warmerdam
git-svn-id: http://svn.osgeo.org/metacrs/proj/trunk@1854 4e78687f-474d-0410-85f9-8d5e500ac6b2
2010-05-11preliminary addition of vertical datum shifting capabilityFrank Warmerdam
git-svn-id: http://svn.osgeo.org/metacrs/proj/trunk@1839 4e78687f-474d-0410-85f9-8d5e500ac6b2
2010-03-16Rework the translation of nadgrids parameters into a list of gridshift files Frank Warmerdam
to avoid use of static "lastnadgrids" information which screws up multithreading. Changes the PJ structure. git-svn-id: http://svn.osgeo.org/metacrs/proj/trunk@1831 4e78687f-474d-0410-85f9-8d5e500ac6b2
2010-03-03various improvements to error handling so corrupt grids are reported (#66)Frank Warmerdam
git-svn-id: http://svn.osgeo.org/metacrs/proj/trunk@1828 4e78687f-474d-0410-85f9-8d5e500ac6b2
2010-03-01added preliminary support for +axis (#18)Frank Warmerdam
git-svn-id: http://svn.osgeo.org/metacrs/proj/trunk@1825 4e78687f-474d-0410-85f9-8d5e500ac6b2
2010-01-24fix seriously broken lon_wrap support (#62)Frank Warmerdam
git-svn-id: http://svn.osgeo.org/metacrs/proj/trunk@1789 4e78687f-474d-0410-85f9-8d5e500ac6b2
2009-09-23fix up lock support on windows, enable by default, make public apiFrank Warmerdam
git-svn-id: http://svn.osgeo.org/metacrs/proj/trunk@1625 4e78687f-474d-0410-85f9-8d5e500ac6b2
2009-03-09added initial init file cachingFrank Warmerdam
git-svn-id: http://svn.osgeo.org/metacrs/proj/trunk@1542 4e78687f-474d-0410-85f9-8d5e500ac6b2