mirror of https://github.com/CGAL/cgal
Add <RT> to rank as expression templates don't match
This commit is contained in:
parent
dbfb7157bb
commit
7ebdd07a4c
|
|
@ -1681,6 +1681,8 @@ inline bool
|
||||||
do_intersect(const Plane_3<R> &plane1, const Plane_3<R> &plane2,
|
do_intersect(const Plane_3<R> &plane1, const Plane_3<R> &plane2,
|
||||||
const Plane_3<R> &plane3, const R& r)
|
const Plane_3<R> &plane3, const R& r)
|
||||||
{
|
{
|
||||||
|
typedef typename R::RT RT;
|
||||||
|
|
||||||
if(! is_zero(determinant(plane1.a(), plane1.b(), plane1.c(),
|
if(! is_zero(determinant(plane1.a(), plane1.b(), plane1.c(),
|
||||||
plane2.a(), plane2.b(), plane2.c(),
|
plane2.a(), plane2.b(), plane2.c(),
|
||||||
plane3.a(), plane3.b(), plane3.c()))){
|
plane3.a(), plane3.b(), plane3.c()))){
|
||||||
|
|
@ -1703,7 +1705,7 @@ do_intersect(const Plane_3<R> &plane1, const Plane_3<R> &plane2,
|
||||||
if(b23 && ((plane2 == plane3)||(plane2 == plane3.opposite() ))) return true;
|
if(b23 && ((plane2 == plane3)||(plane2 == plane3.opposite() ))) return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
int rd = rank_34(plane1.a(), plane1.b(), plane1.c(), plane1.d(),
|
int rd = rank_34<RT>(plane1.a(), plane1.b(), plane1.c(), plane1.d(),
|
||||||
plane2.a(), plane2.b(), plane2.c(), plane2.d(),
|
plane2.a(), plane2.b(), plane2.c(), plane2.d(),
|
||||||
plane3.a(), plane3.b(), plane3.c(), plane3.d());
|
plane3.a(), plane3.b(), plane3.c(), plane3.d());
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -50,21 +50,21 @@ int rank_32(const RT& a0, const RT& b0,
|
||||||
{
|
{
|
||||||
if (a2==0)
|
if (a2==0)
|
||||||
{
|
{
|
||||||
return rank_31(b0,b1,b2);
|
return rank_31<RT>(b0,b1,b2);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
return 1 + rank_21(b0, b1);
|
return 1 + rank_21<RT>(b0, b1);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
return 1 + rank_21(b0, a1*b2-a2*b1);
|
return 1 + rank_21<RT>(b0, a1*b2-a2*b1);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
return 1 + rank_21(a0*b1-a1*b0, a0*b2-a2*b0);
|
return 1 + rank_21<RT>(a0*b1-a1*b0, a0*b2-a2*b0);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -76,12 +76,12 @@ int rank_22(const RT& a0, const RT& b0,
|
||||||
{
|
{
|
||||||
if (a1==0)
|
if (a1==0)
|
||||||
{
|
{
|
||||||
return rank_21(b0,b1);
|
return rank_21<RT>(b0,b1);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
return 1 + rank_11(b0);
|
return 1 + rank_11<RT>(b0);
|
||||||
}
|
}
|
||||||
return 1 + rank_11(a0*b1-a1*b0);
|
return 1 + rank_11<RT>(a0*b1-a1*b0);
|
||||||
}
|
}
|
||||||
|
|
||||||
template <class RT>
|
template <class RT>
|
||||||
|
|
@ -95,19 +95,19 @@ int rank_33(const RT& a0, const RT& b0, const RT& c0,
|
||||||
{
|
{
|
||||||
if (a2==0)
|
if (a2==0)
|
||||||
{
|
{
|
||||||
return rank_32(b0, c0, b1, c1, b2, c2);
|
return rank_32<RT>(b0, c0, b1, c1, b2, c2);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
return 1 + rank_22(b0, c0, b1, c1);
|
return 1 + rank_22<RT>(b0, c0, b1, c1);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
return 1 + rank_22(b0, c0, a1*b2-a2*b1, a1*c2-a2*c1);
|
return 1 + rank_22<RT>(b0, c0, a1*b2-a2*b1, a1*c2-a2*c1);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
return 1 + rank_22(a0*b1-a1*b0, a0*c1-a1*c0, a0*b2-a2*b0, a0*c2-a2*c0);
|
return 1 + rank_22<RT>(a0*b1-a1*b0, a0*c1-a1*c0, a0*b2-a2*b0, a0*c2-a2*c0);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -120,14 +120,14 @@ int rank_23(const RT& a0, const RT& b0, const RT& c0,
|
||||||
{
|
{
|
||||||
if (a1==0)
|
if (a1==0)
|
||||||
{
|
{
|
||||||
return rank_22(b0, c0, b1, c1);
|
return rank_22<RT>(b0, c0, b1, c1);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
return 1 + rank_12(b0,c0);
|
return 1 + rank_12<RT>(b0,c0);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
return 1 + rank_12(a0*b1-a1*b0,a0*c1-a1*c0);
|
return 1 + rank_12<RT>(a0*b1-a1*b0,a0*c1-a1*c0);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -143,19 +143,19 @@ int rank_34(const RT& a0, const RT& b0, const RT& c0, const RT& d0,
|
||||||
{
|
{
|
||||||
if (a2==0)
|
if (a2==0)
|
||||||
{
|
{
|
||||||
return rank_33(b0, c0, d0, b1, c1, d1, b2, c2, d2);
|
return rank_33<RT>(b0, c0, d0, b1, c1, d1, b2, c2, d2);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
return 1 + rank_23(b0, c0, d0, b1, c1, d1);
|
return 1 + rank_23<RT>(b0, c0, d0, b1, c1, d1);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
return 1 + rank_23(b0, c0, d0,a1*b2-a2*b1, a1*c2-a2*c1, a1*d2 - a2*d1);
|
return 1 + rank_23<RT>(b0, c0, d0,a1*b2-a2*b1, a1*c2-a2*c1, a1*d2 - a2*d1);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
return 1 + rank_23(a0*b1-a1*b0, a0*c1-a1*c0, a0*d1-a1*d0, a0*b2-a2*b0, a0*c2-a2*c0, a0*d2-a2*d0);
|
return 1 + rank_23<RT>(a0*b1-a1*b0, a0*c1-a1*c0, a0*d1-a1*d0, a0*b2-a2*b0, a0*c2-a2*c0, a0*d2-a2*d0);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue