*** empty log message ***
This commit is contained in:
parent
49bcff675e
commit
9125ab4501
|
@ -22,6 +22,9 @@
|
||||||
****************************************************************************/
|
****************************************************************************/
|
||||||
/****************************************************************************
|
/****************************************************************************
|
||||||
$Log: not supported by cvs2svn $
|
$Log: not supported by cvs2svn $
|
||||||
|
Revision 1.3 2004/07/27 09:46:15 cignoni
|
||||||
|
First working version of the LocalOptimization/Simplification Framework
|
||||||
|
|
||||||
Revision 1.1 2004/07/15 12:04:14 ganovelli
|
Revision 1.1 2004/07/15 12:04:14 ganovelli
|
||||||
minor changes
|
minor changes
|
||||||
|
|
||||||
|
@ -58,7 +61,7 @@ class LocalModification
|
||||||
|
|
||||||
public:
|
public:
|
||||||
LocalModification(){};
|
LocalModification(){};
|
||||||
~LocalModification(){};
|
virtual ~LocalModification(){};
|
||||||
|
|
||||||
/// return the type of operation
|
/// return the type of operation
|
||||||
virtual ModifierType IsOfType() = 0 ;
|
virtual ModifierType IsOfType() = 0 ;
|
||||||
|
@ -206,9 +209,9 @@ public:
|
||||||
start=clock();
|
start=clock();
|
||||||
nPerfmormedOps =0;
|
nPerfmormedOps =0;
|
||||||
|
|
||||||
int i=0;
|
|
||||||
while( !GoalReached() && !h.empty())
|
while( !GoalReached() && !h.empty())
|
||||||
{int size = h.size();
|
{
|
||||||
std::pop_heap(h.begin(),h.end());
|
std::pop_heap(h.begin(),h.end());
|
||||||
LocModPtrType locMod = h.back().locModPtr;
|
LocModPtrType locMod = h.back().locModPtr;
|
||||||
h.pop_back();
|
h.pop_back();
|
||||||
|
|
|
@ -44,7 +44,7 @@ class EdgeCollapse
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
/// The tetrahedral mesh type
|
/// The tetrahedral mesh type
|
||||||
typedef typename TRI_MESH_TYPE TriMeshType;
|
typedef TRI_MESH_TYPE TriMeshType;
|
||||||
/// The tetrahedron type
|
/// The tetrahedron type
|
||||||
typedef typename TriMeshType::FaceType FaceType;
|
typedef typename TriMeshType::FaceType FaceType;
|
||||||
/// The vertex type
|
/// The vertex type
|
||||||
|
@ -151,12 +151,12 @@ class EdgeCollapse
|
||||||
const int ADJ_E = TriMeshType::VertexType::NewBitFlag();
|
const int ADJ_E = TriMeshType::VertexType::NewBitFlag();
|
||||||
//enum {ADJ_1= MeshType::VertexType::USER0,
|
//enum {ADJ_1= MeshType::VertexType::USER0,
|
||||||
// ADJ_E= MeshType::VertexType::USER0<<1} ;
|
// ADJ_E= MeshType::VertexType::USER0<<1} ;
|
||||||
const int ALLADJ = ADJ_1|ADJ_E;
|
// const int ALLADJ = ADJ_1|ADJ_E;
|
||||||
const int NOTALLADJ = ~(ADJ_1 | ADJ_E | TriMeshType::VertexType::VISITED);
|
const int NOTALLADJ = ~(ADJ_1 | ADJ_E | TriMeshType::VertexType::VISITED);
|
||||||
const int NOTALLADJ1 = ~(ADJ_E | TriMeshType::VertexType::VISITED);
|
const int NOTALLADJ1 = ~(ADJ_E | TriMeshType::VertexType::VISITED);
|
||||||
|
|
||||||
//EdgePosB<MeshType::face_type::face_base> x;
|
//EdgePosB<MeshType::face_type::face_base> x;
|
||||||
vcg::face::VFIterator<FaceType> x;
|
typename vcg::face::VFIterator<FaceType> x;
|
||||||
// Clear visited and adj flag for all vertices adj to v0;
|
// Clear visited and adj flag for all vertices adj to v0;
|
||||||
for(x.f = pos.V(0)->VFp(), x.z = pos.V(0)->VFi(); x.f!=0; ++x ) {
|
for(x.f = pos.V(0)->VFp(), x.z = pos.V(0)->VFi(); x.f!=0; ++x ) {
|
||||||
x.f->V1(x.z)->Flags() &= NOTALLADJ;
|
x.f->V1(x.z)->Flags() &= NOTALLADJ;
|
||||||
|
@ -204,7 +204,7 @@ class EdgeCollapse
|
||||||
int DoCollapse(PosType & c, Point3<ScalarType> p)
|
int DoCollapse(PosType & c, Point3<ScalarType> p)
|
||||||
{
|
{
|
||||||
FindSets(c);
|
FindSets(c);
|
||||||
VFIVec::iterator i;
|
typename VFIVec::iterator i;
|
||||||
int n_face_del =0 ;
|
int n_face_del =0 ;
|
||||||
|
|
||||||
//set Face Face topology
|
//set Face Face topology
|
||||||
|
@ -278,4 +278,4 @@ class EdgeCollapse
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
Loading…
Reference in New Issue