Adeel Ahmad
9699b49098
[util][formulas] Rename normalize_angle function to normalize_azimuth
...
For normalizing longitudes, the normalize_longitude function is
used instead.
2018-06-27 10:34:18 +05:00
Adeel Ahmad
c26483b9fc
[util] Change static inline to inline in series_expansion.hpp file
2018-06-26 17:11:35 +05:00
Adeel Ahmad
4d39eae2b6
[util] Add BOOST_GEOMETRY_ASSERT in series expansion and normalization function
...
Modified functions are:
- evaluate_coeffs_C3x
- normalize_values
2018-06-26 17:07:59 +05:00
Adeel Ahmad
9c96bec2bf
[util] Avoid passing array size using std::vector
...
Previously, the array size was passed in as a
separate parameter.
2018-06-26 13:20:12 +05:00
Adeel Ahmad
06eb057fa9
[formulas] Use assignment operator on the same line for consistency
...
Other changes include the update of series expansion function
calls, as the template arguments are reversed.
2018-06-25 18:44:37 +05:00
Adeel Ahmad
19f06fa04e
[util] Reverse template argument order for series expansion functions
...
In some cases, this allows the caller to ignore the CT template
argument, as it is deduced from the argument list.
2018-06-25 18:39:43 +05:00
Adeel Ahmad
cc7e9e05c1
[formulas] Use namespace alias se for series_expansion
2018-06-25 17:59:32 +05:00
Adeel Ahmad
dedccdbdae
[formaulas][util] Define coefficient containers for computing series expansions
...
The coefficient containers are defined as structs in
series_expansion.hpp file. They allow the caller to
compute expansions without specifying the size
for the output array.
2018-06-25 17:19:44 +05:00
Adeel Ahmad
1972bcda3e
[formula][util] Pass boost::array to series expansion functions
...
Using boost::array we don't have to explicitly provide
the template parameters.
2018-06-22 19:26:27 +05:00
Adeel Ahmad
78411f63c8
[doc][util][formulas][test] Add copyright information in updated files
2018-06-18 18:05:11 +05:00
Adeel Ahmad
2c7a29e7dc
[formulas][util] Improve code formatting to conform with guidelines
2018-06-15 18:52:30 +05:00
Adeel Ahmad
318a61dce0
[formulas] Use updated functions for normalization
2018-06-15 18:20:01 +05:00
Adeel Ahmad
d591d7a7bb
[util] Use existing normalize_spheroidal_coordinates class for normalizing an angle
...
- This should normalize the given angle in range (-180, 180].
- The function normalize is also moved from math.hpp to
normalize_spheroidal_coordinates.hpp where it is renamed
to normalize_values
2018-06-15 18:14:17 +05:00
Adeel Ahmad
943672bd3a
[formulas] Use template argument CT instead of double
...
This change is made in Karney's direct method.
2018-06-14 13:27:33 +05:00
Adeel Ahmad
d11b7160b2
[formulas] Fix calculation of t for finding the geodesic scale (M12)
2018-06-13 12:26:56 +05:00
Adeel Ahmad
043f401fbe
[util] Use Maxima generated function for computing C3x coefficients
...
The script used is geod.mac:
https://sourceforge.net/p/geographiclib/code/ci/release/tree/maxima/geod.mac
2018-06-09 16:11:46 +05:00
Adeel Ahmad
8a2dd63ccf
[util] Move sin_cos_series function to series_expansion.hpp
...
This function is extensively used for the direct and
inverse geodesic problem, therefore, it is moved
to a more accessible location.
2018-06-07 10:58:13 +05:00
Adeel Ahmad
df0cafdd19
[doc] Move Maxima scripts for geodesics to doc/other/maxima/geod.mac
2018-06-05 17:26:30 +05:00
Adeel Ahmad
cc19342b4e
[util] Remove duplicated Maxima code from series_expansion.hpp
2018-06-05 09:28:37 +05:00
Adeel Ahmad
831873752d
[formulas] Use constant type variables for comparison
2018-06-04 19:12:50 +05:00
Adeel Ahmad
1ed5f103f4
[formulas] Move SeriesOrder to the end of template parameter list
2018-06-04 19:09:07 +05:00
Adeel Ahmad
4fa4a8206a
[util] Update series expansion for C3x
2018-05-31 17:40:53 +05:00
Adeel Ahmad
b8a225e1cf
[formulas] Fix direct geodesic method by performing normalization
...
- Add minus sign for B12 evaluation
2018-05-29 21:11:53 +05:00
Adeel Ahmad
3dd6bce720
[util] Add functions for normalizing and evaluating polynomial
2018-05-29 21:08:06 +05:00
Adeel Ahmad
1e31876e94
[util] Modify function for evaluting C3x coefficient
...
- Add separate function for evaluating C3 from C3x coefficient
2018-05-29 21:06:19 +05:00
Adeel Ahmad
6a2897db25
[formulas][util] Add missing import and function return type
2018-05-28 12:28:14 +05:00
Adeel Ahmad
0c2b8cdbab
[formulas] Make variable declarations constant
2018-05-24 22:09:47 +05:00
Adeel Ahmad
ac4e483c92
[formulas] Compute the reduced length and geodesic scale using Karney's direct method
2018-05-24 11:26:56 +05:00
Adeel Ahmad
a0a55f361f
[util] Evaluate series and coefficients for A2 and C2 using series expansion
2018-05-24 11:18:26 +05:00
Adeel Ahmad
9e2c74afc8
[formulas] Compute the longitude for second point using the longitudinal difference
2018-05-23 14:22:40 +05:00
Adeel Ahmad
9152191986
[util] Add functions to evaluate coefficients for A3 and C3 using series expansion
2018-05-23 12:32:21 +05:00
Adeel Ahmad
881c73c90b
[formulas] Compute the latitude for second point following Karney's method
...
- Link to paper: https://arxiv.org/pdf/1109.4448.pdf
2018-05-22 17:18:37 +05:00
Adeel Ahmad
6ce1b099cb
[util] Evaluate coefficients for C1p using series expansion
...
- Fix conversion from degree to radian in sin_cos_degrees function
2018-05-21 16:32:28 +05:00
Adeel Ahmad
3700b4fafa
[util] Move series expansion functions to util/series_expansion.hpp
2018-05-19 21:49:24 +05:00
Adeel Ahmad
b6fcee8f30
[formulas] Compute sin cos series using Clenshaw summation
...
- Update function headers
2018-05-19 21:33:01 +05:00
Adeel Ahmad
320891caef
[utils] Add function for normalizing and rounding off an angle
2018-05-19 21:32:09 +05:00
Adeel Ahmad
c73ea927c4
[formulas] Add function for evaluating coefficients for C1
...
- Add SED script for converting x to CT(x)
- Improve code documentation
2018-05-15 23:43:52 +05:00
Adeel Ahmad
8d5d3bc8a9
[formulas] Add draft of direct geodesic problem from Karney (2011)
...
The paper can be found at: https://arxiv.org/pdf/1109.4448.pdf
This commit also introduces the evaluate_series_A1 function
for evaluating the series expantion, which was generated
using Maxima: http://maxima.sourceforge.net
2018-05-12 22:09:26 +05:00
Adeel Ahmad
302e240667
[utils] Add function sin_cos_degrees for evaluating sine and cosine function
2018-05-12 22:08:25 +05:00
Adam Wulkiewicz
d5fe19ce06
Merge branch 'feature/projections_optimization' into develop
2018-05-10 18:08:31 +02:00
Adam Wulkiewicz
7622c517d6
Merge branch 'fix/projections_names' into develop
2018-05-10 18:05:55 +02:00
Adam Wulkiewicz
ca62c0e4e0
Merge pull request #469 from awulkiew/feature/projections_grids
...
Add support for horizontal grid shift (nadgrids) in transformation.
2018-05-10 18:02:40 +02:00
Adam Wulkiewicz
002f1e06d9
Merge pull request #468 from awulkiew/feature/projections_params
...
Improve projections' parameters handling.
2018-05-10 18:01:50 +02:00
Adam Wulkiewicz
9b8d0a3b4c
[sectionalize] Avoid integer underflow/underflow in segment's direction calculation.
2018-04-19 23:34:24 +02:00
Adam Wulkiewicz
118b82937d
[srs] Separate param names and values in datums definitions to avoid parsing of string while adding parameter.
2018-04-18 01:37:44 +02:00
Adam Wulkiewicz
548d64d97a
[srs] In pj_ellps table hold elliptical parameter name and value separately to avoid parsing of string when adding a and b/rf parameters to parameters list.
2018-04-18 00:50:44 +02:00
Adam Wulkiewicz
ae75d05c2c
[srs] Implement str_cast and use it instead of lexical_cast.
2018-04-18 00:33:47 +02:00
Adam Wulkiewicz
8feb7ca7ba
[srs] Rename types, variables, enums to lowercase.
2018-04-13 22:30:51 +02:00
Adam Wulkiewicz
885319f2da
[srs] Rename CalculationType to T to increase readability.
...
Furthermore:
- rename geographic_type and cartesian_type to T
- reformat base classes and ctor init lists
- rename variable named T
2018-04-13 22:01:45 +02:00
Adam Wulkiewicz
de14869fbc
[srs] Rename upper-case global types and move them if possible.
...
- Types defined in projects.h: COMPLEX, PJ_ELLPS, PJ_DATUM, PJ_UNITS,
PJ_PRIME_MERIDIANS.
- Move types used for global data, tables defining ellipsoids, datums,
units and meridians to files defining the tables.
- Remove types that are not used in Boost.Geometry: DERIVS and FACTORS.
2018-04-13 19:15:34 +02:00