mirror of https://github.com/CGAL/cgal
parent
ed67c4d61b
commit
75a82ec32d
|
|
@ -60,9 +60,9 @@ Class \ccRefName\ is a static data structure for efficient intersection and dist
|
|||
\ccOperations
|
||||
|
||||
\ccMethod{template < class InputIterator>
|
||||
bool rebuild(InputIterator begin,
|
||||
void rebuild(InputIterator begin,
|
||||
InputIterator beyond);}
|
||||
{Clears the current tree and rebuilds it from scratch. See constructor above for the parameters. Returns \ccc{true}, iff the memory allocation is successful. }
|
||||
{Clears the current tree and rebuilds it from scratch. See constructor above for the parameters. }
|
||||
|
||||
\ccMethod{void clear();}
|
||||
{Clears the AABB tree. }
|
||||
|
|
|
|||
|
|
@ -43,18 +43,18 @@ namespace CGALi {
|
|||
const K&)
|
||||
{
|
||||
typedef typename K::FT FT;
|
||||
FT d = 0.0;
|
||||
FT distance = 0.0;
|
||||
FT d = (FT)0.0;
|
||||
FT distance = (FT)0.0;
|
||||
for(int i = 0; i < 3; ++i)
|
||||
{
|
||||
if(sphere.center()[i] < bbox.min(i))
|
||||
{
|
||||
d = bbox.min(i) - sphere.center()[i];
|
||||
d = (FT)bbox.min(i) - sphere.center()[i];
|
||||
distance += d*d;
|
||||
}
|
||||
else if(sphere.center()[i] > bbox.max(i))
|
||||
else if(sphere.center()[i] > (FT)bbox.max(i))
|
||||
{
|
||||
d = sphere.center()[i] - bbox.max(i);
|
||||
d = sphere.center()[i] - (FT)bbox.max(i);
|
||||
distance += d*d;
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -69,7 +69,7 @@ namespace CGAL {
|
|||
/// a constructor taking a ConstPrimitiveIterator as argument.
|
||||
/// Returns true if the memory allocation was successful.
|
||||
template<typename ConstPrimitiveIterator>
|
||||
bool rebuild(ConstPrimitiveIterator first, ConstPrimitiveIterator beyond);
|
||||
void rebuild(ConstPrimitiveIterator first, ConstPrimitiveIterator beyond);
|
||||
|
||||
/// Non virtual destructor
|
||||
~AABB_tree()
|
||||
|
|
@ -88,7 +88,6 @@ namespace CGAL {
|
|||
clear_search_tree();
|
||||
}
|
||||
|
||||
|
||||
// bbox and size
|
||||
Bounding_box bbox() const { return m_p_root_node->bbox(); }
|
||||
size_type size() const { return m_primitives.size(); }
|
||||
|
|
@ -435,10 +434,9 @@ namespace CGAL {
|
|||
}
|
||||
|
||||
// Clears tree and insert a set of primitives
|
||||
// Returns true upon successful memory allocation
|
||||
template<typename Tr>
|
||||
template<typename ConstPrimitiveIterator>
|
||||
bool AABB_tree<Tr>::rebuild(ConstPrimitiveIterator first,
|
||||
void AABB_tree<Tr>::rebuild(ConstPrimitiveIterator first,
|
||||
ConstPrimitiveIterator beyond)
|
||||
{
|
||||
// cleanup current tree and internal KD tree
|
||||
|
|
@ -457,12 +455,11 @@ namespace CGAL {
|
|||
{
|
||||
std::cerr << "Unable to allocate memory for AABB tree" << std::endl;
|
||||
m_primitives.clear();
|
||||
return false;
|
||||
clear();
|
||||
}
|
||||
|
||||
// constructs the tree
|
||||
m_p_root_node->expand(m_primitives.begin(), m_primitives.end(), m_primitives.size());
|
||||
return true;
|
||||
}
|
||||
|
||||
|
||||
|
|
|
|||
Loading…
Reference in New Issue