#include <ProbMultiRegCam3DStr.h>
Public Member Functions | |
| PolFusion () | |
| Default constructor. | |
| PolFusion (Triangle *tria) | |
| Constructor with only one triangle. | |
| ~PolFusion () | |
| Default destructor. | |
| Triangle * | getTriangle (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. | |
| PosId3D * | searchVertex (int id) |
| Search a vertex in the list. | |
| PosId3D * | searchVertex (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. | |
| PolFusion & | operator= (PolFusion &A) |
| Operator assignment =. | |
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
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| kybalg::PolFusion::PolFusion | ( | ) |
Default constructor.
| kybalg::PolFusion::PolFusion | ( | Triangle * | tria | ) |
Constructor with only one triangle.
| kybalg::PolFusion::~PolFusion | ( | ) |
Default destructor.
| 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.
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.
Verify if there is a bifurcation.
| string kybalg::PolFusion::print | ( | int | opt = 0 |
) |
Print all the solutions.
1.5.6