pbd-kn/contao-ellipse-bundle

Contao Bundle zur Anzeige einer Ellipse mit SVG-Ausgabe (kompatibel mit Contao 4.13 und 5.3)

Installs: 8

Dependents: 0

Suggesters: 0

Security: 0

Stars: 0

Watchers: 0

Forks: 0

Open Issues: 0

Type:contao-bundle

pkg:composer/pbd-kn/contao-ellipse-bundle

1.0.9 2025-10-03 12:05 UTC

This package is auto-updated.

Last update: 2025-10-08 11:18:38 UTC


README

Dieses Bundle erweitert Contao um zwei Content-Elemente zur Darstellung von Grafiken die über Ellipsenerzeugt werden.
Die Ellipsen werden mathematisch berechnet und als SVG-Grafik im Frontend ausgegeben.
Alle wichtigen Parameter lassen sich über das Contao-Backend einstellen oder optional im Frontend-Formular ändern.

Inhalt

Das Bundle stellt zwei Content-Elemente bereit:

Ellipse (klassisch, Punkte auf Ellipse)

  • Stellt eine Ellipse auf Basis der großen und kleinen Halbachse dar.
  • Visualisiert Linien zwischen Punkten entlang der Ellipse.
  • Parameter wie Schrittweite, Umläufe und Farben steuerbar.
  • Typ: EllipseController::TYPE

Ellipse Krell (Kreis über Ellipse)

  • Erweiterung der klassischen Ellipse.
  • Zusätzlich läuft auf der Ellipse ein Kreis ab.
  • Übewr kreisradius und Abstand dses Kreiamittelpunkts werden die zu verbindenden Punkte bestimmt
  • Typ: EllipseKrellController::TYPE

Funktionen

Die Berechnung der Ellipse erfolgt über die Polarkoordinatenformel:

$$r(f) = \frac{b}{\sqrt{1 - e \cdot \cos^2(f)}}$$

Dabei:

  • a = große Halbachse (ellipse_x)
  • b = kleine Halbachse (ellipse_y)
  • e = numerische Exzentrizität

Im Frontend werden die Punkte in SVG ausgegeben:

  • Farben und Linien werden dynamisch berechnet

  • Linien zwischen den Punkten ,unter der Berücksichtigung der Sequenz, mit den gewählten Linienparameter ausgegeben

  • optional die Ellipse selbst (showEllipse)

  • optionale Punkte (showCircle)

  • Die Muster können als pdf oder als SVG zur weiteren Verwendung gespeichert werden.

Parameter und ihre Wirkung

Geometrische Parameter

Feld Beschreibung Wirkung
ellipse_x (A) Große Halbachse Streckung in X-Richtung (Breite)
ellipse_y (B) Kleine Halbachse Streckung in Y-Richtung (Höhe)
ellipse_umlauf Umläufe Anzahl der Durchläufe um die Ellipse
ellipse_schrittweite_pkt Schrittweite (S) Abstand der Punkte eergibt die Anzahl Punkte die gezeichnez werden
ellipse_point_sequence (R) Punktreihenfolge Gibt an in welcher Reihenfolge die Punkte verbunden werden
bei kreis auf Ellipse
ellipse_circle_radius (R) Kreisradius Größe der Hilfskreise
ellipse_point_radius (R1) Punkt-Radius Größe der einzelnen Punkte

Linien & Farben

Feld Beschreibung Wirkung
ellipse_line_thickness Linienstärke Dicke der Linien
ellipse_line_mode Linienmodus fixed = feste Farbe, cycle = wechselnde Farben
ellipse_line_color Linienfarbe (fixed) Feste Linienfarbe
ellipse_cycle_color1..6 Zyklusfarben Farben, die bei cycle nacheinander verwendet werden
die Farben können in englisch blue, Yellow oder #rrggbb angeben werden

Anzeigeoptionen

Linien & Farben

Feld Beschreibung Wirkung
template_selection_active Eingbe Frontend im FE können die Parameter ewingeghen werden
ellipse_template Template-Auswahl Auswahl eines eigenen ce_ellipse_* Templates
showEllipse Ellipse anzeigen für Debug zeigt zu Ellipse noch ZusatzInfo an rote Umrandung sichtbar
showCircle Punkte anzeigen für Debug zeigt Punkte noch ZusatzInfo als <circle> sichtbar

Beispiele

Hinweise

  • Beide Content-Elemente nutzen mathematische Formeln für die Punkterzeugung.
  • Bei kleinen Schrittweiten entstehen viele Punkte ? Performance beachten.
  • Mit der Punktreihenfolge (R) lassen sich geometrische Muster wie Sterne oder Rosetten erzeugen.
  • Die Frontend-Formularoption erlaubt es, Parameter live im Browser zu ändern.

Installation

Über Composer installieren:

composer require pbd-kn/contao-ellipse-bundle
vendor/bin/contao-console contao:migrate

Danach steht das Bundle im Contao-Backend als Content-Element zur Verfügung.

Lizenz

LGPL-3.0-or-later
(c) 2025 pbd-kn