removed inclusion problems

This commit is contained in:
Peter Hachenberger 2008-07-26 20:26:48 +00:00
parent 1c75cca953
commit cda090b2ae
3 changed files with 12 additions and 10 deletions

View File

@ -67,7 +67,7 @@ between $p$ and $q$. If $p$ and $q$ are antipodal of each other then we
create any great circle that contains $p$ and $q$.}*/
{ Point_3 p1(0,0,0), p4 = CGAL::ORIGIN + ((Base*) this)->orthogonal_vector();
if ( p != q.antipode() ) {
if ( CGAL::orientation(p1,p,q,p4) != CGAL::POSITIVE )
if (R_().orientation_3_object()(p1,p,q,p4) != CGAL::POSITIVE )
*this = Self(opposite());
} else {
/* previous method was: *this = Self(Plane_3(p1,q-p));

View File

@ -21,6 +21,7 @@
#define CGAL_SPHERE_POINT_H
#include <CGAL/basic.h>
#include <CGAL/Origin.h>
CGAL_BEGIN_NAMESPACE
@ -123,8 +124,8 @@ Sphere_point<R> antipode() const
}; // Sphere_point<R>
template <typename R>
CGAL::Point_3<R> operator+(
const CGAL::Point_3<R>& p, const Sphere_point<R>& q)
typename R::Point_3 operator+
(const typename R::Point_3& p, const Sphere_point<R>& q)
{ return p + (q-CGAL::ORIGIN); }
CGAL_END_NAMESPACE

View File

@ -61,7 +61,7 @@ Sphere_segment_rep(const Circle& c1,
{ CGAL_assertion(!equal_as_sets(c1,c2));
ps_ = intersection(c1,c2);
pt_ = ps_.antipode();
if ( orientation(Point_3(0,0,0),ps_,pt_,
if ( R_::orientation(Point_3(0,0,0),ps_,pt_,
CGAL::ORIGIN + c_.orthogonal_vector()) !=
CGAL::POSITIVE ) std::swap(ps_,pt_);
}
@ -188,15 +188,16 @@ void split_halfcircle(Sphere_segment<R>& s1,
bool is_short() const
/*{\Mop a segment is short iff it is shorter than a halfcircle.}*/
{ return CGAL::orientation(Point_3(0,0,0), source(), target(),
CGAL::ORIGIN + this->ptr()->c_.orthogonal_vector())
== CGAL::POSITIVE; }
{
return R().orientation_3_object()(Point_3(0,0,0), source(), target(),
CGAL::ORIGIN + this->ptr()->c_.orthogonal_vector())
== CGAL::POSITIVE; }
bool is_long() const
/*{\Mop a segment is long iff it is longer than a halfcircle.}*/
{ return CGAL::orientation(Point_3(0,0,0), source(), target(),
CGAL::ORIGIN + this->ptr()->c_.orthogonal_vector())
== CGAL::NEGATIVE; }
{ return R().orientation_3_object()(Point_3(0,0,0), source(), target(),
CGAL::ORIGIN + this->ptr()->c_.orthogonal_vector())
== CGAL::NEGATIVE; }
bool is_degenerate() const { return source() == target(); }
/*{\Mop return true iff |\Mvar| is degenerate.}*/