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]; 
 | 
								vector<Implikant_localisation*>* kullers = currentPI->PI_groupCollection[j]; 
 | 
				
			||||||
			uint X1 = -1, X2 = 0, Y1 = -1, Y2 = 0;
 | 
								uint X1 = -1, X2 = 0, Y1 = -1, Y2 = 0;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
				
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
			for (vector<Implikant_localisation*>::iterator it = kullers->begin(); it < kullers->end(); it++)
 | 
								for (vector<Implikant_localisation*>::iterator it = kullers->begin(); it < kullers->end(); it++)
 | 
				
			||||||
			{
 | 
								{
 | 
				
			||||||
| 
						 | 
					@ -234,25 +233,24 @@ void KV::PrintPrimImplikanten()
 | 
				
			||||||
				Y1 = min(Y1, y1);
 | 
									Y1 = min(Y1, y1);
 | 
				
			||||||
				Y2 = max(Y2, y2);
 | 
									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
 | 
									else
 | 
				
			||||||
				{
 | 
										this->Rechteck(X1, Y1, X2, Y2, BLUE, TRANS);
 | 
				
			||||||
					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);
 | 
					 | 
				
			||||||
				}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
			}
 | 
								}
 | 
				
			||||||
				
 | 
									
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -58,23 +58,11 @@ bool PrimImplikantCollection::contains(PrimImplikant* foreign)
 | 
				
			||||||
	return false;
 | 
						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)
 | 
					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*> groupA;            // Jede I_vector wird in einem oder in Zwei vectoren
 | 
				
			||||||
	vector<Implikant_localisation*> groupB;            //  zuerst gespaltet.
 | 
						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)))
 | 
							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
 | 
						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);
 | 
								groupA.push_back(*it1);
 | 
				
			||||||
		}
 | 
							}
 | 
				
			||||||
 | 
							*/
 | 
				
			||||||
		currentPI->PI_groupCollection.push_back(&groupA);
 | 
							currentPI->PI_groupCollection.push_back(&(currentPI->I_Vector));
 | 
				
			||||||
		Linie_mitte = 0;
 | 
							Linie_mitte = 0;
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
	else
 | 
						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.
 | 
								{                                          // gespeichert.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
				groupA.push_back(*it1);
 | 
									groupA.push_back(*it1);
 | 
				
			||||||
| 
						 | 
					@ -142,7 +130,6 @@ void PrimImplikantCollection::setgroupCollection2(PrimImplikant* ¤tPI, vec
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	vector<Implikant_localisation*> hilfVec1, hilfVec2;
 | 
						vector<Implikant_localisation*> hilfVec1, hilfVec2;
 | 
				
			||||||
	vector<Implikant_localisation*>::iterator it1;
 | 
					 | 
				
			||||||
	uint numVarX = (uint)floor(dimension / 2.0f);
 | 
						uint numVarX = (uint)floor(dimension / 2.0f);
 | 
				
			||||||
	static int Linie_mitte;								// Zustand 0--> wird w überprüft im Vector
 | 
						static int Linie_mitte;								// Zustand 0--> wird w überprüft im Vector
 | 
				
			||||||
	                                                    // Zustand 1 oder >1 -->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)))
 | 
							if ((((*it1)->h) == (numVarX / 2) - 1) || (((*it1)->h) == (numVarX / 2)))
 | 
				
			||||||
		{
 | 
							{
 | 
				
			||||||
| 
						 | 
					@ -169,10 +156,10 @@ void PrimImplikantCollection::setgroupCollection2(PrimImplikant* ¤tPI, vec
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
	else
 | 
						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
 | 
								{                                     // gespeichert. wenn w größer, dann wird im hilfVec2 gespeichert
 | 
				
			||||||
 | 
					
 | 
				
			||||||
				hilfVec1.push_back(*it1);
 | 
									hilfVec1.push_back(*it1);
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -24,7 +24,7 @@ public:
 | 
				
			||||||
	bool contains(PrimImplikant* foreign);
 | 
						bool contains(PrimImplikant* foreign);
 | 
				
			||||||
	void setgroupCollection1(PrimImplikant* ¤tPI);
 | 
						void setgroupCollection1(PrimImplikant* ¤tPI);
 | 
				
			||||||
	void setgroupCollection2(PrimImplikant* ¤tPI,vector<Implikant_localisation*> &group);
 | 
						void setgroupCollection2(PrimImplikant* ¤tPI,vector<Implikant_localisation*> &group);
 | 
				
			||||||
	bool Anwesenheit(Implikant_localisation* &I, vector<Implikant_localisation*> &group);
 | 
						
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	void Dispose();
 | 
						void Dispose();
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
		Loading…
	
		Reference in a new issue