Rocstar  1.0
Rocstar multiphysics simulation application
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
predicates_on_pointsS2.h File Reference
#include <CGAL/SimpleCartesian/simple_cartesian_classes.h>
#include <CGAL/SimpleCartesian/PointS2.h>
#include <CGAL/predicates/kernel_ftC2.h>
Include dependency graph for predicates_on_pointsS2.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Functions

template<class FT >
CGAL_BEGIN_NAMESPACE bool x_equal (const PointS2< FT > &p, const PointS2< FT > &q)
 
template<class FT >
bool y_equal (const PointS2< FT > &p, const PointS2< FT > &q)
 
template<class FT >
bool equal_xy (const PointS2< FT > &p, const PointS2< FT > &q)
 
template<class FT >
bool less_x (const PointS2< FT > &p, const PointS2< FT > &q)
 
template<class FT >
bool less_y (const PointS2< FT > &p, const PointS2< FT > &q)
 
template<class FT >
Comparison_result compare_x (const PointS2< FT > &p, const PointS2< FT > &q)
 
template<class FT >
Comparison_result compare_y (const PointS2< FT > &p, const PointS2< FT > &q)
 
template<class FT >
Comparison_result compare_deltax_deltay (const PointS2< FT > &p, const PointS2< FT > &q, const PointS2< FT > &r, const PointS2< FT > &s)
 
template<class FT >
Comparison_result compare_lexicographically_xy (const PointS2< FT > &p, const PointS2< FT > &q)
 
template<class FT >
bool lexicographically_xy_smaller_or_equal (const PointS2< FT > &p, const PointS2< FT > &q)
 
template<class FT >
bool lexicographically_xy_smaller (const PointS2< FT > &p, const PointS2< FT > &q)
 
template<class FT >
Comparison_result compare_lexicographically_yx (const PointS2< FT > &p, const PointS2< FT > &q)
 
template<class FT >
bool lexicographically_yx_smaller_or_equal (const PointS2< FT > &p, const PointS2< FT > &q)
 
template<class FT >
bool lexicographically_yx_smaller (const PointS2< FT > &p, const PointS2< FT > &q)
 
template<class FT >
Orientation orientation (const PointS2< FT > &p, const PointS2< FT > &q, const PointS2< FT > &r)
 
template<class FT >
bool collinear (const PointS2< FT > &p, const PointS2< FT > &q, const PointS2< FT > &r)
 
template<class FT >
bool collinear_are_ordered_along_line (const PointS2< FT > &p, const PointS2< FT > &q, const PointS2< FT > &r)
 
template<class FT >
bool are_ordered_along_line (const PointS2< FT > &p, const PointS2< FT > &q, const PointS2< FT > &r)
 
template<class FT >
bool collinear_are_strictly_ordered_along_line (const PointS2< FT > &p, const PointS2< FT > &q, const PointS2< FT > &r)
 
template<class FT >
bool are_strictly_ordered_along_line (const PointS2< FT > &p, const PointS2< FT > &q, const PointS2< FT > &r)
 
template<class FT >
bool leftturn (const PointS2< FT > &p, const PointS2< FT > &q, const PointS2< FT > &r)
 
template<class FT >
bool leftturn (const Origin &o, const PointS2< FT > &q, const PointS2< FT > &r)
 
template<class FT >
bool rightturn (const PointS2< FT > &p, const PointS2< FT > &q, const PointS2< FT > &r)
 
template<class FT >
bool rightturn (const Origin &o, const PointS2< FT > &q, const PointS2< FT > &r)
 
template<class FT >
Oriented_side side_of_oriented_circle (const PointS2< FT > &p, const PointS2< FT > &q, const PointS2< FT > &r, const PointS2< FT > &test)
 
template<class FT >
Bounded_side side_of_bounded_circle (const PointS2< FT > &p, const PointS2< FT > &q, const PointS2< FT > &r, const PointS2< FT > &test)
 

Function Documentation

bool are_ordered_along_line ( const PointS2< FT > &  p,
const PointS2< FT > &  q,
const PointS2< FT > &  r 
)
inline

Definition at line 206 of file predicates_on_pointsS2.h.

References collinear(), and collinear_are_ordered_along_line().

209 {
210  if (!collinear(p, q, r)) { return false; }
211  return collinear_are_ordered_along_line(p, q, r);
212 }
bool collinear(const Point_2< R > &p, const Point_2< R > &q, const Point_2< R > &r)
bool collinear_are_ordered_along_line(const Point_2< R > &p, const Point_2< R > &q, const Point_2< R > &r)

