kybalg::ProbPolFusion Class Reference

#include <ProbMultiRegCam3DStr.h>

Inheritance diagram for kybalg::ProbPolFusion:

MIPObject

List of all members.

Public Member Functions

 ProbPolFusion ()
 Default constructor.
 ProbPolFusion (Triangle *tria, int expMth)
 Constructor with only one triangle.
 ~ProbPolFusion ()
 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 ()
 Delete the last triangle in the list.
void deleteBifConflicts (int pos, int posAt, int idNew)
 Delete all the triangles that conflict with that stored in position pos.
void deleteBifConflictsOpt (int pos, int idNew)
 Delete all the triangles that conflict with that stored in position pos.
int getSize ()
 Return the actual number of the triangle stored in this polymorph.
int getQueueSize ()
 Return the actual number of the triangle stored in the queue of the polymorph.
void getIds (vector< int > &ids)
 Return the list of ids actually in the polimorph.
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 of the polymorph at 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 ()
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)
 Deletes an item of scale factor.
void deleteLastScaleF ()
void setRotoTrasl (int pos, MIPMatrix rt)
 Set a rototranslation.
MIPMatrix getRotoTrasl (int pos)
 Get a rototranslation.
void deleteRotoTrasl (int pos)
 Deletes an item in te rototranslation list.
void deleteLastRotoTrasl ()
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 its index.
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)
 Method to check if there is a bifurcation.
void insertPoints (Triangle *tria, int &numInt4)
 Insert intersection by three points.
void insertPointsNoIn (Triangle *tria, int &numInt4, MIPMatrix *&matrixPointer, Decimal actualScale, vector< Position3D > &intToInsert, int &incrRatInThree)
 Insert intersection by three points for the expandPolNoIn.
int getNInThree (int pos)
 Return the number of intersection by three until the pos-th triangle in list.
Position3D getIntThree (int pos)
 Return the pos-th item of the list of intersection by three.
Position3D getLastIntThree ()
 Return the last item in the list of intersection by three.
void deleteIntThree (int pos)
 Delete an item in the intersection by three list.
void deleteLastIntThree ()
 Delete the last item in the intersection by three list.
void insertPointIntThree (Position3D ip, int pos)
 Insert a point in the list of intersection by three points.
bool expandPol (int myId, vector< ProbPolFusion * > actualSol, vector< ProbPolFusion * > &bifProbPolFusion, Decimal linThr, map< int, vector< Pose3D > > *likelihood, vector< int > activeLikelihoods)
 Insert a point in the list of intersection by three points.
bool expandPolOpt (int myId, vector< ProbPolFusion * > actualSol, vector< ProbPolFusion * > &bifProbPolFusion, Decimal linThr, map< int, vector< Pose3D > > *likelihood, vector< int > activeLikelihoods, int &maxBifSize)
 New version of expandPol, based on vertices.
bool expandPolNoIn (int myId, vector< ProbPolFusion * > actualSol, vector< ProbPolFusion * > &bifProbPolFusion, Decimal linThr, map< int, vector< Pose3D > > *likelihood, vector< int > activeLikelihoods, int &maxBifSize)
 New version of the expandPolOpt method in which ther is no insertion of the new vertex.
bool checkBif (PosId3D vertex, Decimal thr, int myId)
 Verify if there is a bifurcation.
string print (int opt=0)
 Print all the solutions.
ProbPolFusionoperator= (ProbPolFusion &A)
 Operator assignment =.
Decimal computeProbability (Pose3D measure, int id, map< int, vector< Pose3D > > *&likelihood)
 Compute the probability that a given measures is near to the gaussian particles distribution.
void setRatingVertex (int rating)
 Set the ratingVertex of the polimorph.
int getRatingVertex ()
 Get the actual ratingVertex of the polimorph.
void growRatingVertex ()
 Grow the ratingVertex of one.
void decreaseRatingVertex ()
 Decrease the ratingVertex of one.
void setRatingInThree (int rating)
 Set the ratingInThree of the polimorph.
int getRatingInThree ()
 Get the actual ratingInThree of the polimorph.
void growRatingInThree ()
 Grow the ratingInThree of one.
void decreaseRatingInThree ()
 Decrease the ratingInThree of one.
void setIntFourNum (int pos, int val)
 Set the number of intersection by four for a triangle in position pos-1.
int getIntFourNum (int pos)
 Get the number of intersection by four in position pos-1.
int getLastIntFourNum ()
 Get the last number of intersection by four.
void deleteLastIntFourNum ()
 Delete the last number of intersection by four.
void selectScale (Decimal &bestScale, Decimal &bestProb, map< int, vector< Pose3D > > *&likelihood, vector< int > &activeLikelihoods, vector< int > &idsV)
 Select a scale in an interval.
void setExpandMethod (int expMth)
 Set the expansion method.
string getObjectName () const
 Returns the object name.


Constructor & Destructor Documentation

kybalg::ProbPolFusion::ProbPolFusion (  ) 

Default constructor.

kybalg::ProbPolFusion::ProbPolFusion ( Triangle tria,
int  expMth 
)

Constructor with only one triangle.

kybalg::ProbPolFusion::~ProbPolFusion (  ) 

Default destructor.


Member Function Documentation

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

Return a tringle in position pos.

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

Set a triangle in position pos.

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

Delete a triangle in the list.

void kybalg::ProbPolFusion::deleteLastTriangle (  ) 

Delete the last triangle in the list.

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

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

void kybalg::ProbPolFusion::deleteBifConflictsOpt ( int  pos,
int  idNew 
)

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

int kybalg::ProbPolFusion::getSize (  ) 

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

int kybalg::ProbPolFusion::getQueueSize (  ) 

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

void kybalg::ProbPolFusion::getIds ( vector< int > &  ids  ) 

Return the list of ids actually in the polimorph.

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

Insert a new vertex of the polymorph.

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

Get the vertex of the polymorph at position pos.

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

Set the vertex of the polymorph at position pos.

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

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

int kybalg::ProbPolFusion::queueSize (  ) 

Return the number of triangles in queue.

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

Delete a item in the queue list.

void kybalg::ProbPolFusion::deleteQueueLastTriangle (  ) 

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

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

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

Add a new item in the scale vector.

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

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

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

Deletes an item of scale factor.

void kybalg::ProbPolFusion::deleteLastScaleF (  ) 

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

Set a rototranslation.

MIPMatrix kybalg::ProbPolFusion::getRotoTrasl ( int  pos  ) 

Get a rototranslation.

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

Deletes an item in te rototranslation list.

void kybalg::ProbPolFusion::deleteLastRotoTrasl (  ) 

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

Insert an orientation in the polimorph.

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

Get an orientation from the polimorph.

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

Set a ori in the list of orientation.

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

Delete an item in the list of orientation.

void kybalg::ProbPolFusion::deleteLastOri (  ) 

Delete the last orientation in the list.

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

Insert a new triangle in the polimorph.

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

Search a vertex in the list.

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

Search a vertex in the list and return its index.

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

Delete a vertex in the list.

void kybalg::ProbPolFusion::deleteLastVertex (  ) 

Delete the last vertex in the list.

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

Method to check if there is a bifurcation.

void kybalg::ProbPolFusion::insertPoints ( Triangle tria,
int &  numInt4 
)

Insert intersection by three points.

void kybalg::ProbPolFusion::insertPointsNoIn ( Triangle tria,
int &  numInt4,
MIPMatrix *&  matrixPointer,
Decimal  actualScale,
vector< Position3D > &  intToInsert,
int &  incrRatInThree 
)

Insert intersection by three points for the expandPolNoIn.

int kybalg::ProbPolFusion::getNInThree ( int  pos  ) 

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

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

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

Position3D kybalg::ProbPolFusion::getLastIntThree (  ) 

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

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

Delete an item in the intersection by three list.

void kybalg::ProbPolFusion::deleteLastIntThree (  ) 

Delete the last item in the intersection by three list.

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

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

bool kybalg::ProbPolFusion::expandPol ( int  myId,
vector< ProbPolFusion * >  actualSol,
vector< ProbPolFusion * > &  bifProbPolFusion,
Decimal  linThr,
map< int, vector< Pose3D > > *  likelihood,
vector< int >  activeLikelihoods 
)

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

bool kybalg::ProbPolFusion::expandPolOpt ( int  myId,
vector< ProbPolFusion * >  actualSol,
vector< ProbPolFusion * > &  bifProbPolFusion,
Decimal  linThr,
map< int, vector< Pose3D > > *  likelihood,
vector< int >  activeLikelihoods,
int &  maxBifSize 
)

New version of expandPol, based on vertices.

bool kybalg::ProbPolFusion::expandPolNoIn ( int  myId,
vector< ProbPolFusion * >  actualSol,
vector< ProbPolFusion * > &  bifProbPolFusion,
Decimal  linThr,
map< int, vector< Pose3D > > *  likelihood,
vector< int >  activeLikelihoods,
int &  maxBifSize 
)

New version of the expandPolOpt method in which ther is no insertion of the new vertex.

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

Verify if there is a bifurcation.

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

Print all the solutions.

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

Operator assignment =.

Decimal kybalg::ProbPolFusion::computeProbability ( Pose3D  measure,
int  id,
map< int, vector< Pose3D > > *&  likelihood 
)

Compute the probability that a given measures is near to the gaussian particles distribution.

void kybalg::ProbPolFusion::setRatingVertex ( int  rating  ) 

Set the ratingVertex of the polimorph.

int kybalg::ProbPolFusion::getRatingVertex (  ) 

Get the actual ratingVertex of the polimorph.

void kybalg::ProbPolFusion::growRatingVertex (  ) 

Grow the ratingVertex of one.

void kybalg::ProbPolFusion::decreaseRatingVertex (  ) 

Decrease the ratingVertex of one.

void kybalg::ProbPolFusion::setRatingInThree ( int  rating  ) 

Set the ratingInThree of the polimorph.

int kybalg::ProbPolFusion::getRatingInThree (  ) 

Get the actual ratingInThree of the polimorph.

void kybalg::ProbPolFusion::growRatingInThree (  ) 

Grow the ratingInThree of one.

void kybalg::ProbPolFusion::decreaseRatingInThree (  ) 

Decrease the ratingInThree of one.

void kybalg::ProbPolFusion::setIntFourNum ( int  pos,
int  val 
)

Set the number of intersection by four for a triangle in position pos-1.

int kybalg::ProbPolFusion::getIntFourNum ( int  pos  ) 

Get the number of intersection by four in position pos-1.

int kybalg::ProbPolFusion::getLastIntFourNum (  ) 

Get the last number of intersection by four.

void kybalg::ProbPolFusion::deleteLastIntFourNum (  ) 

Delete the last number of intersection by four.

void kybalg::ProbPolFusion::selectScale ( Decimal bestScale,
Decimal bestProb,
map< int, vector< Pose3D > > *&  likelihood,
vector< int > &  activeLikelihoods,
vector< int > &  idsV 
)

Select a scale in an interval.

void kybalg::ProbPolFusion::setExpandMethod ( int  expMth  ) 

Set the expansion method.

string kybalg::ProbPolFusion::getObjectName (  )  const [inline, virtual]

Returns the object name.

Implements MIPObject.


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