#include <autoalign_4pcs.h>
Classes | |
struct | CandiType |
struct | Couple |
struct | EPoint |
struct | Parameters |
class | PFace |
class | PMesh |
class | PUsedTypes |
class | PVertex |
Public Types | |
typedef MeshType::CoordType | CoordType |
typedef vcg::Point4 < vcg::Point3< ScalarType > > | FourPoints |
typedef vcg::GridStaticPtr < typename PMesh::VertexType, ScalarType > | GridType |
typedef MeshType::ScalarType | ScalarType |
typedef MeshType::VertexIterator | VertexIterator |
typedef MeshType::VertexType | VertexType |
Public Member Functions | |
bool | Align (int L, vcg::Matrix44f &result, AACb *cb=NULL) |
void | FinishDebug () |
void | Init (MeshType &_P, MeshType &_Q) |
parameters | |
void | InitDebug (const char *name1, const char *name2) |
Public Attributes | |
std::vector< vcg::Matrix44f > | allTr |
FILE * | db |
int | n_base |
char | namemesh1 [255] |
char | namemesh2 [255] |
Parameters | prs |
Private Member Functions | |
void | ComputeR1R2 (ScalarType d1, ScalarType d2) |
void | EvaluateAlignment (CandiType &fp) |
int | EvaluateSample (CandiType &fp, CoordType &tp, CoordType &np, const float &angle) |
bool | FindCongruent () |
void | IntersectionLineLine (const CoordType &x1, const CoordType &x2, const CoordType &x3, const CoordType &x4, CoordType &x) |
bool | IsTransfCongruent (FourPoints fp, vcg::Matrix44< ScalarType > &mat, float &trerr) |
bool | SelectCoplanarBase () |
void | TestAlignment (CandiType &fp) |
Private Attributes | |
FourPoints | B |
ScalarType | Bangle |
std::vector< FourPoints > | bases |
std::vector< VertexType * > | ExtB [4] |
PMesh | Invr |
int | iwinner |
std::vector< int > | mapsub |
MeshType * | P |
MeshType * | Q |
ScalarType | r1 |
std::vector< Couple > | R1 |
ScalarType | r2 |
ScalarType | radius |
ScalarType | side |
std::vector< VertexType * > | subsetP |
std::vector< CandiType > | U |
GridType * | ugrid |
vcg::GridStaticPtr< typename MeshType::VertexType, ScalarType > | ugridP |
vcg::GridStaticPtr< typename MeshType::VertexType, ScalarType > | ugridQ |
CandiType | winner |
Definition at line 58 of file autoalign_4pcs.h.
typedef MeshType::CoordType vcg::tri::FourPCS< MeshType >::CoordType |
Definition at line 75 of file autoalign_4pcs.h.
typedef vcg::Point4< vcg::Point3<ScalarType> > vcg::tri::FourPCS< MeshType >::FourPoints |
Definition at line 78 of file autoalign_4pcs.h.
typedef vcg::GridStaticPtr<typename PMesh::VertexType, ScalarType > vcg::tri::FourPCS< MeshType >::GridType |
Definition at line 79 of file autoalign_4pcs.h.
typedef MeshType::ScalarType vcg::tri::FourPCS< MeshType >::ScalarType |
Definition at line 74 of file autoalign_4pcs.h.
typedef MeshType::VertexIterator vcg::tri::FourPCS< MeshType >::VertexIterator |
Definition at line 76 of file autoalign_4pcs.h.
typedef MeshType::VertexType vcg::tri::FourPCS< MeshType >::VertexType |
Definition at line 77 of file autoalign_4pcs.h.
bool vcg::tri::FourPCS< MeshType >::Align | ( | int | L, | |
vcg::Matrix44f & | result, | |||
AACb * | cb = NULL | |||
) | [inline] |
Definition at line 608 of file autoalign_4pcs.h.
void vcg::tri::FourPCS< MeshType >::ComputeR1R2 | ( | ScalarType | d1, | |
ScalarType | d2 | |||
) | [inline, private] |
Definition at line 400 of file autoalign_4pcs.h.
void vcg::tri::FourPCS< MeshType >::EvaluateAlignment | ( | CandiType & | fp | ) | [inline, private] |
Definition at line 580 of file autoalign_4pcs.h.
int vcg::tri::FourPCS< MeshType >::EvaluateSample | ( | CandiType & | fp, | |
CoordType & | tp, | |||
CoordType & | np, | |||
const float & | angle | |||
) | [inline, private] |
Definition at line 549 of file autoalign_4pcs.h.
bool vcg::tri::FourPCS< MeshType >::FindCongruent | ( | ) | [inline, private] |
Definition at line 428 of file autoalign_4pcs.h.
void vcg::tri::FourPCS< MeshType >::FinishDebug | ( | ) | [inline] |
Definition at line 200 of file autoalign_4pcs.h.
void vcg::tri::FourPCS< MeshType >::Init | ( | MeshType & | _P, | |
MeshType & | _Q | |||
) | [inline] |
parameters
Definition at line 221 of file autoalign_4pcs.h.
void vcg::tri::FourPCS< MeshType >::InitDebug | ( | const char * | name1, | |
const char * | name2 | |||
) | [inline] |
Definition at line 193 of file autoalign_4pcs.h.
void vcg::tri::FourPCS< MeshType >::IntersectionLineLine | ( | const CoordType & | x1, | |
const CoordType & | x2, | |||
const CoordType & | x3, | |||
const CoordType & | x4, | |||
CoordType & | x | |||
) | [inline, private] |
Definition at line 118 of file autoalign_4pcs.h.
bool vcg::tri::FourPCS< MeshType >::IsTransfCongruent | ( | FourPoints | fp, | |
vcg::Matrix44< ScalarType > & | mat, | |||
float & | trerr | |||
) | [inline, private] |
Definition at line 374 of file autoalign_4pcs.h.
bool vcg::tri::FourPCS< MeshType >::SelectCoplanarBase | ( | ) | [inline, private] |
Definition at line 265 of file autoalign_4pcs.h.
void vcg::tri::FourPCS< MeshType >::TestAlignment | ( | CandiType & | fp | ) | [inline, private] |
Definition at line 594 of file autoalign_4pcs.h.
std::vector<vcg::Matrix44f> vcg::tri::FourPCS< MeshType >::allTr |
Definition at line 189 of file autoalign_4pcs.h.
FourPoints vcg::tri::FourPCS< MeshType >::B [private] |
Definition at line 150 of file autoalign_4pcs.h.
ScalarType vcg::tri::FourPCS< MeshType >::Bangle [private] |
Definition at line 157 of file autoalign_4pcs.h.
std::vector<FourPoints> vcg::tri::FourPCS< MeshType >::bases [private] |
Definition at line 151 of file autoalign_4pcs.h.
FILE* vcg::tri::FourPCS< MeshType >::db |
Definition at line 190 of file autoalign_4pcs.h.
std::vector<VertexType*> vcg::tri::FourPCS< MeshType >::ExtB[4] [private] |
Definition at line 153 of file autoalign_4pcs.h.
PMesh vcg::tri::FourPCS< MeshType >::Invr [private] |
Definition at line 144 of file autoalign_4pcs.h.
int vcg::tri::FourPCS< MeshType >::iwinner [private] |
Definition at line 148 of file autoalign_4pcs.h.
std::vector<int> vcg::tri::FourPCS< MeshType >::mapsub [private] |
Definition at line 141 of file autoalign_4pcs.h.
int vcg::tri::FourPCS< MeshType >::n_base |
Definition at line 192 of file autoalign_4pcs.h.
char vcg::tri::FourPCS< MeshType >::namemesh1[255] |
Definition at line 191 of file autoalign_4pcs.h.
char vcg::tri::FourPCS< MeshType >::namemesh2[255] |
Definition at line 191 of file autoalign_4pcs.h.
MeshType* vcg::tri::FourPCS< MeshType >::P [private] |
Definition at line 139 of file autoalign_4pcs.h.
Parameters vcg::tri::FourPCS< MeshType >::prs |
Definition at line 98 of file autoalign_4pcs.h.
MeshType * vcg::tri::FourPCS< MeshType >::Q [private] |
Definition at line 139 of file autoalign_4pcs.h.
ScalarType vcg::tri::FourPCS< MeshType >::r1 [private] |
Definition at line 159 of file autoalign_4pcs.h.
std::vector<Couple > vcg::tri::FourPCS< MeshType >::R1 [private] |
Definition at line 158 of file autoalign_4pcs.h.
ScalarType vcg::tri::FourPCS< MeshType >::r2 [private] |
Definition at line 159 of file autoalign_4pcs.h.
ScalarType vcg::tri::FourPCS< MeshType >::radius [private] |
Definition at line 155 of file autoalign_4pcs.h.
ScalarType vcg::tri::FourPCS< MeshType >::side [private] |
Definition at line 152 of file autoalign_4pcs.h.
std::vector<VertexType*> vcg::tri::FourPCS< MeshType >::subsetP [private] |
Definition at line 154 of file autoalign_4pcs.h.
std::vector< CandiType > vcg::tri::FourPCS< MeshType >::U [private] |
Definition at line 146 of file autoalign_4pcs.h.
GridType* vcg::tri::FourPCS< MeshType >::ugrid [private] |
Definition at line 169 of file autoalign_4pcs.h.
vcg::GridStaticPtr<typename MeshType::VertexType, ScalarType > vcg::tri::FourPCS< MeshType >::ugridP [private] |
Definition at line 171 of file autoalign_4pcs.h.
vcg::GridStaticPtr<typename MeshType::VertexType, ScalarType > vcg::tri::FourPCS< MeshType >::ugridQ [private] |
Definition at line 170 of file autoalign_4pcs.h.
CandiType vcg::tri::FourPCS< MeshType >::winner [private] |
Definition at line 147 of file autoalign_4pcs.h.