Here is the call graph for this function:

bool are_strictly_ordered_along_line ( const PointS2< FT > &  p,
const PointS2< FT > &  q,
const PointS2< FT > &  r 
)
inline

Definition at line 229 of file predicates_on_pointsS2.h.

References collinear(), and collinear_are_strictly_ordered_along_line().

232 {
233  if (!collinear(p, q, r)) { return false; }
235 }
bool collinear(const Point_2< R > &p, const Point_2< R > &q, const Point_2< R > &r)
bool collinear_are_strictly_ordered_along_line(const Point_2< R > &p, const Point_2< R > &q, const Point_2< R > &r)

Here is the call graph for this function:

bool collinear ( const PointS2< FT > &  p,
const PointS2< FT > &  q,
const PointS2< FT > &  r 
)
inline

Definition at line 182 of file predicates_on_pointsS2.h.

References COLLINEAR, and orientation().

185 {
186  return (orientation(p,q,r) == COLLINEAR);
187 }
Orientation orientation(const Point_2< R > &p, const Point_2< R > &q, const Point_2< R > &r)
const Orientation COLLINEAR
Definition: enum.h:72

Here is the call graph for this function:

bool collinear_are_ordered_along_line ( const PointS2< FT > &  p,
const PointS2< FT > &  q,
const PointS2< FT > &  r 
)
inline

Definition at line 194 of file predicates_on_pointsS2.h.

References collinear_are_ordered_along_lineC2(), PointS2< FT >::x(), and PointS2< FT >::y().

197 {
199  (p.x(),p.y(),q.x(),q.y(),r.x(),r.y());
200 }
CGAL_KERNEL_MEDIUM_INLINE bool collinear_are_ordered_along_lineC2(const FT &px, const FT &py, const FT &qx, const FT &qy, const FT &rx, const FT &ry)

Here is the call graph for this function:

bool collinear_are_strictly_ordered_along_line ( const PointS2< FT > &  p,
const PointS2< FT > &  q,
const PointS2< FT > &  r 
)
inline

Definition at line 217 of file predicates_on_pointsS2.h.

References collinear_are_strictly_ordered_along_lineC2(), PointS2< FT >::x(), and PointS2< FT >::y().

220 {
222  (p.x(),p.y(),q.x(),q.y(),r.x(),r.y());
223 }
CGAL_KERNEL_MEDIUM_INLINE bool collinear_are_strictly_ordered_along_lineC2(const FT &px, const FT &py, const FT &qx, const FT &qy, const FT &rx, const FT &ry)

Here is the call graph for this function:

Comparison_result compare_deltax_deltay ( const PointS2< FT > &  p,
const PointS2< FT > &  q,
const PointS2< FT > &  r,
const PointS2< FT > &  s 
)
inline

Definition at line 106 of file predicates_on_pointsS2.h.

References compare_deltax_deltayC2(), PointS2< FT >::x(), and PointS2< FT >::y().

110 {
111  return compare_deltax_deltayC2(p.x(), q.x(), r.y(), s.y());
112 }
Comparison_result compare_deltax_deltayC2(const FT &px, const FT &qx, const FT &ry, const FT &sy)

Here is the call graph for this function:

Comparison_result compare_lexicographically_xy ( const PointS2< FT > &  p,
const PointS2< FT > &  q 
)
inline

Definition at line 117 of file predicates_on_pointsS2.h.

References compare_lexicographically_xyC2(), PointS2< FT >::x(), and PointS2< FT >::y().

119 {
120  return compare_lexicographically_xyC2(p.x(),p.y(),q.x(),q.y());
121 }
Comparison_result compare_lexicographically_xyC2(const FT &px, const FT &py, const FT &qx, const FT &qy)

Here is the call graph for this function:

Comparison_result compare_lexicographically_yx ( const PointS2< FT > &  p,
const PointS2< FT > &  q 
)
inline

Definition at line 144 of file predicates_on_pointsS2.h.

References compare_lexicographically_xyC2(), PointS2< FT >::x(), and PointS2< FT >::y().

146 {
147  return compare_lexicographically_xyC2(p.y(),p.x(),q.y(),q.x());
148 }
Comparison_result compare_lexicographically_xyC2(const FT &px, const FT &py, const FT &qx, const FT &qy)

Here is the call graph for this function:

Comparison_result compare_x ( const PointS2< FT > &  p,
const PointS2< FT > &  q 
)
inline

Definition at line 94 of file predicates_on_pointsS2.h.

References CGAL_NTS, CGAL::compare(), and PointS2< FT >::x().

95 { return CGAL_NTS compare(p.x(), q.x()); }
CGAL_KERNEL_INLINE Comparison_result compare(const NT &n1, const NT &n2)
Definition: number_utils.h:143
#define CGAL_NTS

Here is the call graph for this function:

Comparison_result compare_y ( const PointS2< FT > &  p,
const PointS2< FT > &  q 
)
inline

Definition at line 100 of file predicates_on_pointsS2.h.

References CGAL_NTS, CGAL::compare(), and PointS2< FT >::y().

101 { return CGAL_NTS compare(p.y(), q.y()); }
CGAL_KERNEL_INLINE Comparison_result compare(const NT &n1, const NT &n2)
Definition: number_utils.h:143
#define CGAL_NTS

Here is the call graph for this function:

bool equal_xy ( const PointS2< FT > &  p,
const PointS2< FT > &  q 
)
inline

Definition at line 76 of file predicates_on_pointsS2.h.

References PointS2< FT >::x(), and PointS2< FT >::y().

Referenced by Equal_xy::operator()().

77 { return (p.x() == q.x()) && (p.y() == q.y()); }

Here is the call graph for this function:

Here is the caller graph for this function:

bool leftturn ( const PointS2< FT > &  p,
const PointS2< FT > &  q,
const PointS2< FT > &  r 
)
inline

Definition at line 240 of file predicates_on_pointsS2.h.

References LEFTTURN, and orientation().

243 {
244  return (orientation(p,q,r) == LEFTTURN );
245 }
const Orientation LEFTTURN
Definition: enum.h:66
Orientation orientation(const Point_2< R > &p, const Point_2< R > &q, const Point_2< R > &r)

Here is the call graph for this function:

bool leftturn ( const Origin o,
const PointS2< FT > &  q,
const PointS2< FT > &  r 
)
inline

Definition at line 250 of file predicates_on_pointsS2.h.

References LEFTTURN, orientationC2(), PointS2< FT >::x(), and PointS2< FT >::y().

253 {
254  return (orientationC2(FT(0), FT(0), q.x(), q.y(), r.x(), r.y())
255  == LEFTTURN );
256 }
Orientation orientationC2(const FT &px, const FT &py, const FT &qx, const FT &qy, const FT &rx, const FT &ry)
const Orientation LEFTTURN
Definition: enum.h:66

Here is the call graph for this function:

bool less_x ( const PointS2< FT > &  p,
const PointS2< FT > &  q 
)
inline

Definition at line 82 of file predicates_on_pointsS2.h.

References PointS2< FT >::x().

Referenced by Less_x::operator()().

83 { return (p.x() < q.x()); }

Here is the call graph for this function:

Here is the caller graph for this function:

bool less_y ( const PointS2< FT > &  p,
const PointS2< FT > &  q 
)
inline

Definition at line 88 of file predicates_on_pointsS2.h.

References PointS2< FT >::y().

Referenced by Less_y::operator()(), and Less_z::operator()().

89 { return (p.y() < q.y()); }

Here is the call graph for this function:

Here is the caller graph for this function:

bool lexicographically_xy_smaller ( const PointS2< FT > &  p,
const PointS2< FT > &  q 
)
inline

Definition at line 135 of file predicates_on_pointsS2.h.

References compare_lexicographically_xy(), and SMALLER.

137 {
138  return compare_lexicographically_xy(p,q) == SMALLER ;
139 }
Definition: enum.h:96
Comparison_result compare_lexicographically_xy(const Point_2< R > &p, const Point_2< R > &q)

Here is the call graph for this function:

bool lexicographically_xy_smaller_or_equal ( const PointS2< FT > &  p,
const PointS2< FT > &  q 
)
inline

Definition at line 126 of file predicates_on_pointsS2.h.

References compare_lexicographically_xy(), and LARGER.

128 {
129  return ( !( compare_lexicographically_xy(p,q) == LARGER ) );
130 }
Definition: enum.h:98
Comparison_result compare_lexicographically_xy(const Point_2< R > &p, const Point_2< R > &q)

Here is the call graph for this function:

bool lexicographically_yx_smaller ( const PointS2< FT > &  p,
const PointS2< FT > &  q 
)
inline

Definition at line 163 of file predicates_on_pointsS2.h.

References compare_lexicographically_yx(), and SMALLER.

165 {
166  return compare_lexicographically_yx(p,q) == SMALLER ;
167 }
Definition: enum.h:96
Comparison_result compare_lexicographically_yx(const Point_2< R > &p, const Point_2< R > &q)

