Commit Graph

3153 Commits

Author SHA1 Message Date
Menelaos Karavelas
5fa14f06bc [algorithms][normalize] add algorithm detail::normalize() :
this algorithm normalizes the spherical equatorial and geographic coordinates
of points and boxes
2015-05-20 11:23:22 +03:00
Menelaos Karavelas
465fc75ece [util][math] remove unused code 2015-05-18 15:25:22 +03:00
Menelaos Karavelas
e66f255acf Merge branch 'develop' of https://github.com/boostorg/geometry into feature/envelope_and_expand_for_spherical_cs 2015-05-14 12:23:19 +03:00
Menelaos Karavelas
5a0ef46981 [util][math] add missing inlines in r2d<>() and d2r<>() 2015-05-13 19:30:20 +03:00
Barend Gehrels
9d9ee614a1 Merge branch 'develop' into feature/buffer 2015-05-13 18:01:32 +02:00
Adam Wulkiewicz
dd2ff33b52 Merge pull request #292 from mkaravel/fix/degree_radian_converter
Fix degree_radian_converter
2015-05-13 14:12:24 +02:00
Adam Wulkiewicz
6029a4cd1b Merge pull request #271 from mkaravel/feature/disjoint_point_point_on_spheroid
New feature: disjoint(point, point) for points on a spheroid
2015-05-13 14:11:35 +02:00
Barend Gehrels
6158064410 [buffer] performance optimization: set the center point for buffers around
(multi)points, calculate min/max radius
and (when checking turn w.r.t. piece) check turn distance to center,
in most cases leave early

Including unit test. For multipoint_b_500k this increases performance with
a factor 6 (340 seconds -> 55 seconds)

Note, this is done for buffers around points but could be done for other
geometry types too (using e.g. centroid)
2015-05-13 13:08:22 +02:00
Barend Gehrels
61d3ae6b78 [buffer] performance improvement for point-pieces:
first check if it is in range

