summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorMarvin Borner2019-03-10 22:38:24 +0100
committerMarvin Borner2019-03-10 22:38:24 +0100
commit6fe593a196b9ddbcb0a961456730358a312c6ef4 (patch)
tree98a000c37f8f6017e0467fb34b65faa08c1c4ee7
parent33a8d09d606bbfa832676df87751821a0e0be314 (diff)
Added KV template and generator
-rw-r--r--assets/js/generator.js24
-rw-r--r--generator.html81
-rw-r--r--template.html38
3 files changed, 143 insertions, 0 deletions
diff --git a/assets/js/generator.js b/assets/js/generator.js
new file mode 100644
index 0000000..eabe108
--- /dev/null
+++ b/assets/js/generator.js
@@ -0,0 +1,24 @@
+document.getElementById('minify').onclick = () => {
+ let a, b, c, d;
+ const input = document.getElementById('input').value;
+
+ document.getElementById('log').innerText = '';
+ document.getElementById('log').append('LOG\ndcba Z ID\n');
+
+ try {
+ for (let i = 0; i < 16; i++) {
+ const currentBinary = (i >>> 0).toString(2);
+ // fill binary number with leading zeros until it is 4 digits long
+ const filledBinary = currentBinary.length >= 4 ? currentBinary : new Array(4 - currentBinary.length + 1).join('0') + currentBinary;
+ a = filledBinary[3] === '1';
+ b = filledBinary[2] === '1';
+ c = filledBinary[1] === '1';
+ d = filledBinary[0] === '1';
+ document.getElementById('log').append(`${filledBinary} ${eval(input) ? '1' : '0'} ${document.getElementById(i + 1).getAttribute('data-id')}\n`);
+ document.getElementById(i + 1).innerText = eval(input) ? '1' : '0';
+ }
+ } catch (err) {
+ console.error(err);
+ alert('Oh, da ist wohl was schiefgelaufen, bitte probieren Sie es noch einmal :)');
+ }
+};
diff --git a/generator.html b/generator.html
new file mode 100644
index 0000000..4b6a40a
--- /dev/null
+++ b/generator.html
@@ -0,0 +1,81 @@
+<!doctype html>
+<html lang="de">
+<head>
+ <meta charset="UTF-8">
+ <meta content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0"
+ name="viewport">
+ <meta content="ie=edge" http-equiv="X-UA-Compatible">
+ <link href="assets/css/main.css" rel="stylesheet">
+ <title>KV-Diagramme</title>
+</head>
+<body>
+<nav class="navbar" id="navbar">
+ <a href="#">KV-Diagramme</a>
+ <a href="overview.html">Allgemeines</a>
+ <a href="process.html">Ablauf</a>
+ <a href="rules.html">Regeln</a>
+ <a href="usecase.html">Verwendungshinweise</a>
+ <a data-current href="generator.html">Generator</a>
+</nav>
+
+<div class="content">
+ <p class="heading">KV-Diagramm Generator</p>
+ <p>UND == &&</p>
+ <p>ODER == ||</p>
+ <p>NICHT == !</p>
+ <p>Es dürfen <u>NUR</u> die Variablen a, b, c und d verwendet werden.</p>
+ <label for="input">Boolescher Funktionsterm:</label>
+ <input id="input" type="text">
+ <button id="minify">Generieren!</button>
+
+ <pre id="log"></pre>
+
+ <div class="kv-grid">
+ <div class="grid-child"></div>
+ <div class="grid-child">a</div>
+ <div class="grid-child">a</div>
+ <div class="grid-child">!a</div>
+ <div class="grid-child">!a</div>
+ <div class="grid-child"></div>
+ <div class="grid-child">b</div>
+ <div class="grid-child" data-id="1" id="4"></div>
+ <div class="grid-child" data-id="2" id="8"></div>
+ <div class="grid-child" data-id="3" id="7"></div>
+ <div class="grid-child" data-id="4" id="3"></div>
+ <div class="grid-child">!d</div>
+ <div class="grid-child">b</div>
+ <div class="grid-child" data-id="5" id="12"></div>
+ <div class="grid-child" data-id="6" id="16"></div>
+ <div class="grid-child" data-id="7" id="15"></div>
+ <div class="grid-child" data-id="8" id="11"></div>
+ <div class="grid-child">d</div>
+ <div class="grid-child">!b</div>
+ <div class="grid-child" data-id="9" id="10"></div>
+ <div class="grid-child" data-id="10" id="14"></div>
+ <div class="grid-child" data-id="11" id="13"></div>
+ <div class="grid-child" data-id="12" id="9"></div>
+ <div class="grid-child">d</div>
+ <div class="grid-child">!b</div>
+ <div class="grid-child" data-id="13" id="2"></div>
+ <div class="grid-child" data-id="14" id="6"></div>
+ <div class="grid-child" data-id="15" id="5"></div>
+ <div class="grid-child" data-id="16" id="1"></div>
+ <div class="grid-child">!d</div>
+ <div class="grid-child"></div>
+ <div class="grid-child">!c</div>
+ <div class="grid-child">c</div>
+ <div class="grid-child">c</div>
+ <div class="grid-child">!c</div>
+ <div class="grid-child"></div>
+ </div>
+</div>
+
+<footer>
+ <hr>
+ Erstellt von <a href="https://marvinborner.de" target="_blank">Marvin Borner</a> TGI 11.1 RBS
+ Ulm
+</footer>
+
+<script src="assets/js/generator.js"></script>
+</body>
+</html>
diff --git a/template.html b/template.html
new file mode 100644
index 0000000..158d7dc
--- /dev/null
+++ b/template.html
@@ -0,0 +1,38 @@
+<div class="kv-grid">
+ <div class="grid-child"></div>
+ <div class="grid-child">E<sub>1</sub></div>
+ <div class="grid-child">E<sub>1</sub></div>
+ <div class="grid-child">!E<sub>1</sub></div>
+ <div class="grid-child">!E<sub>1</sub></div>
+ <div class="grid-child"></div>
+ <div class="grid-child">E<sub>2</sub></div>
+ <div class="grid-child" id="4"></div>
+ <div class="grid-child" id="8"></div>
+ <div class="grid-child" id="7"></div>
+ <div class="grid-child" id="3"></div>
+ <div class="grid-child">!E<sub>4</sub></div>
+ <div class="grid-child">E<sub>2</sub></div>
+ <div class="grid-child" id="12"></div>
+ <div class="grid-child" id="16"></div>
+ <div class="grid-child" id="15"></div>
+ <div class="grid-child" id="11"></div>
+ <div class="grid-child">E<sub>4</sub></div>
+ <div class="grid-child">!E<sub>2</sub></div>
+ <div class="grid-child" id="10"></div>
+ <div class="grid-child" id="14"></div>
+ <div class="grid-child" id="13"></div>
+ <div class="grid-child" id="9"></div>
+ <div class="grid-child">E<sub>4</sub></div>
+ <div class="grid-child">!E<sub>2</sub></div>
+ <div class="grid-child" id="2"></div>
+ <div class="grid-child" id="6"></div>
+ <div class="grid-child" id="5"></div>
+ <div class="grid-child" id="1"></div>
+ <div class="grid-child">!E<sub>4</sub></div>
+ <div class="grid-child"></div>
+ <div class="grid-child">!E<sub>3</sub></div>
+ <div class="grid-child">E<sub>3</sub></div>
+ <div class="grid-child">E<sub>3</sub></div>
+ <div class="grid-child">!E<sub>3</sub></div>
+ <div class="grid-child"></div>
+</div>