Small change to make the bbox function in segment equal to the other vcg object (getbbox instead of bbox)
This commit is contained in:
parent
682586d0fa
commit
47334c555d
|
@ -169,9 +169,11 @@ MySegmentType * DoRay(MyRayType & _r,
|
||||||
void GetInBoxSegmentsBruteF( vcg::Box2<MyScalarType> bbox,
|
void GetInBoxSegmentsBruteF( vcg::Box2<MyScalarType> bbox,
|
||||||
std::vector<MySegmentType*> &result)
|
std::vector<MySegmentType*> &result)
|
||||||
{
|
{
|
||||||
|
vcg::Box2<MyScalarType> ibbox;
|
||||||
for (size_t i=0;i<AllocatedSeg.size();i++)
|
for (size_t i=0;i<AllocatedSeg.size();i++)
|
||||||
{
|
{
|
||||||
if (!AllocatedSeg[i].BBox().Collide(bbox))continue;
|
AllocatedSeg[i].GetBBox(ibbox);
|
||||||
|
if (!ibbox.Collide(bbox)) continue;
|
||||||
result.push_back(&AllocatedSeg[i]);
|
result.push_back(&AllocatedSeg[i]);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,15 +1,7 @@
|
||||||
######################################################################
|
include(../common.pri)
|
||||||
# Automatically generated by qmake (2.00a) ven 24. giu 14:14:20 2005
|
TARGET = space_index_2d
|
||||||
######################################################################
|
|
||||||
|
|
||||||
TARGET = test_hash2d
|
|
||||||
DEPENDPATH += .
|
|
||||||
INCLUDEPATH += . ../../..
|
|
||||||
CONFIG += console stl
|
|
||||||
TEMPLATE = app
|
|
||||||
HEADERS += ../../../vcg/space/index/grid_static_ptr2d.h\
|
HEADERS += ../../../vcg/space/index/grid_static_ptr2d.h\
|
||||||
../../../vcg/space/index/closest2d.h\
|
../../../vcg/space/index/closest2d.h\
|
||||||
../../../vcg/space/index/space_iterators2d.h\
|
../../../vcg/space/index/space_iterators2d.h\
|
||||||
../../../vcg/space/index/grid_closest2d.h
|
../../../vcg/space/index/grid_closest2d.h
|
||||||
|
SOURCES += space_index_2d.cpp
|
||||||
SOURCES += test_hash2d.cpp
|
|
||||||
|
|
|
@ -85,7 +85,8 @@ private:
|
||||||
OBJITER IteObj;
|
OBJITER IteObj;
|
||||||
for (IteObj=_oBegin;IteObj!=_oEnd;IteObj++)
|
for (IteObj=_oBegin;IteObj!=_oEnd;IteObj++)
|
||||||
{
|
{
|
||||||
Box2<ScalarType> Box2D=(*IteObj).BBox();
|
Box2<ScalarType> Box2D;
|
||||||
|
(*IteObj).GetBBox(Box2D);
|
||||||
|
|
||||||
//get index of intersected cells
|
//get index of intersected cells
|
||||||
Point2i minIndex=this->GridP(Box2D.min);
|
Point2i minIndex=this->GridP(Box2D.min);
|
||||||
|
@ -134,11 +135,14 @@ public:
|
||||||
inline void Set(const OBJITER & _oBegin,
|
inline void Set(const OBJITER & _oBegin,
|
||||||
const OBJITER & _oEnd)
|
const OBJITER & _oEnd)
|
||||||
{
|
{
|
||||||
Box2x bbox;
|
Box2x bbox,ibbox;
|
||||||
|
|
||||||
OBJITER IteObj;
|
OBJITER IteObj;
|
||||||
for (IteObj=_oBegin;IteObj!=_oEnd;IteObj++)
|
for (IteObj=_oBegin;IteObj!=_oEnd;IteObj++)
|
||||||
bbox.Add((*IteObj).BBox());
|
{
|
||||||
|
(*IteObj).GetBBox(ibbox);
|
||||||
|
bbox.Add(ibbox);
|
||||||
|
}
|
||||||
|
|
||||||
ScalarType diag=bbox.Diag();
|
ScalarType diag=bbox.Diag();
|
||||||
bbox.Offset(diag*0.01);
|
bbox.Offset(diag*0.01);
|
||||||
|
|
|
@ -91,12 +91,10 @@ public:
|
||||||
inline PointType MidPoint( ) const
|
inline PointType MidPoint( ) const
|
||||||
{ return ( _p0 + _p1) / ScalarType(2.0) ; }
|
{ return ( _p0 + _p1) / ScalarType(2.0) ; }
|
||||||
/// return the bounding box
|
/// return the bounding box
|
||||||
inline Box2<ScalarType> BBox( ) const
|
inline void GetBBox( Box2<ScalarType> &t) const
|
||||||
{
|
{
|
||||||
Box2<ScalarType> t;
|
t.Set(_p0);
|
||||||
t.Add(_p0);
|
|
||||||
t.Add(_p1);
|
t.Add(_p1);
|
||||||
return t;
|
|
||||||
}
|
}
|
||||||
/// returns segment length
|
/// returns segment length
|
||||||
ScalarType Length()
|
ScalarType Length()
|
||||||
|
|
Loading…
Reference in New Issue