#include <MultiRegCamStr.h>
Public Member Functions | |
PolFusion () | |
Default constructor. | |
PolFusion (Triangle *tria) | |
Constructor with only one triangle. | |
~PolFusion () | |
Default destructor. | |
Triangle * | getTriangle (int pos) |
Returns a tringle in position pos. | |
void | setTriangle (int pos, Triangle *tria) |
Set a triangle in position pos. | |
void | deleteTriangle (int pos) |
Deletes a triangle in the list. | |
void | deleteLastTriangle () |
void | deleteBifConflicts (int pos, int posAt, int idNew) |
Deletes all the triangles that conflicts with that stored in position pos. | |
int | getSize () |
Set new values in the matrix. | |
void | insertVertex (PosId vertex) |
Insert a new vertex of the polymorph. | |
PosId | getVertex (int pos) |
Get the vertex of the polymorph at position pos. | |
void | setVertex (int pos, PosId vertex) |
void | setQueue (Triangle *queue) |
Insert a triangle in the queue in order of the number of intersection by three. | |
int | queueSize () |
Returns the number of triangles in queue. | |
void | deleteQueueTriangle (int pos) |
Deletes 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. | |
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) |
Deletes an item in the list of orientation. | |
void | deleteLastOri () |
void | insertTriangle (Triangle *tria, int myId, int id1, int id2) |
Insert a new triangle in the polimorph. | |
PosId * | searchVertex (int id) |
search a vertex in the list | |
PosId * | searchVertex (int id, int &posAt) |
void | deleteVertex (int pos) |
Delete a vertex in the list. | |
void | deleteLastVertex () |
int | searchBif (PosId vertex, int &posAt, Decimal thr) |
Method to 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. | |
Position | getIntThree (int pos) |
Returns the pos-th item of the list of intersection by three. | |
Position | 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 () |
void | insertPointIntThree (Position 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) |
bool | checkBif (PosId 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 =. |
MipAlgorithms::PolFusion::PolFusion | ( | ) |
Default constructor.
MipAlgorithms::PolFusion::PolFusion | ( | Triangle * | tria | ) |
Constructor with only one triangle.
MipAlgorithms::PolFusion::~PolFusion | ( | ) |
Default destructor.
Triangle * MipAlgorithms::PolFusion::getTriangle | ( | int | pos | ) |
Returns a tringle in position pos.
void MipAlgorithms::PolFusion::setTriangle | ( | int | pos, | |
Triangle * | tria | |||
) |
Set a triangle in position pos.
void MipAlgorithms::PolFusion::deleteTriangle | ( | int | pos | ) |
Deletes a triangle in the list.
void MipAlgorithms::PolFusion::deleteLastTriangle | ( | ) |
void MipAlgorithms::PolFusion::deleteBifConflicts | ( | int | pos, | |
int | posAt, | |||
int | idNew | |||
) |
Deletes all the triangles that conflicts with that stored in position pos.
int MipAlgorithms::PolFusion::getSize | ( | ) |
Set new values in the matrix.
Returns the actual number of the triangle stored in this polymorph
void MipAlgorithms::PolFusion::insertVertex | ( | PosId | vertex | ) |
Insert a new vertex of the polymorph.
PosId MipAlgorithms::PolFusion::getVertex | ( | int | pos | ) |
Get the vertex of the polymorph at position pos.
void MipAlgorithms::PolFusion::setVertex | ( | int | pos, | |
PosId | vertex | |||
) |
void MipAlgorithms::PolFusion::setQueue | ( | Triangle * | queue | ) |
Insert a triangle in the queue in order of the number of intersection by three.
int MipAlgorithms::PolFusion::queueSize | ( | ) |
Returns the number of triangles in queue.
void MipAlgorithms::PolFusion::deleteQueueTriangle | ( | int | pos | ) |
Deletes a item in the queue list.
void MipAlgorithms::PolFusion::deleteQueueLastTriangle | ( | ) |
void MipAlgorithms::PolFusion::setScale | ( | int | i, | |
Decimal | scale | |||
) |
Set the scale factor of the (i+1)-th triangle in list.
void MipAlgorithms::PolFusion::setScale | ( | Decimal | scale | ) |
Add a new item in the scale vector.
Decimal MipAlgorithms::PolFusion::getScale | ( | int | i | ) |
Get the (i+1)-th scale factor.
void MipAlgorithms::PolFusion::deleteScaleF | ( | int | pos | ) |
Deletes an item of scale factor.
void MipAlgorithms::PolFusion::deleteLastScaleF | ( | ) |
void MipAlgorithms::PolFusion::setRotoTrasl | ( | int | pos, | |
MIPMatrix | rt | |||
) |
Set a rototranslation.
void MipAlgorithms::PolFusion::deleteRotoTrasl | ( | int | pos | ) |
Deletes an item in te rototranslation list.
void MipAlgorithms::PolFusion::deleteLastRotoTrasl | ( | ) |
void MipAlgorithms::PolFusion::insertOri | ( | Decimal | ori | ) |
Insert an orientation in the polimorph.
Decimal MipAlgorithms::PolFusion::getOri | ( | int | pos | ) |
Get an orientation from the polimorph.
void MipAlgorithms::PolFusion::setOri | ( | int | pos, | |
Angle | ori | |||
) |
Set a ori in the list of orientation.
void MipAlgorithms::PolFusion::deleteOri | ( | int | pos | ) |
Deletes an item in the list of orientation.
void MipAlgorithms::PolFusion::deleteLastOri | ( | ) |
void MipAlgorithms::PolFusion::insertTriangle | ( | Triangle * | tria, | |
int | myId, | |||
int | id1, | |||
int | id2 | |||
) |
Insert a new triangle in the polimorph.
PosId * MipAlgorithms::PolFusion::searchVertex | ( | int | id | ) |
search a vertex in the list
PosId * MipAlgorithms::PolFusion::searchVertex | ( | int | id, | |
int & | posAt | |||
) |
void MipAlgorithms::PolFusion::deleteVertex | ( | int | pos | ) |
Delete a vertex in the list.
void MipAlgorithms::PolFusion::deleteLastVertex | ( | ) |
Method to check if there is a bifurcation.
void MipAlgorithms::PolFusion::insertPoints | ( | Triangle * | tria | ) |
Insert intersection by three points.
int MipAlgorithms::PolFusion::getNInThree | ( | int | pos | ) |
Returns the number of intersection by three until the pos-th triangle in list.
Position MipAlgorithms::PolFusion::getIntThree | ( | int | pos | ) |
Returns the pos-th item of the list of intersection by three.
Position MipAlgorithms::PolFusion::getLastIntThree | ( | ) |
Returns the last item in the list of intersection by three.
void MipAlgorithms::PolFusion::deleteIntThree | ( | int | pos | ) |
Deletes an item in the intersection by three list.
void MipAlgorithms::PolFusion::deleteLastIntThree | ( | ) |
void MipAlgorithms::PolFusion::insertPointIntThree | ( | Position | ip, | |
int | pos | |||
) |
Insert a point in the list of intersection by three points.
bool MipAlgorithms::PolFusion::expandPol | ( | int | myId, | |
vector< PolFusion * > | actualSol, | |||
vector< PolFusion * > & | bifPolFusion, | |||
Decimal | linThr | |||
) |
Verify if there is a bifurcation.
string MipAlgorithms::PolFusion::print | ( | int | opt = 0 |
) |
Print all the solutions.