Including adaption of unit tests
Performance goes from 24 seconds (with side_of_intersection)
or 14 seconds (without) to 10 seconds (with side_of_intersection)
2015-05-13 10:58:07 +02:00
Barend Gehrels
b546a6fa21 Merge branch 'develop' into feature/buffer 2015-05-13 10:14:10 +02:00
Barend Gehrels
784a6bcb17 Merge branch 'develop' of github.com:boostorg/geometry into develop 2015-05-13 10:10:44 +02:00
Barend Gehrels
0d97706ffa [projections] fix isea (M_PI) 2015-05-13 10:10:09 +02:00
Adam Wulkiewicz
be0dde6f21 Merge pull request #293 from jeremy-murphy/develop
[projections] fix project_inverse_transformer::apply
2015-05-13 04:09:50 +02:00
Menelaos Karavelas
99788fba57 [algorithms][intersection] update copyright header 2015-05-11 13:38:09 +03:00
Menelaos Karavelas
926bbb8005 [algorithms][intersection] propagate robust policy to
detail::intersection::clip_range_with_box; this fixes Boost Trac ticket #11268;
2015-05-11 13:37:57 +03:00
Jeremy W. Murphy
ab7a00442e [projections] fix project_inverse_transformer::apply
The call to point_to_point was using the wrong namespace and function call.
2015-05-11 14:14:32 +10:00
Menelaos Karavelas
535a7049f9 [geometry] replace uses of constants math::d2r and math::r2d by corresponding free functions 2015-05-08 12:23:23 +03:00
Menelaos Karavelas
fbc568ed51 [strategies][transform] replace constants r2d and d2r by corresponding free functions;
to do so, make sure that the type passed to r2d<>() and d2r<>() is promoted to a
floating point number
2015-05-08 12:21:35 +03:00
Menelaos Karavelas
30f980519f [core][radian access] replace use of constants d2r and r2d by the corresponding free functions 2015-05-08 12:19:18 +03:00
Menelaos Karavelas
1deb1e2097 [util][math] replace constants d2r and r2d by free functions 2015-05-08 12:17:38 +03:00
Menelaos Karavelas
6661fadf7e [core][radian access] modify implementation of degree_radian_converter
to use conversion constants that are consistent with the coordinate type
of the geometry
2015-05-06 12:50:22 +03:00
Barend Gehrels
9ca4930e6c [projections] fix gn_sinu, remove ellipsoid models for all but sinu
because they are marked as invalid and indeed do not work correctly
2015-05-05 20:37:25 +02:00
Barend Gehrels
50ac56e885 [projections] stere, tmerc: ordered differently (alphabetically per derived projection) 2015-05-05 20:13:18 +02:00
Barend Gehrels
1a1304188c [projections][minor] added whiteline in generation 2015-05-05 20:12:08 +02:00
Barend Gehrels
23d6464615 [projections] aeqd (guam): change in conditions 2015-05-05 20:11:38 +02:00
Barend Gehrels
d460ae8eb8 [buffer] enable side_of_intersection approach by default 2015-05-05 16:43:59 +02:00
Barend Gehrels
c5ef4f912d [buffer][fix] fix errors in multi_point cases
by using side_of_intersection in point_piece
2015-05-05 16:01:08 +02:00
Barend Gehrels
034a5461f0 Merge branch 'develop' into feature/buffer 2015-05-05 10:08:49 +02:00
Barend Gehrels
80da683b77 [projections] (fix in generation) enable dynamic entries of stere,tmerc 2015-05-04 22:51:25 +02:00
Menelaos Karavelas
e8f82e62ea [util][spheroid] add utilities for converting points and boxes on the spheroid
from one unit type to another
2015-05-04 11:10:22 +03:00
Menelaos Karavelas
f224dcc4e6 [algorithms][envelope] add new dispatch struct for envelope algorithm 2015-05-04 11:09:22 +03:00
Menelaos Karavelas
2682c8a370 [algorithms][envelope] fix error in implementation for envelope(ring, mbr) 2015-05-04 11:08:25 +03:00
Menelaos Karavelas
11cb594c19 [algorithms][envelope] when checking intersection with antimeridian, consider
only segments with longitude range strictly less than pi
2015-05-04 10:21:15 +03:00
Menelaos Karavelas
feb780facc [algorithms][buffer] update call to detail::envelope::envelope_range<>() following
the new implementation for envelope
2015-05-04 10:19:27 +03:00
Menelaos Karavelas
f7f9265682 Merge branch 'develop' of https://github.com/boostorg/geometry into feature/envelope_and_expand_for_spherical_cs 2015-05-04 10:18:26 +03:00
Menelaos Karavelas
bb18c201c9 [algorithms][envelope] restore generic implementation for rings (until the implementation
is finished for the spherical equatorial coordinate system)
2015-05-04 10:12:16 +03:00
Menelaos Karavelas
4ce9883a25 [algorithms][expand] re-arrange implementation of the expand algorithm 2015-05-04 10:10:49 +03:00
Menelaos Karavelas
b34f620bc5 [algorithms][expand] move implementation for expand(box, box) to separate file
and add implementation for expand(box, box) in the spherical equatorial and
geographic coordinate systems
2015-05-04 10:09:05 +03:00
Menelaos Karavelas
b2ab23c8bc [algorithms][expand] move implementation for expand(box, segment) to separate
file and implement expand(box, segment) for segments in the spherical
equatorial coordinate system (by reducing to expand(box, box))
2015-05-04 10:06:46 +03:00
Menelaos Karavelas
4041f20114 [algorithms][expand] move implementation for indexed geometries to separate file 2015-05-04 10:06:20 +03:00
Menelaos Karavelas
4a66958b67 [algorithms][expand] move implementation for expand(box, point) to separate file
and add implementation for expand(box, point) for spherical equatorial and geographic
coordinate systems
2015-05-04 09:46:26 +03:00
Menelaos Karavelas
c196ef213c [algorithms][expand] re-implement dispatch struct for expand algorithm and
move it to algorithms/dispatch directory
2015-05-04 09:42:28 +03:00
Barend Gehrels
5e54fbc510 Merge branch 'develop' of github.com:boostorg/geometry into develop 2015-05-02 20:55:50 +02:00
Barend Gehrels
b126341d00 [projections] changes in generation, remove redundant empty preceding/trailing lines 2015-05-02 20:55:12 +02:00
Barend Gehrels
b7eb50c9ec [projections] add new projection igh from proj 4.9.1
including unit test in a new unit test using combined projections
2015-05-02 20:54:22 +02:00
Barend Gehrels
9befaa94e4 [projections] re-add empty lines where in original
This makes it closer to original
2015-05-02 20:37:37 +02:00
Barend Gehrels
9d6eb2befa [projections] changes in generation, remove commented fwd/inv/fac 2015-05-02 20:35:56 +02:00
Barend Gehrels
bf623b5d7c [projections] changes in generation - avoid splitting lines 2015-05-02 20:20:54 +02:00
Adam Wulkiewicz
178b0050d7 Merge pull request #257 from mkaravel/feature/set_ops_pointlike_linear
New feature: intersection and difference for pointlike/linear geometries
2015-05-02 04:05:18 +02:00
Barend Gehrels
42550568ee [projections] add etmerc (including unit tests) 2015-04-29 16:58:38 +02:00