kybalg::PolFusion Class Reference

Deterministic polimorph. More...

#include <ProbMultiRegCam3DStr.h>

List of all members.

Public Member Functions

 PolFusion ()
 Default constructor.
 PolFusion (Triangle *tria)
 Constructor with only one triangle.
 ~PolFusion ()
 Default destructor.
TrianglegetTriangle (int pos)
 Return a tringle in position pos.
void setTriangle (int pos, Triangle *tria)
 Set a triangle in position pos.
void deleteTriangle (int pos)
 Delete a triangle in the list.
void deleteLastTriangle ()
void deleteBifConflicts (int pos, int posAt, int idNew)
 Delete all the triangles that conflicts with that stored in position pos.
int getSize ()
 Return the actual number of the triangle stored in this polymorph.
void insertVertex (PosId3D vertex)
 Insert a new vertex of the polymorph.
PosId3D getVertex (int pos)
 Get the vertex of the polymorph at position pos.
void setVertex (int pos, PosId3D vertex)
 Set the vertex in position pos.
void setQueue (Triangle *queue)
 Insert a triangle in the queue in order of the number of intersection by three.
int queueSize ()
 Return the number of triangles in queue.
void deleteQueueTriangle (int pos)
 Delete a item in the queue list.
void deleteQueueLastTriangle ()
 Delete the last triangle in the list.
void setScale (int i, Decimal scale)
 Set the scale factor of the (i+1)-th triangle in list.
void setScale (Decimal scale)
 Add a new item in the scale vector.
Decimal getScale (int i)
 Get the (i+1)-th scale factor.
void deleteScaleF (int pos)
 Delete an item of scale factor.
void deleteLastScaleF ()
 Delete the last scale factor in the list.
void setRotoTrasl (int pos, MIPMatrix rt)
 Set a rototranslation.
void deleteRotoTrasl (int pos)
 Delete an item in the rototranslation list.
void deleteLastRotoTrasl ()
 Delete the rototranslation in the list.
void insertOri (Decimal ori)
 Insert an orientation in the polimorph.
Decimal getOri (int pos)
 Get an orientation from the polimorph.
void setOri (int pos, Angle ori)
 Set a ori in the list of orientation.
void deleteOri (int pos)
 Delete an item in the list of orientation.
void deleteLastOri ()
 Delete the last orientation in the list.
void insertTriangle (Triangle *tria, int myId, int id1, int id2)
 Insert a new triangle in the polimorph.
PosId3DsearchVertex (int id)
 Search a vertex in the list.
PosId3DsearchVertex (int id, int &posAt)
 Search a vertex in the list and return the index position.
void deleteVertex (int pos)
 Delete a vertex in the list.
void deleteLastVertex ()
 Delete the last vertex in the list.
int searchBif (PosId3D vertex, int &posAt, Decimal thr)
 Check if there is a bifurcation.
void insertPoints (Triangle *tria)
 Insert intersection by three points.
int getNInThree (int pos)
 Returns the number of intersection by three until the pos-th triangle in list.
Position3D getIntThree (int pos)
 Returns the pos-th item of the list of intersection by three.
Position3D getLastIntThree ()
 Returns the last item in the list of intersection by three.
void deleteIntThree (int pos)
 Deletes an item in the intersection by three list.
void deleteLastIntThree ()
 Deletes the last triple intersection in the list.
void insertPointIntThree (Position3D ip, int pos)
 Insert a point in the list of intersection by three points.
bool expandPol (int myId, vector< PolFusion * > actualSol, vector< PolFusion * > &bifPolFusion, Decimal linThr)
 Expansion step function.
bool checkBif (PosId3D vertex, Decimal thr, int myId)
 Verify if there is a bifurcation.
string print (int opt=0)
 Print all the solutions.
PolFusionoperator= (PolFusion &A)
 Operator assignment =.


Detailed Description

Deterministic polimorph.

Probabilistic polimorph.

Each polimorph is composed by: a set of triangle, its verteces and orientation, triple intersections, rototranslation between triangles, scaling factor between triangles, all in first triangle reference frame

Author:
Marco Cognetti
Each polimorph is composed by: a set of triangle, its verteces and orientation, triple intersections, rototranslation between triangles, scaling factor between triangles, all in first triangle reference frame and also its rating
Author:
Marco Cognetti

Constructor & Destructor Documentation

kybalg::PolFusion::PolFusion (  ) 

Default constructor.

kybalg::PolFusion::PolFusion ( Triangle tria  ) 

Constructor with only one triangle.

kybalg::PolFusion::~PolFusion (  ) 

Default destructor.


Member Function Documentation

Triangle * kybalg::PolFusion::getTriangle ( int  pos  ) 

Return a tringle in position pos.

void kybalg::PolFusion::setTriangle ( int  pos,
Triangle tria 
)

Set a triangle in position pos.

void kybalg::PolFusion::deleteTriangle ( int  pos  ) 

Delete a triangle in the list.

