mirror of https://github.com/CGAL/cgal
Fix Homogeneous and Visibility
This commit is contained in:
parent
54a45c6a5e
commit
ac93cec931
|
|
@ -917,21 +917,24 @@ cartesian(int i, int j) const
|
|||
case 0: return FT(_cos) / FT(_den);
|
||||
case 1: return - FT(_sin) / FT(_den);
|
||||
case 2: return RT(0);
|
||||
default: CGAL_ASSUME(false);
|
||||
}
|
||||
case 1: switch (j)
|
||||
{
|
||||
case 0: return FT(_sin) / FT(_den);
|
||||
case 1: return FT(_cos) / FT(_den);
|
||||
case 2: return FT(0);
|
||||
default: CGAL_ASSUME(false);
|
||||
}
|
||||
case 2: switch (j)
|
||||
{
|
||||
case 0: return FT(0);
|
||||
case 1: return FT(0);
|
||||
case 2: return FT(1);
|
||||
default: CGAL_ASSUME(false);
|
||||
}
|
||||
}
|
||||
return FT(0);
|
||||
CGAL_ASSUME(false);
|
||||
}
|
||||
|
||||
template < class R >
|
||||
|
|
@ -947,21 +950,24 @@ homogeneous(int i, int j) const
|
|||
case 0: return _sf_num;
|
||||
case 1: return RT(0);
|
||||
case 2: return RT(0);
|
||||
default: CGAL_ASSUME(false);
|
||||
}
|
||||
case 1: switch (j)
|
||||
{
|
||||
case 0: return RT(0);
|
||||
case 1: return _sf_num;
|
||||
case 2: return RT(0);
|
||||
default: CGAL_ASSUME(false);
|
||||
}
|
||||
case 2: switch (j)
|
||||
{
|
||||
case 0: return RT(0);
|
||||
case 1: return RT(0);
|
||||
case 2: return _sf_den;
|
||||
default: CGAL_ASSUME(false);
|
||||
}
|
||||
}
|
||||
return RT(0);
|
||||
CGAL_ASSUME(false);
|
||||
}
|
||||
|
||||
template <class R>
|
||||
|
|
@ -977,21 +983,24 @@ cartesian(int i, int j) const
|
|||
case 0: return FT(_sf_num) / FT(_sf_den);
|
||||
case 1: return FT(0);
|
||||
case 2: return FT(0);
|
||||
default: CGAL_ASSUME(false);
|
||||
}
|
||||
case 1: switch (j)
|
||||
{
|
||||
case 0: return FT(0);
|
||||
case 1: return FT(_sf_num) / FT(_sf_den);
|
||||
case 2: return FT(0);
|
||||
default: CGAL_ASSUME(false);
|
||||
}
|
||||
case 2: switch (j)
|
||||
{
|
||||
case 0: return FT(0);
|
||||
case 1: return FT(0);
|
||||
case 2: return FT(1);
|
||||
default: CGAL_ASSUME(false);
|
||||
}
|
||||
}
|
||||
return FT(0);
|
||||
CGAL_ASSUME(false);
|
||||
}
|
||||
|
||||
template < class R >
|
||||
|
|
@ -1008,21 +1017,24 @@ homogeneous(int i, int j) const
|
|||
case 0: return l.b()*l.b() - l.a()*l.a();
|
||||
case 1: return l.a()*l.b()*mRT2;
|
||||
case 2: return l.a()*l.c()*mRT2;
|
||||
default: CGAL_ASSUME(false);
|
||||
}
|
||||
case 1: switch (j)
|
||||
{
|
||||
case 0: return l.a()*l.b()*mRT2;
|
||||
case 1: return l.a()*l.a() - l.b()*l.b();
|
||||
case 2: return l.b()*l.c()*mRT2;
|
||||
default: CGAL_ASSUME(false);
|
||||
}
|
||||
case 2: switch (j)
|
||||
{
|
||||
case 0: return RT(0);
|
||||
case 1: return RT(0);
|
||||
case 2: return l.a()*l.a() + l.b()*l.b();
|
||||
default: CGAL_ASSUME(false);
|
||||
}
|
||||
}
|
||||
return RT(0);
|
||||
CGAL_ASSUME(false);
|
||||
}
|
||||
|
||||
template <class R>
|
||||
|
|
@ -1039,21 +1051,24 @@ cartesian(int i, int j) const
|
|||
case 0: return FT( l.b()-l.a() ) / FT( l.a()+l.b());
|
||||
case 1: return FT( homogeneous(0,1)) / de;
|
||||
case 2: return FT( homogeneous(0,2)) / de;
|
||||
default: CGAL_ASSUME(false);
|
||||
}
|
||||
case 1: switch (j)
|
||||
{
|
||||
case 0: return FT( homogeneous(1,0)) / de;
|
||||
case 1: return FT( l.a()-l.b() ) / FT( l.a()+l.b());
|
||||
case 2: return FT( homogeneous(1,2)) / de;
|
||||
default: CGAL_ASSUME(false);
|
||||
}
|
||||
case 2: switch (j)
|
||||
{
|
||||
case 0: return FT(0);
|
||||
case 1: return FT(0);
|
||||
case 2: return FT(1);
|
||||
default: CGAL_ASSUME(false);
|
||||
}
|
||||
}
|
||||
return FT(0);
|
||||
GAL_ASSUME(false);
|
||||
}
|
||||
|
||||
} //namespace CGAL
|
||||
|
|
|
|||
|
|
@ -551,6 +551,7 @@ homogeneous(int i, int j) const
|
|||
case 1: return t01;
|
||||
case 2: return t02;
|
||||
case 3: return t03;
|
||||
default: CGAL_ASSUME(false);
|
||||
}
|
||||
case 1: switch (j)
|
||||
{
|
||||
|
|
@ -558,6 +559,7 @@ homogeneous(int i, int j) const
|
|||
case 1: return t11;
|
||||
case 2: return t12;
|
||||
case 3: return t13;
|
||||
default: CGAL_ASSUME(false);
|
||||
}
|
||||
case 2: switch (j)
|
||||
{
|
||||
|
|
@ -565,6 +567,7 @@ homogeneous(int i, int j) const
|
|||
case 1: return t21;
|
||||
case 2: return t22;
|
||||
case 3: return t23;
|
||||
default: CGAL_ASSUME(false);
|
||||
}
|
||||
case 3: switch (j)
|
||||
{
|
||||
|
|
@ -572,9 +575,10 @@ homogeneous(int i, int j) const
|
|||
case 1: return RT0;
|
||||
case 2: return RT0;
|
||||
case 3: return t33;
|
||||
default: CGAL_ASSUME(false);
|
||||
}
|
||||
}
|
||||
return RT0;
|
||||
CGAL_ASSUME(false);
|
||||
}
|
||||
|
||||
template < class R >
|
||||
|
|
@ -695,6 +699,7 @@ Translation_repH3<R>::homogeneous(int i, int j) const
|
|||
case 1: return RT0;
|
||||
case 2: return RT0;
|
||||
case 3: return tv.hx();
|
||||
default: CGAL_ASSUME(false);
|
||||
}
|
||||
case 1: switch (j)
|
||||
{
|
||||
|
|
@ -702,6 +707,7 @@ Translation_repH3<R>::homogeneous(int i, int j) const
|
|||
case 1: return tv.hw();
|
||||
case 2: return RT0;
|
||||
case 3: return tv.hy();
|
||||
default: CGAL_ASSUME(false);
|
||||
}
|
||||
case 2: switch (j)
|
||||
{
|
||||
|
|
@ -709,6 +715,7 @@ Translation_repH3<R>::homogeneous(int i, int j) const
|
|||
case 1: return RT0;
|
||||
case 2: return tv.hw();
|
||||
case 3: return tv.hz();
|
||||
default: CGAL_ASSUME(false);
|
||||
}
|
||||
case 3: switch (j)
|
||||
{
|
||||
|
|
@ -716,9 +723,10 @@ Translation_repH3<R>::homogeneous(int i, int j) const
|
|||
case 1: return RT0;
|
||||
case 2: return RT0;
|
||||
case 3: return tv.hw();
|
||||
default: CGAL_ASSUME(false);
|
||||
}
|
||||
}
|
||||
return RT0;
|
||||
CGAL_ASSUME(false);
|
||||
}
|
||||
|
||||
template < class R >
|
||||
|
|
|
|||
|
|
@ -129,8 +129,8 @@ private:
|
|||
return 1;
|
||||
case LEFT_TURN:
|
||||
return 2;
|
||||
default: CGAL_ASSUME(false);
|
||||
}
|
||||
|
||||
return -1;
|
||||
}
|
||||
|
||||
|
|
@ -223,6 +223,7 @@ private:
|
|||
== Visibility_2::orientation_2(geom_traits, s2, t2, s1);
|
||||
else
|
||||
return true;
|
||||
default: CGAL_ASSUME(false);
|
||||
}
|
||||
case LEFT_TURN:
|
||||
switch (Visibility_2::orientation_2(geom_traits, s1, t1, s2)) {
|
||||
|
|
@ -240,6 +241,7 @@ private:
|
|||
== Visibility_2::orientation_2(geom_traits, s2, t2, s1);
|
||||
else
|
||||
return true;
|
||||
default: CGAL_ASSUME(false);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Reference in New Issue