Garagenmodell – passen zwei Autos in die Garage?
Ein maßstäblicher Grundriss einer Garage mit schräger Seite und zwei Toren. Sie geben die Außenmaße ein, schieben zwei Autos hinein und sehen sofort, ob beide passen und wie viel Platz bleibt.
Maßstäblich
Raster 0,5 m; alle Abstände in Zentimetern.
Lichte Maße
Aus Außenmaßen und Wandstärke berechnet, auch an der Schräge.
Prüfung
Kollision, Abstand zu Wand, Tor und anderem Auto, Durchfahrt durch beide Tore.
Suche
Findet automatisch die Stellung mit der größten engsten Stelle.
Voreingestellt sind ein Citroën Ami und ein Dacia Logan MCV. Länge und Breite beider Autos lassen sich ändern, sodass das Modell für jedes Fahrzeugpaar taugt.
Bedienung
| Aktion | Maus / Touch | Tastatur |
|---|---|---|
| Auto verschieben | Auto ziehen | Pfeiltasten: 1 cm, mit Umschalt 10 cm |
| Auto drehen | Am runden Griff vor der Front ziehen (0,5°-Schritte) | Q / E: 0,5°, mit Umschalt 5° |
| Auto wechseln | Auto anklicken oder Button „Ami“ / „Logan MCV“ | Tab |
| Genaue Werte | Mitte x, Mitte y, Winkel, Länge und Breite im Bereich „Auto bearbeiten“ eintippen | |
| Zurücksetzen | „Alles zurücksetzen“ stellt Garage und Autos auf die Ausgangswerte | |
Alle Eingaben werden im Browser gespeichert (localStorage) und sind beim nächsten Öffnen wieder da. Es wird nichts an einen Server gesendet.
Garage eingeben
Die Garage ist ein Fünfeck: eine gerade Längswand, ein schmales und ein breites Ende mit je einem Tor und eine schräge Seite mit einem Knick. Der Nullpunkt liegt an der Außenecke zwischen schmalem Ende und gerader Wand; x läuft entlang der geraden Wand, y quer dazu.
| Feld | Bedeutung | Ausgangswert |
|---|---|---|
| Länge gerade Wand | Außenlänge der geraden Längswand | 7,04 m |
| Länge schräge Seite | x-Position der Außenecke breites Ende / schräge Seite | 7,04 m |
| Außenbreite schmales Ende | Außenmaß quer am schmalen Ende | 2,90 m |
| Außenbreite breites Ende | Außenmaß quer am breiten Ende | 4,60 m |
| Knick ab schmalem Ende | Abstand des Knicks in der schrägen Seite vom schmalen Ende | 2,25 m |
| Außenbreite am Knick | Außenmaß quer an der Knickstelle | 3,07 m |
| Wandstärke | Gilt für alle Wände | 0,20 m |
| Tor schmales Ende | Breite / Abstand von der Außenecke an der geraden Wand | 2,30 m / 0,30 m |
| Tor breites Ende | Breite / Abstand von der Außenecke an der geraden Wand | 3,00 m / 0,30 m |
Die Rolltore sitzen bündig in der Außenflucht. Die Torlaibung gehört deshalb zur nutzbaren Fläche. Reicht ein Tor über die Innenecke hinaus, erscheint eine Warnung.
Autos
Jedes Auto ist ein Rechteck aus Länge und Breite, gerechnet ohne Außenspiegel. Die Front ist durch eine Scheibenlinie und einen Pfeil markiert.
| Auto | Länge | Breite |
|---|---|---|
| Ami | 2,51 m | 1,39 m |
| Logan MCV | 4,49 m | 1,74 m |
Für den Logan mit ausgeklappten Spiegeln als Breite etwa 2,00 m eintragen.
Auswertung
Über dem Grundriss steht das Gesamturteil: „Beide passen“ mit der engsten Stelle in Zentimetern, oder welches Auto aus der Garage ragt bzw. dass sich die Autos überschneiden. Der kürzeste Abstand zwischen den Autos wird als gestrichelte Linie eingezeichnet.
Für das ausgewählte Auto zeigt die Seitenleiste:
- ob es ganz in der Garage steht,
- den Abstand zur Wand und zum Tor (rot unter 5 cm),
- den Abstand zum anderen Auto (rot unter 10 cm, „Kollision“ bei Überschneidung),
- ob es durch das schmale und das breite Tor passt, mit der verbleibenden Luft.
Darunter stehen die berechneten lichten Maße: Länge an der geraden Wand, Länge Tor zu Tor in der Außenflucht, Breite am schmalen Ende, am Knick und am breiten Ende.
Stellungen und Suche
| Button | Ergebnis |
|---|---|
| Jedes Auto an sein Tor | Ami mittig hinter das schmale Tor, Logan mittig hinter das breite, jeweils 5 cm hinter der Torebene. |
| Ami quer | Ami quer an die Wand des schmalen Endes, Logan hinter das breite Tor. |
| Beste Stellung suchen | Sucht die Stellung, bei der die engste Stelle am größten ist. |
So arbeitet die Suche
- Der Ami steht längs (0°) am schmalen Ende. Für jede Querposition wird er so weit wie möglich ans schmale Ende geschoben, mit mindestens 3 cm Abstand. Daraus werden einige Kandidaten gewählt.
- Für jeden Kandidaten wird der Logan im Raster von 5 cm und in Winkeln von −30° bis +30° (3°-Schritte) durchprobiert.
- Bewertet wird die engste Stelle: das Minimum aus Abstand der Autos zueinander und zu Wand und Tor.
- Um die beste Stellung herum wird fein nachgesucht (1 cm, 0,5°).
Findet die Suche keine Stellung, bleiben die Autos, wo sie waren, und eine Meldung erklärt den Grund.
Grenzen des Modells
- Autos sind Rechtecke; Rundungen, Spiegel und offene Türen sind nicht berücksichtigt.
- Geprüft wird die Endstellung, nicht der Weg hinein. Ob ein Auto um die Kurve in seine Position kommt, zeigt das Modell nicht.
- Die Suche kennt nur die Variante „Ami längs am schmalen Ende“.
- Alle Wände haben dieselbe Stärke.
Aufbau der Datei
Die Anwendung steckt vollständig in garage-modell.html (rund 530 Zeilen). Gezeichnet wird als SVG mit 100 Einheiten pro Meter.
| Bereich | Inhalt |
|---|---|
<style> | Farbtokens für hellen und dunklen Modus, zweispaltiges Layout; unter 820 px Breite steht der Grundriss oben und die Eingaben darunter. |
<aside> | Stellungen, Auto bearbeiten, Garage-Außenmaße, Tore, Warnungen, lichte Maße, Bedienhinweise. |
<main> | Gesamturteil #verdict, Grundriss #svg, Fußzeile. |
| Zustand | DEF_G (Garagenmaße), DEF_CARS (Autos), load / save über localStorage |
| Geometrie | outerPoly (Außen-Fünfeck), buildGarage (Innenkontur durch Versatz der Kanten um die Wandstärke, Tore, lichte Maße) |
| Polygone | carPoly, pip (Punkt im Polygon), segInter, polyDist, polysOverlap, carInside |
| Auswertung | analyse, score |
| Darstellung | render zeichnet Raster, Wände, Tore, Autos, Abstandslinie und füllt die Seitenleiste |
| Eingabe | Zeiger-Ereignisse zum Ziehen und Drehen, Tastatursteuerung, Eingabefelder |
| Stellungen | atDoor, preset, optimise |
Entwicklung
- Zum Testen
garage-modell.htmlim Browser öffnen; ein Webserver ist nicht nötig. - Andere Ausgangswerte für Garage oder Autos stehen in
DEF_GundDEF_CARS. Gespeicherte Werte im Browser haben Vorrang; „Alles zurücksetzen“ lädt die neuen Ausgangswerte. - Die Versionsangabe steht in der Fußzeile und im Kommentar am Dateianfang.
- Diese Dokumentation liegt im Paket unter
docs/index.html.
Einzelne Teile des Garagenmodells und diese Dokumentation sind mit Unterstützung eines KI-Assistenten entstanden und vom Autor geprüft.