mirror of https://github.com/CGAL/cgal
Some changes after Sebastien's review
This commit is contained in:
parent
a76623e7e8
commit
aac8ac4e6b
|
|
@ -46,25 +46,25 @@ bool do_intersect_circle_box_2(const typename K::Circle_2& circle,
|
||||||
FT distance = FT(0);
|
FT distance = FT(0);
|
||||||
Point center = circle.center();
|
Point center = circle.center();
|
||||||
|
|
||||||
if(center.x() < (FT)bbox.xmin())
|
if(center.x() < FT(bbox.xmin()))
|
||||||
{
|
{
|
||||||
d = (FT)bbox.xmin() - center.x();
|
d = FT(bbox.xmin()) - center.x();
|
||||||
distance += d * d;
|
distance += d * d;
|
||||||
}
|
}
|
||||||
else if(center.x() > (FT)bbox.xmax())
|
else if(center.x() > FT(bbox.xmax()))
|
||||||
{
|
{
|
||||||
d = center.x() - (FT)bbox.xmax();
|
d = center.x() - FT(bbox.xmax());
|
||||||
distance += d * d;
|
distance += d * d;
|
||||||
}
|
}
|
||||||
|
|
||||||
if(center.y() < (FT)bbox.ymin())
|
if(center.y() < FT(bbox.ymin()))
|
||||||
{
|
{
|
||||||
d = (FT)bbox.ymin() - center.y();
|
d = FT(bbox.ymin()) - center.y();
|
||||||
distance += d * d;
|
distance += d * d;
|
||||||
}
|
}
|
||||||
else if(center.y() > (FT)bbox.ymax())
|
else if(center.y() > FT(bbox.ymax()))
|
||||||
{
|
{
|
||||||
d = center.y() - (FT)bbox.ymax();
|
d = center.y() - FT(bbox.ymax());
|
||||||
distance += d * d;
|
distance += d * d;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -50,7 +50,7 @@ do_intersect(const typename K::Tetrahedron_3 &tetrahedron,
|
||||||
const typename K::Point_3 &pt,
|
const typename K::Point_3 &pt,
|
||||||
const K&)
|
const K&)
|
||||||
{
|
{
|
||||||
return tetrahedron.has_on_unbounded_side(pt);
|
return ! tetrahedron.has_on_unbounded_side(pt);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -51,7 +51,7 @@ do_intersect(const typename K::Tetrahedron_3 &tet,
|
||||||
typename K::Boolean
|
typename K::Boolean
|
||||||
do_intersect_tetrahedron_bounded(const Bounded &tr,
|
do_intersect_tetrahedron_bounded(const Bounded &tr,
|
||||||
const typename K::Tetrahedron_3 &tet,
|
const typename K::Tetrahedron_3 &tet,
|
||||||
const typename K::Point_3 p,
|
const typename K::Point_3 &p,
|
||||||
const K & k)
|
const K & k)
|
||||||
{
|
{
|
||||||
typedef typename K::Triangle_3 Triangle;
|
typedef typename K::Triangle_3 Triangle;
|
||||||
|
|
|
||||||
|
|
@ -21,7 +21,6 @@ if ( CGAL_FOUND )
|
||||||
foreach(cppfile ${cppfiles})
|
foreach(cppfile ${cppfiles})
|
||||||
create_single_source_cgal_program( "${cppfile}" )
|
create_single_source_cgal_program( "${cppfile}" )
|
||||||
endforeach()
|
endforeach()
|
||||||
|
|
||||||
else()
|
else()
|
||||||
|
|
||||||
message(STATUS "This program requires the CGAL library, and will not be compiled.")
|
message(STATUS "This program requires the CGAL library, and will not be compiled.")
|
||||||
|
|
|
||||||
|
|
@ -89,6 +89,25 @@ void test_P_Pl()
|
||||||
assert(res == p);
|
assert(res == p);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
template<typename K>
|
||||||
|
void test_P_Tet()
|
||||||
|
{
|
||||||
|
typedef CGAL::Point_3<K> P;
|
||||||
|
typedef CGAL::Tetrahedron_3<K> T;
|
||||||
|
P p(0,0,0), q(1,0,0), r(1,1,0), s(0,0,1);
|
||||||
|
T t(p,q,r,s);
|
||||||
|
P q0(0.1, 0.1, 0.1), q1(10,10,10);
|
||||||
|
|
||||||
|
assert(CGAL::do_intersect(p,t));
|
||||||
|
assert(CGAL::do_intersect(t,p));
|
||||||
|
|
||||||
|
assert(CGAL::do_intersect(q0,t));
|
||||||
|
assert(CGAL::do_intersect(t,q0));
|
||||||
|
|
||||||
|
assert(! CGAL::do_intersect(q1,t));
|
||||||
|
assert(! CGAL::do_intersect(t,q1));
|
||||||
|
}
|
||||||
|
|
||||||
int main()
|
int main()
|
||||||
{
|
{
|
||||||
test_P_Cub<Epick>();
|
test_P_Cub<Epick>();
|
||||||
|
|
@ -99,7 +118,6 @@ int main()
|
||||||
|
|
||||||
test_P_R<Epick>();
|
test_P_R<Epick>();
|
||||||
test_P_R<Epeck>();
|
test_P_R<Epeck>();
|
||||||
|
|
||||||
test_P_S<Epick>();
|
test_P_S<Epick>();
|
||||||
test_P_S<Epeck>();
|
test_P_S<Epeck>();
|
||||||
|
|
||||||
|
|
@ -108,6 +126,9 @@ int main()
|
||||||
|
|
||||||
test_P_Pl<Epick>();
|
test_P_Pl<Epick>();
|
||||||
test_P_Pl<Epeck>();
|
test_P_Pl<Epeck>();
|
||||||
|
|
||||||
|
test_P_Tet<Epick>();
|
||||||
|
test_P_Tet<Epeck>();
|
||||||
}
|
}
|
||||||
#include <iostream>
|
#include <iostream>
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue