mirror of
https://github.com/boostorg/geometry.git
synced 2025-05-11 21:44:04 +00:00
[crosses] add bg::crosses() algorithm
This commit is contained in:
parent
c1d4a09ec7
commit
d3f8ea2f6b
@ -24,6 +24,7 @@
|
|||||||
\defgroup core core: meta-functions for geometry types
|
\defgroup core core: meta-functions for geometry types
|
||||||
\defgroup correct correct: correct geometries
|
\defgroup correct correct: correct geometries
|
||||||
\defgroup covered_by covered_by: detect if a geometry is inside or on the border of another geometry, a.o. point-in-polygon (border included)
|
\defgroup covered_by covered_by: detect if a geometry is inside or on the border of another geometry, a.o. point-in-polygon (border included)
|
||||||
|
\defgroup crosses crosses: detect if two geometries crosses each other
|
||||||
\defgroup cs coordinate systems
|
\defgroup cs coordinate systems
|
||||||
\defgroup difference difference: difference of two geometries
|
\defgroup difference difference: difference of two geometries
|
||||||
\defgroup disjoint disjoint: detect if geometries are not spatially related
|
\defgroup disjoint disjoint: detect if geometries are not spatially related
|
||||||
|
@ -299,6 +299,7 @@
|
|||||||
</simplelist>
|
</simplelist>
|
||||||
<bridgehead renderas="sect3">Predicates</bridgehead>
|
<bridgehead renderas="sect3">Predicates</bridgehead>
|
||||||
<simplelist type="vert" columns="1">
|
<simplelist type="vert" columns="1">
|
||||||
|
<member><link linkend="boost_geometry.reference.crosses">boost::geometry::crosses</link></member>
|
||||||
<member><link linkend="boost_geometry.reference.disjoint">boost::geometry::disjoint</link></member>
|
<member><link linkend="boost_geometry.reference.disjoint">boost::geometry::disjoint</link></member>
|
||||||
<member><link linkend="boost_geometry.reference.equals">boost::geometry::equals</link></member>
|
<member><link linkend="boost_geometry.reference.equals">boost::geometry::equals</link></member>
|
||||||
<member><link linkend="boost_geometry.reference.intersects">boost::geometry::intersects</link></member>
|
<member><link linkend="boost_geometry.reference.intersects">boost::geometry::intersects</link></member>
|
||||||
|
@ -318,6 +318,7 @@
|
|||||||
</simplelist>
|
</simplelist>
|
||||||
<bridgehead renderas="sect3">Predicates</bridgehead>
|
<bridgehead renderas="sect3">Predicates</bridgehead>
|
||||||
<simplelist type="vert" columns="1">
|
<simplelist type="vert" columns="1">
|
||||||
|
<member><link linkend="geometry.reference.algorithms.crosses">crosses</link></member>
|
||||||
<member><link linkend="geometry.reference.algorithms.covered_by">covered_by</link></member>
|
<member><link linkend="geometry.reference.algorithms.covered_by">covered_by</link></member>
|
||||||
<member><link linkend="geometry.reference.algorithms.disjoint">disjoint</link></member>
|
<member><link linkend="geometry.reference.algorithms.disjoint">disjoint</link></member>
|
||||||
<member><link linkend="geometry.reference.algorithms.equals">equals</link></member>
|
<member><link linkend="geometry.reference.algorithms.equals">equals</link></member>
|
||||||
@ -734,7 +735,7 @@
|
|||||||
<simplelist type="vert" columns="1">
|
<simplelist type="vert" columns="1">
|
||||||
<member><link linkend="geometry.reference.spatial_indexes.group__predicates.contains_geometry_const___">contains(Geometry const &)</link></member>
|
<member><link linkend="geometry.reference.spatial_indexes.group__predicates.contains_geometry_const___">contains(Geometry const &)</link></member>
|
||||||
<member><link linkend="geometry.reference.spatial_indexes.group__predicates.covered_by_geometry_const___">covered_by(Geometry const &)</link></member>
|
<member><link linkend="geometry.reference.spatial_indexes.group__predicates.covered_by_geometry_const___">covered_by(Geometry const &)</link></member>
|
||||||
<member><link linkend="geometry.reference.spatial_indexes.group__predicates.covers_geometry_const___">covers(Geometry const &)</link></member>
|
<member><link linkend="geometry.reference.spatial_indexes.group__predicates.covers_geometry_const___">covers(Geometry const &)</link></member>
|
||||||
<member><link linkend="geometry.reference.spatial_indexes.group__predicates.disjoint_geometry_const___">disjoint(Geometry const &)</link></member>
|
<member><link linkend="geometry.reference.spatial_indexes.group__predicates.disjoint_geometry_const___">disjoint(Geometry const &)</link></member>
|
||||||
<member><link linkend="geometry.reference.spatial_indexes.group__predicates.intersects_geometry_const___">intersects(Geometry const &)</link></member>
|
<member><link linkend="geometry.reference.spatial_indexes.group__predicates.intersects_geometry_const___">intersects(Geometry const &)</link></member>
|
||||||
<member><link linkend="geometry.reference.spatial_indexes.group__predicates.overlaps_geometry_const___">overlaps(Geometry const &)</link></member>
|
<member><link linkend="geometry.reference.spatial_indexes.group__predicates.overlaps_geometry_const___">overlaps(Geometry const &)</link></member>
|
||||||
|
@ -89,6 +89,8 @@
|
|||||||
[include generated/covered_by.qbk]
|
[include generated/covered_by.qbk]
|
||||||
[endsect]
|
[endsect]
|
||||||
|
|
||||||
|
[include generated/crosses.qbk]
|
||||||
|
|
||||||
[include generated/difference.qbk]
|
[include generated/difference.qbk]
|
||||||
[include generated/disjoint.qbk]
|
[include generated/disjoint.qbk]
|
||||||
|
|
||||||
|
@ -1138,8 +1138,8 @@ struct static_mask_crosses_type<Geometry1, Geometry2, Dim, Dim, D1LessD2/*false*
|
|||||||
typename geometry::tag<Geometry2>::type>
|
typename geometry::tag<Geometry2>::type>
|
||||||
{};
|
{};
|
||||||
// dim(G1) == 1 && dim(G2) == 1 - L/L
|
// dim(G1) == 1 && dim(G2) == 1 - L/L
|
||||||
template <typename Geometry1, typename Geometry2, bool D1LessD2>
|
template <typename Geometry1, typename Geometry2>
|
||||||
struct static_mask_crosses_type<Geometry1, Geometry2, 1, 1, D1LessD2>
|
struct static_mask_crosses_type<Geometry1, Geometry2, 1, 1, false>
|
||||||
{
|
{
|
||||||
typedef static_mask<'0', '*', '*', '*', '*', '*', '*', '*', '*'> type;
|
typedef static_mask<'0', '*', '*', '*', '*', '*', '*', '*', '*'> type;
|
||||||
};
|
};
|
||||||
|
@ -45,6 +45,7 @@
|
|||||||
#include <boost/geometry/algorithms/convex_hull.hpp>
|
#include <boost/geometry/algorithms/convex_hull.hpp>
|
||||||
#include <boost/geometry/algorithms/correct.hpp>
|
#include <boost/geometry/algorithms/correct.hpp>
|
||||||
#include <boost/geometry/algorithms/covered_by.hpp>
|
#include <boost/geometry/algorithms/covered_by.hpp>
|
||||||
|
#include <boost/geometry/algorithms/crosses.hpp>
|
||||||
#include <boost/geometry/algorithms/difference.hpp>
|
#include <boost/geometry/algorithms/difference.hpp>
|
||||||
#include <boost/geometry/algorithms/disjoint.hpp>
|
#include <boost/geometry/algorithms/disjoint.hpp>
|
||||||
#include <boost/geometry/algorithms/distance.hpp>
|
#include <boost/geometry/algorithms/distance.hpp>
|
||||||
|
@ -20,6 +20,7 @@ test-suite boost-geometry-algorithms
|
|||||||
[ run correct.cpp ]
|
[ run correct.cpp ]
|
||||||
[ run convert.cpp : : : <toolset>msvc:<cxxflags>/bigobj ]
|
[ run convert.cpp : : : <toolset>msvc:<cxxflags>/bigobj ]
|
||||||
[ run covered_by.cpp ]
|
[ run covered_by.cpp ]
|
||||||
|
[ run crosses.cpp ]
|
||||||
[ run difference.cpp : : : <define>BOOST_GEOMETRY_TEST_ONLY_ONE_TYPE <toolset>msvc:<cxxflags>/bigobj ]
|
[ run difference.cpp : : : <define>BOOST_GEOMETRY_TEST_ONLY_ONE_TYPE <toolset>msvc:<cxxflags>/bigobj ]
|
||||||
[ run disjoint.cpp ]
|
[ run disjoint.cpp ]
|
||||||
[ run distance.cpp : : : <toolset>msvc:<cxxflags>/bigobj ]
|
[ run distance.cpp : : : <toolset>msvc:<cxxflags>/bigobj ]
|
||||||
|
Loading…
x
Reference in New Issue
Block a user