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>
|
<ConfigurationType>Application</ConfigurationType>
|
||||||
<UseOfMfc>Static</UseOfMfc>
|
<UseOfMfc>Static</UseOfMfc>
|
||||||
<CharacterSet>MultiByte</CharacterSet>
|
<CharacterSet>MultiByte</CharacterSet>
|
||||||
|
<PlatformToolset>v100</PlatformToolset>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
|
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
|
||||||
<ImportGroup Label="ExtensionSettings">
|
<ImportGroup Label="ExtensionSettings">
|
||||||
|
@ -58,13 +59,14 @@
|
||||||
<ClCompile>
|
<ClCompile>
|
||||||
<Optimization>Disabled</Optimization>
|
<Optimization>Disabled</Optimization>
|
||||||
<PreprocessorDefinitions>WIN32;_WINDOWS;_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
<PreprocessorDefinitions>WIN32;_WINDOWS;_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
<MinimalRebuild>true</MinimalRebuild>
|
<MinimalRebuild>false</MinimalRebuild>
|
||||||
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
|
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
|
||||||
<RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
|
<RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
|
||||||
<TreatWChar_tAsBuiltInType>true</TreatWChar_tAsBuiltInType>
|
<TreatWChar_tAsBuiltInType>true</TreatWChar_tAsBuiltInType>
|
||||||
<PrecompiledHeader>Use</PrecompiledHeader>
|
<PrecompiledHeader>Use</PrecompiledHeader>
|
||||||
<WarningLevel>Level3</WarningLevel>
|
<WarningLevel>Level3</WarningLevel>
|
||||||
<DebugInformationFormat>EditAndContinue</DebugInformationFormat>
|
<DebugInformationFormat>EditAndContinue</DebugInformationFormat>
|
||||||
|
<MultiProcessorCompilation>false</MultiProcessorCompilation>
|
||||||
</ClCompile>
|
</ClCompile>
|
||||||
<ResourceCompile>
|
<ResourceCompile>
|
||||||
<PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
<PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
@ -74,7 +76,8 @@
|
||||||
<Link>
|
<Link>
|
||||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||||
<SubSystem>Windows</SubSystem>
|
<SubSystem>Windows</SubSystem>
|
||||||
<RandomizedBaseAddress>false</RandomizedBaseAddress>
|
<RandomizedBaseAddress>
|
||||||
|
</RandomizedBaseAddress>
|
||||||
<DataExecutionPrevention>
|
<DataExecutionPrevention>
|
||||||
</DataExecutionPrevention>
|
</DataExecutionPrevention>
|
||||||
<TargetMachine>MachineX86</TargetMachine>
|
<TargetMachine>MachineX86</TargetMachine>
|
||||||
|
|
|
@ -63,9 +63,6 @@
|
||||||
<ClCompile Include="..\Hazard\Hazard\Hazard.cpp">
|
<ClCompile Include="..\Hazard\Hazard\Hazard.cpp">
|
||||||
<Filter>Quelldateien</Filter>
|
<Filter>Quelldateien</Filter>
|
||||||
</ClCompile>
|
</ClCompile>
|
||||||
<ClCompile Include="..\Hazard\Hazard\KV.cpp">
|
|
||||||
<Filter>Quelldateien</Filter>
|
|
||||||
</ClCompile>
|
|
||||||
<ClCompile Include="..\Hazard\Hazard\PrimImplikant.cpp">
|
<ClCompile Include="..\Hazard\Hazard\PrimImplikant.cpp">
|
||||||
<Filter>Quelldateien</Filter>
|
<Filter>Quelldateien</Filter>
|
||||||
</ClCompile>
|
</ClCompile>
|
||||||
|
@ -75,6 +72,9 @@
|
||||||
<ClCompile Include="..\Hazard\Hazard\Wertetabelle.cpp">
|
<ClCompile Include="..\Hazard\Hazard\Wertetabelle.cpp">
|
||||||
<Filter>Quelldateien</Filter>
|
<Filter>Quelldateien</Filter>
|
||||||
</ClCompile>
|
</ClCompile>
|
||||||
|
<ClCompile Include="..\Hazard\Hazard\KV.cpp">
|
||||||
|
<Filter>Quelldateien</Filter>
|
||||||
|
</ClCompile>
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<ClInclude Include="GDE_3.h">
|
<ClInclude Include="GDE_3.h">
|
||||||
|
@ -128,9 +128,6 @@
|
||||||
<ClInclude Include="..\Hazard\Hazard\Cparser.h">
|
<ClInclude Include="..\Hazard\Hazard\Cparser.h">
|
||||||
<Filter>Headerdateien</Filter>
|
<Filter>Headerdateien</Filter>
|
||||||
</ClInclude>
|
</ClInclude>
|
||||||
<ClInclude Include="..\Hazard\Hazard\KV.h">
|
|
||||||
<Filter>Headerdateien</Filter>
|
|
||||||
</ClInclude>
|
|
||||||
<ClInclude Include="..\Hazard\Hazard\PrimImplikant.h">
|
<ClInclude Include="..\Hazard\Hazard\PrimImplikant.h">
|
||||||
<Filter>Headerdateien</Filter>
|
<Filter>Headerdateien</Filter>
|
||||||
</ClInclude>
|
</ClInclude>
|
||||||
|
@ -140,6 +137,9 @@
|
||||||
<ClInclude Include="..\Hazard\Hazard\Wertetabelle.h">
|
<ClInclude Include="..\Hazard\Hazard\Wertetabelle.h">
|
||||||
<Filter>Headerdateien</Filter>
|
<Filter>Headerdateien</Filter>
|
||||||
</ClInclude>
|
</ClInclude>
|
||||||
|
<ClInclude Include="..\Hazard\Hazard\KV.h">
|
||||||
|
<Filter>Headerdateien</Filter>
|
||||||
|
</ClInclude>
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<None Include="res\GDE_3.ico">
|
<None Include="res\GDE_3.ico">
|
||||||
|
|
|
@ -127,6 +127,34 @@ void KV::PrintPrimImplikanten()
|
||||||
{
|
{
|
||||||
PrimImplikant* currentPI = this->globalPic->at(i);
|
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
|
uint X1 = -1, X2 = 0, Y1 = -1, Y2 = 0; // find coordinates for Rechteck
|
||||||
for (uint j = 0; j < currentPI->implikanten.size(); j++)
|
for (uint j = 0; j < currentPI->implikanten.size(); j++)
|
||||||
{
|
{
|
||||||
|
@ -165,6 +193,7 @@ void KV::PrintPrimImplikanten()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -1,7 +1,6 @@
|
||||||
#include "stdafx.h"
|
#include "stdafx.h"
|
||||||
#include <vector>
|
#include <vector>
|
||||||
#include <string>
|
#include <string>
|
||||||
#include <WinGDI.h>
|
|
||||||
#include "Cell.h"
|
#include "Cell.h"
|
||||||
#include "CellCollection.h"
|
#include "CellCollection.h"
|
||||||
#include "PrimImplikantCollection.h"
|
#include "PrimImplikantCollection.h"
|
||||||
|
@ -10,6 +9,10 @@ extern uint dimension;
|
||||||
extern uint numElements;
|
extern uint numElements;
|
||||||
extern bool KNF;
|
extern bool KNF;
|
||||||
|
|
||||||
|
|
||||||
|
#ifndef _KV_H
|
||||||
|
#define _KV_H
|
||||||
|
|
||||||
class KV
|
class KV
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
|
@ -61,7 +64,5 @@ private:
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
#ifndef _KV_H
|
|
||||||
#define _KV_H
|
|
||||||
#define CENTER SINGLE_LINE|CENTER_ALIGN|VCENTER_ALIGN
|
#define CENTER SINGLE_LINE|CENTER_ALIGN|VCENTER_ALIGN
|
||||||
#endif
|
#endif
|
Loading…
Reference in a new issue