{"id":191,"date":"2026-05-01T05:43:52","date_gmt":"2026-05-01T05:43:52","guid":{"rendered":"https:\/\/b-common.de\/?page_id=191"},"modified":"2026-07-08T18:24:27","modified_gmt":"2026-07-08T18:24:27","slug":"geschlossener-raum-vi","status":"publish","type":"page","link":"https:\/\/b-common.de\/?page_id=191","title":{"rendered":"GESCHLOSSENER RAUM"},"content":{"rendered":"\n<div class=\"wp-block-group is-layout-grid wp-container-core-group-is-layout-745eea73 wp-block-group-is-layout-grid\">\n<div class=\"b-common-simulation-container\">\n\n  <!-- Steuerungselemente -->\n  <div class=\"sim-controls\">\n    <button class=\"sim-btn\" onclick=\"bCommonSim.start()\">FLIGHT<\/button>\n    <button class=\"sim-btn\" onclick=\"bCommonSim.stop()\">FREEZE<\/button>\n    <button class=\"sim-btn\" onclick=\"bCommonSim.reset()\">FIGHT<\/button>\n  <\/div>\n\n  <!-- Zwei-Kanal-Raster f\u00fcr das Bildrauschen -->\n  <div class=\"sim-grid\">\n    <div class=\"canvas-wrapper\"><canvas id=\"canvasA\" width=\"250\" height=\"250\"><\/canvas><\/div>\n    <div class=\"canvas-wrapper\"><canvas id=\"canvasB\" width=\"250\" height=\"250\"><\/canvas><\/div>\n  <\/div>\n\n  <!-- Integrierter Stencil-Filter -->\n  <svg width=\"0\" height=\"0\" style=\"position:absolute;\">\n    <filter id=\"sim-stencil-filter\" x=\"-20%\" y=\"-20%\" width=\"140%\" height=\"140%\">\n      <feTurbulence type=\"fractalNoise\" baseFrequency=\"0.65\" numOctaves=\"4\" result=\"noise\" \/>\n      <feDisplacementMap in=\"SourceGraphic\" in2=\"noise\" scale=\"6\" xChannelSelector=\"R\" yChannelSelector=\"G\" \/>\n    <\/filter>\n  <\/svg>\n\n<\/div>\n\n<script>\nconst bCommonSim = (() => {\n  const canvasA = document.getElementById(\"canvasA\");\n  const canvasB = document.getElementById(\"canvasB\");\n  \/\/ Referenz auf den Hauptcontainer f\u00fcr die CSS-Klasse\n  const container = document.querySelector(\".b-common-simulation-container\");\n  \n  let ctxA, ctxB, dataA, dataB, origA, origB;\n  let running = false;\n  let animationId;\n  let phase = 0;        \n  let frameCount = 0;\n  const switchEvery = 600; \n  const seedNoise = Date.now() % 400;\n\n  const img = new Image();\n  img.crossOrigin = \"anonymous\"; \n  img.src = \"https:\/\/b-common.de\/wp-content\/uploads\/2026\/06\/klinik_der_sittiche_250x250.png\"; \n\n  img.onload = () => {\n    ctxA = canvasA.getContext(\"2d\");\n    ctxB = canvasB.getContext(\"2d\");\n    \n    \/\/ Deaktiviert Weichzeichnung beim Skalieren im Canvas\n    ctxA.imageSmoothingEnabled = false;\n    ctxB.imageSmoothingEnabled = false;\n    \n    const size = 250;\n    ctxA.drawImage(img, 0, 0, size, size);\n    ctxB.drawImage(img, 0, 0, size, size);\n\n    dataA = ctxA.getImageData(0, 0, size, size);\n    dataB = ctxB.getImageData(0, 0, size, size);\n\n    origA = new Uint8ClampedArray(dataA.data);\n    origB = new Uint8ClampedArray(dataB.data);\n\n    \/\/ Initialer Start \u2013 falls gew\u00fcnscht direkt aktiv. \n    \/\/ Wenn das Bild beim allerersten Laden STRENG SCHARF sein soll, \n    \/\/ ersetzen Sie publicAPI.start() durch publicAPI.reset(), damit es im Ruhezustand startet.\n    publicAPI.start();\n  };\n\n  function chaos(data) {\n    let d = data.data;\n    for (let i = 0; i < 700 + seedNoise; i++) {\n      let p1 = Math.floor(Math.random() * (d.length \/ 4)) * 4;\n      let p2 = Math.floor(Math.random() * (d.length \/ 4)) * 4;\n      for (let j = 0; j < 3; j++) {\n        let tmp = d[p1 + j];\n        d[p1 + j] = d[p2 + j];\n        d[p2 + j] = tmp;\n      }\n    }\n  }\n\n  function reverse(data, original) {\n    let d = data.data;\n    for (let i = 0; i < 2500; i++) {\n      let idx = Math.floor(Math.random() * (d.length \/ 4)) * 4;\n      for (let j = 0; j < 3; j++) {\n        d[idx + j] += (original[idx + j] - d[idx + j]) * 0.03;\n      }\n    }\n  }\n\n  function loop() {\n    if (!running) return;\n    frameCount++;\n\n    if (frameCount % switchEvery === 0) {\n      phase = 1 - phase; \n    }\n\n    if (phase === 0) {\n      chaos(dataA);\n      reverse(dataB, origB);\n    } else {\n      reverse(dataA, origA);\n      chaos(dataB);\n    }\n\n    ctxA.putImageData(dataA, 0, 0);\n    ctxB.putImageData(dataB, 0, 0);\n\n    setTimeout(() => {\n      animationId = requestAnimationFrame(loop);\n    }, 60);\n  }\n\n  const publicAPI = {\n    start: () => {\n      if (!running && ctxA) {\n        running = true;\n        container.classList.add(\"is-running\"); \/\/ AKTIVIERT den SVG-Filter im CSS\n        loop();\n      }\n    },\n    stop: () => {\n      running = false;\n      container.classList.remove(\"is-running\"); \/\/ DEAKTIVIERT den SVG-Filter sofort (wird scharf)\n      cancelAnimationFrame(animationId);\n    },\n    reset: () => {\n      running = false;\n      container.classList.remove(\"is-running\"); \/\/ DEAKTIVIERT den SVG-Filter sofort\n      cancelAnimationFrame(animationId);\n      if (dataA && dataB) {\n        dataA.data.set(origA);\n        dataB.data.set(origB);\n        ctxA.putImageData(dataA, 0, 0);\n        ctxB.putImageData(dataB, 0, 0);\n      }\n      phase = 0;\n      frameCount = 0;\n    }\n  };\n\n  return publicAPI;\n})();\n<\/script>\n\n<style>\n    .b-common-simulation-container {\n        display: flex;\n        flex-direction: column;\n        gap: 20px;\n        padding: 20px 0;\n    }\n\n    .sim-controls {\n        display: flex;\n        gap: 10px;\n    }\n\n    .sim-btn {\n        background: #1c1c1c;\n        color: #e0e0e0;\n        font-family: monospace;\n        font-size: 13px;\n        font-weight: bold;\n        padding: 10px 20px;\n        border: 3px solid #000000;\n        cursor: pointer;\n        user-select: none;\n        transition: all 0.05s steps(2, end);\n    }\n\n    .sim-btn:hover {\n        background: #991b1b;\n        color: #ffffff;\n        transform: skewX(-4deg) translate(-2px, -2px);\n        box-shadow: 4px 4px 0px #000000;\n    }\n    \n    .sim-btn:active {\n        background: #7f1d1d;\n        transform: translate(0, 0);\n        box-shadow: none;\n    }\n\n    .sim-grid {\n        display: grid;\n        grid-template-columns: 1fr 1fr;\n        gap: 15px;\n        width: 100%;\n        max-width: 520px; \n    }\n\n    .canvas-wrapper {\n        width: 250px;\n        height: 250px;\n        background: #1c1c1c;\n        border: 4px solid #000000;\n        overflow: hidden;\n        \/* FILTER WURDE HIER ENTFERNT: Bild bleibt im Ruhezustand unber\u00fchrt *\/\n        transition: filter 0.2s ease;\n    }\n\n    \/* NEU: Der Filter greift nur noch exklusiv, wenn die Klasse aktiv ist *\/\n    .b-common-simulation-container.is-running .canvas-wrapper {\n        filter: url(#sim-stencil-filter); \n    }\n\n    canvas {\n        display: block;\n        width: 250px;\n        height: 250px;\n        image-rendering: -moz-crisp-edges;\n        image-rendering: -webkit-crisp-edges;\n        image-rendering: pixelated; \n        image-rendering: crisp-edges;\n    }\n\n    @media (max-width: 600px) {\n        .sim-grid {\n            grid-template-columns: 1fr;\n            max-width: 250px;\n        }\n    }\n\n    @media (prefers-color-scheme: dark) {\n        .sim-btn { background: #e0e0e0; color: #1c1c1c; border-color: #ffffff; }\n        .sim-btn:hover { background: #7f1d1d; color: #ffffff; box-shadow: 4px 4px 0px #ffffff; }\n    }\n<\/style>\n<\/div>\n\n\n\n<p class=\"has-base-2-background-color has-background wp-block-paragraph\">Das Bild als Sinnbild f\u00fcr ein Nervensystem, das zwischen Kontrollverlust und Wiederherstellung oszilliert.<\/p>\n\n\n\n<p class=\"has-base-2-background-color has-background wp-block-paragraph\"><strong>fight \/ flight \/ freeze<\/strong><\/p>\n\n\n\n<p class=\"has-base-2-background-color has-background wp-block-paragraph\">Die drei Zust\u00e4nde sind keine beliebige Beschriftung, sondern zitieren das physiologische Modell der Stressreaktion. Was hier simuliert wird, ist kein Bildfehler, sondern ein Zustand: das System oszillierend zwischen Aufl\u00f6sung und Wiederherstellung, zwischen Kontrollverlust und dem Zwang zur R\u00fcckkehr.<\/p>\n\n\n\n<p class=\"has-base-2-background-color has-background wp-block-paragraph\">Zwei Kan\u00e4le laufen gegenl\u00e4ufig. W\u00e4hrend der eine zerf\u00e4llt, stabilisiert sich der andere \u2013 bis sich das Verh\u00e4ltnis umkehrt. Kein Zustand ist Endpunkt, nur Phase in einer Wiederholung, die sich nie abschlie\u00dft. Das ist auch eine politische Figur: Systeme, die sich in Zyklen von Deregulierung und Restauration bewegen, ohne je einen Ruhepunkt zu erreichen. Krise wird nicht gel\u00f6st, sondern verwaltet \u2013 verschoben von einem Kanal in den n\u00e4chsten, w\u00e4hrend der Beobachter glaubt, Fortschritt zu sehen, wo eigentlich nur die Verteilung der Instabilit\u00e4t wechselt.<\/p>\n\n\n\n<p class=\"has-base-2-background-color has-background wp-block-paragraph\">Der Ursprung bleibt dabei immer vollst\u00e4ndig erhalten, unsichtbar im Speicher, w\u00e4hrend nur die Oberfl\u00e4che sich verzerrt. Das ist die eigentliche Volte: Kontrolle zeigt sich nicht darin, dass nichts ver\u00e4ndert wird, sondern darin, dass jede Ver\u00e4nderung reversibel bleibt. Das Original wird nie gel\u00f6scht \u2013 es wird nur so lange verdeckt, wie es dem System n\u00fctzt. Wer den Reset-Knopf besitzt, besitzt auch die Deutungshoheit dar\u00fcber, was als &#8222;wiederhergestellt&#8220; gilt.<\/p>\n\n\n\n<p class=\"has-base-2-background-color has-background wp-block-paragraph\">Der Mensch im K\u00e4fig im Ausgangsbild \u2013 behandelt, beobachtet, in klinischer Obhut \u2013 wird zur stillen Analogie: ein K\u00f6rper, der sich nicht selbst zerst\u00f6ren kann, weil ihm die F\u00fcrsorge, die ihn erh\u00e4lt, zugleich die Freiheit nimmt, sich zu entziehen.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>FLIGHT FREEZE FIGHT Das Bild als Sinnbild f\u00fcr ein Nervensystem, das zwischen Kontrollverlust und Wiederherstellung oszilliert. fight \/ flight \/ freeze Die drei Zust\u00e4nde sind keine beliebige Beschriftung, sondern zitieren das physiologische Modell der Stressreaktion. Was hier simuliert wird, ist kein Bildfehler, sondern ein Zustand: das System oszillierend zwischen Aufl\u00f6sung und Wiederherstellung, zwischen Kontrollverlust und [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"footnotes":""},"class_list":["post-191","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/b-common.de\/index.php?rest_route=\/wp\/v2\/pages\/191","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/b-common.de\/index.php?rest_route=\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/b-common.de\/index.php?rest_route=\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/b-common.de\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/b-common.de\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=191"}],"version-history":[{"count":22,"href":"https:\/\/b-common.de\/index.php?rest_route=\/wp\/v2\/pages\/191\/revisions"}],"predecessor-version":[{"id":783,"href":"https:\/\/b-common.de\/index.php?rest_route=\/wp\/v2\/pages\/191\/revisions\/783"}],"wp:attachment":[{"href":"https:\/\/b-common.de\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=191"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}