Commit Graph

3162 Commits

Author SHA1 Message Date
barendgehrels
cdf014e35d [buffer] propagate error information from strategy to buffer inserter 2015-05-27 10:56:56 +02:00
Adam Wulkiewicz
593521980a Merge branch 'develop' into feature/relate
Conflicts:
	doc/release_notes.qbk
2015-05-26 17:26:38 +02:00
Adam Wulkiewicz
3893f2085b Merge branch 'feature/relate' of github.com:awulkiew/geometry into feature/relate 2015-05-26 17:19:58 +02:00
Adam Wulkiewicz
79561464bf [relate] Change the order of template parameters (Mask at the end) and remove the mask default parameter. 2015-05-26 17:15:03 +02:00
Adam Wulkiewicz
1df894c44a [centroid][test] Update copyrights. 2015-05-26 00:44:56 +02:00
Adam Wulkiewicz
a7d8da4249 [centroid][strategies] Avoid filling centroid with NaN coordinates.
Check the intermediate results using math::isfinite().

Calculate the output directly using the distance_type/calculation_type
and casting at the end, without converting intermediate results to
coordinate_type.
2015-05-25 15:19:42 +02:00
Adam Wulkiewicz
1bff0ad9e9 [math] Fix equals() for INF and -INF. 2015-05-24 14:26:53 +02:00
Adam Wulkiewicz
b9ee6f0d51 [math] Include missing header and add missing namespace. 2015-05-24 13:48:22 +02:00
barendgehrels
ad088fcf02 [buffer] stop in case of numeric errors in side strategy 2015-05-24 11:22:45 +02:00
barendgehrels
5370e2494d [buffer][math] check for inf when checking on equals
This fixes an error in buffer for geometries with extreme coordinate differences
(though the generated buffer is not correct then)
2015-05-23 23:45:24 +02:00
barendgehrels
2227c30bb4 [buffer] check return value of iterate to avoid using uninitialized points
if iterate fails (this can happen by extreme differences in coordinates)
2015-05-23 22:40:48 +02:00
Adam Wulkiewicz
3c958e4200 [buffer][strategies] Replace metafunction pow and divisions with bitwise shifts. 2015-05-20 19:27:10 +02:00
Adam Wulkiewicz
a9f1e7fc3d [buffer][strategies] Fix multiplicable_integral::operator<. 2015-05-20 17:58:53 +02:00
Adam Wulkiewicz
7ffd9d32b2 Merge pull request #297 from awulkiew/fix/buffer
Buffer fixes.
2015-05-20 17:19:23 +02:00
barendgehrels
8f46b81dfa [projections] Ignore unused static functions 2015-05-20 16:57:03 +02:00
Adam Wulkiewicz
c5dd2fd613 [buffer][strategies] Improve style and add comments to multiplicable_integral used in side_of_intersection. 2015-05-20 16:52:59 +02:00
barendgehrels
9ed1ad8445 [buffer][fix] Fix creating ring_properties which are unassigned 2015-05-20 16:28:27 +02:00
barendgehrels
106f7258f6 [Projections] Change in generation (whitespace, comments) 2015-05-20 14:31:52 +02:00
barendgehrels
6c5d7a692a [projections] fix mutable (change in generation) 2015-05-20 12:59:10 +02:00
barendgehrels
571561524a [geometry] Avoid making methods which were static inline 2015-05-20 11:18:02 +02:00
barendgehrels
401b308a83 [projections] change in generation (white space only) 2015-05-20 11:14:33 +02:00
barendgehrels
d44e09f23e [projections] extend documentation (changes in generation) 2015-05-20 11:09:44 +02:00
barendgehrels
d1bb625a41 [projections] fix d2r / r2d to new approach 2015-05-20 10:45:18 +02:00
Adam Wulkiewicz
b57def597f [buffer] Suppress msvc warnings. 2015-05-20 01:00:01 +02:00
Adam Wulkiewicz
8d3e2b180f [buffer] Replace Multiprecision with temporary solution. 2015-05-20 00:54:17 +02:00
Adam Wulkiewicz
aff4443f06 [relate] Check masks characters, both compile-time and run-time.
Compile-time mask is checked using BOOST_MPL_ASSERT_MSG.
Run-time mask constructors may throw an invalid_input_exception.
2015-05-18 19:09:05 +02:00
Adam Wulkiewicz
8262ee652a [core] Add invalid_input_exception. 2015-05-18 19:05:44 +02:00
Barend Gehrels
7379fc5094 Merge branch 'develop' of github.com:boostorg/geometry into develop 2015-05-17 09:07:07 +02:00
Barend Gehrels
f9589da717 [projections] Parse more characteristics 2015-05-13 21:01:47 +02:00
Barend Gehrels
a00979eca0 [projections] fix hypot in generation 2015-05-13 20:57:14 +02: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
605031528d [relate] Fix style according to guidelines and remove unused code/comment. 2015-05-13 17:52:42 +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
Adam Wulkiewicz
e5a6e90280 [relate][strategies] Improve the consistency of implementation and style.
Rename relate_base to relate_impl.
Rename base_t to base_type.
Implement all predefined static masks as metafunction taking two
Geometries (consistency).
Add comments about reasons of commenting out some parts of the code.
2015-05-12 13:53:19 +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