Here is the call graph for this function:

bool lexicographically_yx_smaller_or_equal ( const PointS2< FT > &  p,
const PointS2< FT > &  q 
)
inline

Definition at line 154 of file predicates_on_pointsS2.h.

References compare_lexicographically_yx(), and LARGER.

156 {
157  return !( compare_lexicographically_yx(p,q) == LARGER ) ;
158 }
Definition: enum.h:98
Comparison_result compare_lexicographically_yx(const Point_2< R > &p, const Point_2< R > &q)

Here is the call graph for this function:

Orientation orientation ( const PointS2< FT > &  p,
const PointS2< FT > &  q,
const PointS2< FT > &  r 
)
inline

Definition at line 172 of file predicates_on_pointsS2.h.

References orientationC2(), PointS2< FT >::x(), and PointS2< FT >::y().

175 {
176  return orientationC2(p.x(), p.y(), q.x(), q.y(), r.x(), r.y());
177 }
Orientation orientationC2(const FT &px, const FT &py, const FT &qx, const FT &qy, const FT &rx, const FT &ry)

Here is the call graph for this function:

bool rightturn ( const PointS2< FT > &  p,
const PointS2< FT > &  q,
const PointS2< FT > &  r 
)
inline

Definition at line 261 of file predicates_on_pointsS2.h.

References orientationC2(), RIGHTTURN, PointS2< FT >::x(), and PointS2< FT >::y().

264 {
265  return (orientationC2(p.x(), p.y(), q.x(), q.y(), r.x(), r.y())
266  == RIGHTTURN);
267 }
Orientation orientationC2(const FT &px, const FT &py, const FT &qx, const FT &qy, const FT &rx, const FT &ry)
const Orientation RIGHTTURN
Definition: enum.h:67

Here is the call graph for this function:

bool rightturn ( const Origin o,
const PointS2< FT > &  q,
const PointS2< FT > &  r 
)
inline

Definition at line 272 of file predicates_on_pointsS2.h.

References orientationC2(), RIGHTTURN, PointS2< FT >::x(), and PointS2< FT >::y().

275 {
276  return (orientationC2(FT(0), FT(0), q.x(), q.y(), r.x(), r.y())
277  == RIGHTTURN);
278 }
Orientation orientationC2(const FT &px, const FT &py, const FT &qx, const FT &qy, const FT &rx, const FT &ry)
const Orientation RIGHTTURN
Definition: enum.h:67

Here is the call graph for this function:

Bounded_side side_of_bounded_circle ( const PointS2< FT > &  p,
const PointS2< FT > &  q,
const PointS2< FT > &  r,
const PointS2< FT > &  test 
)
inline

Definition at line 296 of file predicates_on_pointsS2.h.

References side_of_bounded_circleC2(), PointS2< FT >::x(), and PointS2< FT >::y().

300 {
302  (p.x(),p.y(),q.x(),q.y(),r.x(),r.y(),test.x(),test.y());
303 }
CGAL_KERNEL_LARGE_INLINE Bounded_side side_of_bounded_circleC2(const FT &px, const FT &py, const FT &qx, const FT &qy, const FT &rx, const FT &ry, const FT &tx, const FT &ty)

Here is the call graph for this function:

Oriented_side side_of_oriented_circle ( const PointS2< FT > &  p,
const PointS2< FT > &  q,
const PointS2< FT > &  r,
const PointS2< FT > &  test 
)
inline

Definition at line 283 of file predicates_on_pointsS2.h.

References side_of_oriented_circleC2(), PointS2< FT >::x(), and PointS2< FT >::y().

287 {
289  (p.x(),p.y(),q.x(),q.y(),r.x(),r.y(),test.x(),test.y());
290 }
CGAL_KERNEL_LARGE_INLINE Oriented_side side_of_oriented_circleC2(const FT &px, const FT &py, const FT &qx, const FT &qy, const FT &rx, const FT &ry, const FT &tx, const FT &ty)

Here is the call graph for this function:

CGAL_BEGIN_NAMESPACE bool x_equal ( const PointS2< FT > &  p,
const PointS2< FT > &  q 
)
inline

Definition at line 64 of file predicates_on_pointsS2.h.

References PointS2< FT >::x().

65 { return p.x() == q.x(); }

Here is the call graph for this function:

bool y_equal ( const PointS2< FT > &  p,
const PointS2< FT > &  q 
)
inline

Definition at line 70 of file predicates_on_pointsS2.h.

References PointS2< FT >::y().

71 { return p.y() == q.y(); }

Here is the call graph for this function: