x
This commit is contained in:
		
							parent
							
								
									0b2912bb17
								
							
						
					
					
						commit
						54df760230
					
				
					 5 changed files with 67 additions and 34 deletions
				
			
		
							
								
								
									
										
											BIN
										
									
								
								GDE_3_2008/GDE_3.opensdf.!sync
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								GDE_3_2008/GDE_3.opensdf.!sync
									
									
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							| 
						 | 
				
			
			@ -28,6 +28,7 @@
 | 
			
		|||
    <ConfigurationType>Application</ConfigurationType>
 | 
			
		||||
    <UseOfMfc>Static</UseOfMfc>
 | 
			
		||||
    <CharacterSet>MultiByte</CharacterSet>
 | 
			
		||||
    <PlatformToolset>v100</PlatformToolset>
 | 
			
		||||
  </PropertyGroup>
 | 
			
		||||
  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
 | 
			
		||||
  <ImportGroup Label="ExtensionSettings">
 | 
			
		||||
| 
						 | 
				
			
			@ -58,13 +59,14 @@
 | 
			
		|||
    <ClCompile>
 | 
			
		||||
      <Optimization>Disabled</Optimization>
 | 
			
		||||
      <PreprocessorDefinitions>WIN32;_WINDOWS;_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
 | 
			
		||||
      <MinimalRebuild>true</MinimalRebuild>
 | 
			
		||||
      <MinimalRebuild>false</MinimalRebuild>
 | 
			
		||||
      <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
 | 
			
		||||
      <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
 | 
			
		||||
      <TreatWChar_tAsBuiltInType>true</TreatWChar_tAsBuiltInType>
 | 
			
		||||
      <PrecompiledHeader>Use</PrecompiledHeader>
 | 
			
		||||
      <WarningLevel>Level3</WarningLevel>
 | 
			
		||||
      <DebugInformationFormat>EditAndContinue</DebugInformationFormat>
 | 
			
		||||
      <MultiProcessorCompilation>false</MultiProcessorCompilation>
 | 
			
		||||
    </ClCompile>
 | 
			
		||||
    <ResourceCompile>
 | 
			
		||||
      <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
 | 
			
		||||
| 
						 | 
				
			
			@ -74,7 +76,8 @@
 | 
			
		|||
    <Link>
 | 
			
		||||
      <GenerateDebugInformation>true</GenerateDebugInformation>
 | 
			
		||||
      <SubSystem>Windows</SubSystem>
 | 
			
		||||
      <RandomizedBaseAddress>false</RandomizedBaseAddress>
 | 
			
		||||
      <RandomizedBaseAddress>
 | 
			
		||||
      </RandomizedBaseAddress>
 | 
			
		||||
      <DataExecutionPrevention>
 | 
			
		||||
      </DataExecutionPrevention>
 | 
			
		||||
      <TargetMachine>MachineX86</TargetMachine>
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -63,9 +63,6 @@
 | 
			
		|||
    <ClCompile Include="..\Hazard\Hazard\Hazard.cpp">
 | 
			
		||||
      <Filter>Quelldateien</Filter>
 | 
			
		||||
    </ClCompile>
 | 
			
		||||
    <ClCompile Include="..\Hazard\Hazard\KV.cpp">
 | 
			
		||||
      <Filter>Quelldateien</Filter>
 | 
			
		||||
    </ClCompile>
 | 
			
		||||
    <ClCompile Include="..\Hazard\Hazard\PrimImplikant.cpp">
 | 
			
		||||
      <Filter>Quelldateien</Filter>
 | 
			
		||||
    </ClCompile>
 | 
			
		||||
| 
						 | 
				
			
			@ -75,6 +72,9 @@
 | 
			
		|||
    <ClCompile Include="..\Hazard\Hazard\Wertetabelle.cpp">
 | 
			
		||||
      <Filter>Quelldateien</Filter>
 | 
			
		||||
    </ClCompile>
 | 
			
		||||
    <ClCompile Include="..\Hazard\Hazard\KV.cpp">
 | 
			
		||||
      <Filter>Quelldateien</Filter>
 | 
			
		||||
    </ClCompile>
 | 
			
		||||
  </ItemGroup>
 | 
			
		||||
  <ItemGroup>
 | 
			
		||||
    <ClInclude Include="GDE_3.h">
 | 
			
		||||
| 
						 | 
				
			
			@ -128,9 +128,6 @@
 | 
			
		|||
    <ClInclude Include="..\Hazard\Hazard\Cparser.h">
 | 
			
		||||
      <Filter>Headerdateien</Filter>
 | 
			
		||||
    </ClInclude>
 | 
			
		||||
    <ClInclude Include="..\Hazard\Hazard\KV.h">
 | 
			
		||||
      <Filter>Headerdateien</Filter>
 | 
			
		||||
    </ClInclude>
 | 
			
		||||
    <ClInclude Include="..\Hazard\Hazard\PrimImplikant.h">
 | 
			
		||||
      <Filter>Headerdateien</Filter>
 | 
			
		||||
    </ClInclude>
 | 
			
		||||
| 
						 | 
				
			
			@ -140,6 +137,9 @@
 | 
			
		|||
    <ClInclude Include="..\Hazard\Hazard\Wertetabelle.h">
 | 
			
		||||
      <Filter>Headerdateien</Filter>
 | 
			
		||||
    </ClInclude>
 | 
			
		||||
    <ClInclude Include="..\Hazard\Hazard\KV.h">
 | 
			
		||||
      <Filter>Headerdateien</Filter>
 | 
			
		||||
    </ClInclude>
 | 
			
		||||
  </ItemGroup>
 | 
			
		||||
  <ItemGroup>
 | 
			
		||||
    <None Include="res\GDE_3.ico">
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -127,6 +127,34 @@ void KV::PrintPrimImplikanten()
 | 
			
		|||
	{
 | 
			
		||||
		PrimImplikant* currentPI = this->globalPic->at(i);
 | 
			
		||||
 | 
			
		||||
		uint overflow = 0;													// at which sides the PrimImplikant overlaps
 | 
			
		||||
		for (uint j = 0; j < currentPI->implikanten.size(); j++)
 | 
			
		||||
		{
 | 
			
		||||
			uint currentI = currentPI->implikanten[j];
 | 
			
		||||
			uint w = (currentI & ((0x1 << (this->numVarX)) - 1));			// get all bits that make X (=w)
 | 
			
		||||
			w ^= w/2;
 | 
			
		||||
			uint h = (currentI >> this->numVarX);							// get all bits that make Y (=h)
 | 
			
		||||
			h ^= h/2;
 | 
			
		||||
 | 
			
		||||
			if (w == 0)
 | 
			
		||||
				overflow |= 0x1;											// left side
 | 
			
		||||
			else if (w == this->numVarX)
 | 
			
		||||
				overflow |= 0x2;											// right side
 | 
			
		||||
			if (h == 0)
 | 
			
		||||
				overflow |= 0x10;											// upper side
 | 
			
		||||
			else if (h == this->numVarY)
 | 
			
		||||
				overflow |= 0x20;											// lower side
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
		switch (overflow)
 | 
			
		||||
		{
 | 
			
		||||
		case 0x33:															// all 4 edges
 | 
			
		||||
			break;
 | 
			
		||||
		case 0x30:															// overflows from top to bottom
 | 
			
		||||
			break;
 | 
			
		||||
		case 0x03:															// overflows from left to right
 | 
			
		||||
			break;
 | 
			
		||||
		default:
 | 
			
		||||
			uint X1 = -1, X2 = 0, Y1 = -1, Y2 = 0;							// find coordinates for Rechteck
 | 
			
		||||
			for (uint j = 0; j < currentPI->implikanten.size(); j++)
 | 
			
		||||
			{
 | 
			
		||||
| 
						 | 
				
			
			@ -165,6 +193,7 @@ void KV::PrintPrimImplikanten()
 | 
			
		|||
			}
 | 
			
		||||
		}
 | 
			
		||||
	}
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,7 +1,6 @@
 | 
			
		|||
#include "stdafx.h"
 | 
			
		||||
#include <vector>
 | 
			
		||||
#include <string>
 | 
			
		||||
#include <WinGDI.h>
 | 
			
		||||
#include "Cell.h"
 | 
			
		||||
#include "CellCollection.h"
 | 
			
		||||
#include "PrimImplikantCollection.h"
 | 
			
		||||
| 
						 | 
				
			
			@ -10,6 +9,10 @@ extern uint dimension;
 | 
			
		|||
extern uint numElements;
 | 
			
		||||
extern bool KNF;
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
#ifndef _KV_H
 | 
			
		||||
#define _KV_H
 | 
			
		||||
 | 
			
		||||
class KV
 | 
			
		||||
{
 | 
			
		||||
public:
 | 
			
		||||
| 
						 | 
				
			
			@ -61,7 +64,5 @@ private:
 | 
			
		|||
};
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
#ifndef _KV_H
 | 
			
		||||
#define _KV_H
 | 
			
		||||
#define CENTER SINGLE_LINE|CENTER_ALIGN|VCENTER_ALIGN
 | 
			
		||||
#endif
 | 
			
		||||
		Loading…
	
		Reference in a new issue