void kybalg::PolFusion::deleteLastTriangle (  ) 

void kybalg::PolFusion::deleteBifConflicts ( int  pos,
int  posAt,
int  idNew 
)

Delete all the triangles that conflicts with that stored in position pos.

int kybalg::PolFusion::getSize (  ) 

Return the actual number of the triangle stored in this polymorph.

void kybalg::PolFusion::insertVertex ( PosId3D  vertex  ) 

Insert a new vertex of the polymorph.

PosId3D kybalg::PolFusion::getVertex ( int  pos  ) 

Get the vertex of the polymorph at position pos.

void kybalg::PolFusion::setVertex ( int  pos,
PosId3D  vertex 
)

Set the vertex in position pos.

void kybalg::PolFusion::setQueue ( Triangle queue  ) 

Insert a triangle in the queue in order of the number of intersection by three.

int kybalg::PolFusion::queueSize (  ) 

Return the number of triangles in queue.

void kybalg::PolFusion::deleteQueueTriangle ( int  pos  ) 

Delete a item in the queue list.

void kybalg::PolFusion::deleteQueueLastTriangle (  ) 

Delete the last triangle in the list.

void kybalg::PolFusion::setScale ( int  i,
Decimal  scale 
)

Set the scale factor of the (i+1)-th triangle in list.

void kybalg::PolFusion::setScale ( Decimal  scale  ) 

Add a new item in the scale vector.

Decimal kybalg::PolFusion::getScale ( int  i  ) 

Get the (i+1)-th scale factor.

void kybalg::PolFusion::deleteScaleF ( int  pos  ) 

Delete an item of scale factor.

void kybalg::PolFusion::deleteLastScaleF (  ) 

Delete the last scale factor in the list.

void kybalg::PolFusion::setRotoTrasl ( int  pos,
MIPMatrix  rt 
)

Set a rototranslation.

void kybalg::PolFusion::deleteRotoTrasl ( int  pos  ) 

Delete an item in the rototranslation list.

void kybalg::PolFusion::deleteLastRotoTrasl (  ) 

Delete the rototranslation in the list.

void kybalg::PolFusion::insertOri ( Decimal  ori  ) 

Insert an orientation in the polimorph.

Decimal kybalg::PolFusion::getOri ( int  pos  ) 

Get an orientation from the polimorph.

void kybalg::PolFusion::setOri ( int  pos,
Angle  ori 
)

Set a ori in the list of orientation.

void kybalg::PolFusion::deleteOri ( int  pos  ) 

Delete an item in the list of orientation.

void kybalg::PolFusion::deleteLastOri (  ) 

Delete the last orientation in the list.

void kybalg::PolFusion::insertTriangle ( Triangle tria,
int  myId,
int  id1,
int  id2 
)

Insert a new triangle in the polimorph.

PosId3D * kybalg::PolFusion::searchVertex ( int  id  ) 

Search a vertex in the list.

PosId3D * kybalg::PolFusion::searchVertex ( int  id,
int &  posAt 
)

Search a vertex in the list and return the index position.

void kybalg::PolFusion::deleteVertex ( int  pos  ) 

Delete a vertex in the list.

void kybalg::PolFusion::deleteLastVertex (  ) 

Delete the last vertex in the list.

int kybalg::PolFusion::searchBif ( PosId3D  vertex,
int &  posAt,
Decimal  thr 
)

Check if there is a bifurcation.

void kybalg::PolFusion::insertPoints ( Triangle tria  ) 

Insert intersection by three points.

int kybalg::PolFusion::getNInThree ( int  pos  ) 

Returns the number of intersection by three until the pos-th triangle in list.

Position3D kybalg::PolFusion::getIntThree ( int  pos  ) 

Returns the pos-th item of the list of intersection by three.

Position3D kybalg::PolFusion::getLastIntThree (  ) 

Returns the last item in the list of intersection by three.

void kybalg::PolFusion::deleteIntThree ( int  pos  ) 

Deletes an item in the intersection by three list.

void kybalg::PolFusion::deleteLastIntThree (  ) 

Deletes the last triple intersection in the list.

void kybalg::PolFusion::insertPointIntThree ( Position3D  ip,
int  pos 
)

Insert a point in the list of intersection by three points.

bool kybalg::PolFusion::expandPol ( int  myId,
vector< PolFusion * >  actualSol,
vector< PolFusion * > &  bifPolFusion,
Decimal  linThr 
)

Expansion step function.

bool kybalg::PolFusion::checkBif ( PosId3D  vertex,
Decimal  thr,
int  myId 
)

Verify if there is a bifurcation.

string kybalg::PolFusion::print ( int  opt = 0  ) 

Print all the solutions.

PolFusion & kybalg::PolFusion::operator= ( PolFusion A  ) 

Operator assignment =.


The documentation for this class was generated from the following files:

Generated on Mon Feb 20 07:01:10 2017 for MIP by  doxygen 1.5.6