Entfernung der Funktion Anwesendheit.
This commit is contained in:
parent
06a33deceb
commit
172b262e2b
3 changed files with 28 additions and 43 deletions
|
@ -218,7 +218,6 @@ void KV::PrintPrimImplikanten()
|
|||
vector<Implikant_localisation*>* kullers = currentPI->PI_groupCollection[j];
|
||||
uint X1 = -1, X2 = 0, Y1 = -1, Y2 = 0;
|
||||
|
||||
|
||||
|
||||
for (vector<Implikant_localisation*>::iterator it = kullers->begin(); it < kullers->end(); it++)
|
||||
{
|
||||
|
@ -234,25 +233,24 @@ void KV::PrintPrimImplikanten()
|
|||
Y1 = min(Y1, y1);
|
||||
Y2 = max(Y2, y2);
|
||||
|
||||
if (currentPI->name.find("|") != string::npos)
|
||||
{
|
||||
this->Rechteck(X1 + 12, Y1 + 9, X2 - 12, Y2 - 9, RED, TRANS);
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
if (currentPI->name.find("|") != string::npos)
|
||||
{
|
||||
this->Rechteck(X1 + 12, Y1 + 9, X2 - 12, Y2 - 9, RED, TRANS);
|
||||
}
|
||||
else
|
||||
{
|
||||
uint random = rand() % 10;
|
||||
X1 += random;
|
||||
X2 -= random;
|
||||
Y1 += random;
|
||||
Y2 -= random;
|
||||
if (currentPI->implikanten.size() == 1)
|
||||
this->Rechteck(X1, Y1, X2, Y2, GREEN, TRANS);
|
||||
else
|
||||
{
|
||||
uint random = rand() % 10;
|
||||
X1 += random;
|
||||
X2 -= random;
|
||||
Y1 += random;
|
||||
Y2 -= random;
|
||||
if (currentPI->implikanten.size() == 1)
|
||||
this->Rechteck(X1, Y1, X2, Y2, GREEN, TRANS);
|
||||
else
|
||||
this->Rechteck(X1, Y1, X2, Y2, BLUE, TRANS);
|
||||
}
|
||||
|
||||
|
||||
|
||||
this->Rechteck(X1, Y1, X2, Y2, BLUE, TRANS);
|
||||
}
|
||||
|
||||
|
||||
|
|
|
@ -58,23 +58,11 @@ bool PrimImplikantCollection::contains(PrimImplikant* foreign)
|
|||
return false;
|
||||
}
|
||||
|
||||
bool PrimImplikantCollection::Anwesenheit(Implikant_localisation* &I, vector<Implikant_localisation*> &group)
|
||||
{
|
||||
|
||||
for (vector<Implikant_localisation*>::iterator it = group.begin(); it < group.end(); it++)
|
||||
{
|
||||
if ((*it)->i == (I->i))
|
||||
{
|
||||
return true;
|
||||
}
|
||||
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
void PrimImplikantCollection::setgroupCollection1(PrimImplikant* ¤tPI)
|
||||
{
|
||||
vector<Implikant_localisation*>::iterator it1;
|
||||
|
||||
vector<Implikant_localisation*> groupA; // Jede I_vector wird in einem oder in Zwei vectoren
|
||||
vector<Implikant_localisation*> groupB; // zuerst gespaltet.
|
||||
|
||||
|
@ -85,7 +73,7 @@ void PrimImplikantCollection::setgroupCollection1(PrimImplikant* ¤tPI)
|
|||
|
||||
|
||||
|
||||
for (it1 = currentPI->I_Vector.begin(); it1 < currentPI->I_Vector.end(); it1++)
|
||||
for (vector<Implikant_localisation*>::iterator it1 = currentPI->I_Vector.begin(); it1 < currentPI->I_Vector.end(); it1++)
|
||||
{
|
||||
if ((((*it1)->h) == (numVarY / 2) - 1) || (((*it1)->h) == (numVarY / 2)))
|
||||
{
|
||||
|
@ -98,20 +86,20 @@ void PrimImplikantCollection::setgroupCollection1(PrimImplikant* ¤tPI)
|
|||
|
||||
if (Linie_mitte) // Wenn wahr ist. ES geht um Linie_mitte_Y
|
||||
{
|
||||
for (it1 = currentPI->I_Vector.begin(); it1 < currentPI->I_Vector.end(); it1++)
|
||||
/*for (it1 = currentPI->I_Vector.begin(); it1 < currentPI->I_Vector.end(); it1++)
|
||||
{
|
||||
groupA.push_back(*it1);
|
||||
}
|
||||
|
||||
currentPI->PI_groupCollection.push_back(&groupA);
|
||||
*/
|
||||
currentPI->PI_groupCollection.push_back(&(currentPI->I_Vector));
|
||||
Linie_mitte = 0;
|
||||
}
|
||||
else
|
||||
{
|
||||
for (it1 = currentPI->I_Vector.begin(); it1 < currentPI->I_Vector.end(); it1++)
|
||||
for (vector<Implikant_localisation*>::iterator it1 = currentPI->I_Vector.begin(); it1 < currentPI->I_Vector.end(); it1++)
|
||||
{
|
||||
|
||||
if (((*it1)->h < (numVarY / 2) - 1)) // die Implikanten, deren h <= numVary/2 -1 sind im groupA
|
||||
if ((*it1)->h < ((numVarY / 2) - 1)) // die Implikanten, deren h <= numVary/2 -1 sind im groupA
|
||||
{ // gespeichert.
|
||||
|
||||
groupA.push_back(*it1);
|
||||
|
@ -142,7 +130,6 @@ void PrimImplikantCollection::setgroupCollection2(PrimImplikant* ¤tPI, vec
|
|||
{
|
||||
|
||||
vector<Implikant_localisation*> hilfVec1, hilfVec2;
|
||||
vector<Implikant_localisation*>::iterator it1;
|
||||
uint numVarX = (uint)floor(dimension / 2.0f);
|
||||
static int Linie_mitte; // Zustand 0--> wird w überprüft im Vector
|
||||
// Zustand 1 oder >1 -->wird w überprüft im Vector.
|
||||
|
@ -150,7 +137,7 @@ void PrimImplikantCollection::setgroupCollection2(PrimImplikant* ¤tPI, vec
|
|||
|
||||
|
||||
|
||||
for (it1 = group.begin(); it1 < group.end(); it1++)
|
||||
for (vector<Implikant_localisation*>::iterator it1 = group.begin(); it1 < group.end(); it1++)
|
||||
{
|
||||
if ((((*it1)->h) == (numVarX / 2) - 1) || (((*it1)->h) == (numVarX / 2)))
|
||||
{
|
||||
|
@ -169,10 +156,10 @@ void PrimImplikantCollection::setgroupCollection2(PrimImplikant* ¤tPI, vec
|
|||
}
|
||||
else
|
||||
{
|
||||
for (it1 = group.begin(); it1 < group.end(); it1++)
|
||||
for (vector<Implikant_localisation*>::iterator it1 = group.begin(); it1 < group.end(); it1++)
|
||||
{
|
||||
|
||||
if (((*it1)->w < (numVarX / 2) - 1)) // die Implikanten, deren w <= numVarX/2 -1 sind im groupA
|
||||
if ((*it1)->w < ((numVarX / 2) - 1)) // die Implikanten, deren w <= numVarX/2 -1 sind im groupA
|
||||
{ // gespeichert. wenn w größer, dann wird im hilfVec2 gespeichert
|
||||
|
||||
hilfVec1.push_back(*it1);
|
||||
|
|
|
@ -24,7 +24,7 @@ public:
|
|||
bool contains(PrimImplikant* foreign);
|
||||
void setgroupCollection1(PrimImplikant* ¤tPI);
|
||||
void setgroupCollection2(PrimImplikant* ¤tPI,vector<Implikant_localisation*> &group);
|
||||
bool Anwesenheit(Implikant_localisation* &I, vector<Implikant_localisation*> &group);
|
||||
|
||||
|
||||
void Dispose();
|
||||
|
||||
|
|
Loading…
Reference in a new issue