> For the complete documentation index, see [llms.txt](https://docs.augelab.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.augelab.com/german/function-blocks/detections-shapes/shape-analysis/line-geometry.md).

# Line Geometry

Dieser Funktionsblock bietet ein flexibles, vielseitiges Werkzeug für viele Linien- und Geometrieoperationen: Winkel, Abstände, Schnittpunkte, Projektionen, Mittelpunkte, Segmentauszüge und mehr. Er kann numerische Ergebnisse, Punkte, operation­spezifische Zusatzdaten und (optional) ein annotiertes Bild zur Visualisierung liefern.

## 📥 Eingänge <a href="#inputs" id="inputs"></a>

* `Input Image` Optionales Bild, das für Visualisierungs-Overlays verwendet wird (wenn Sie Linien, Punkte oder Konturen gezeichnet haben möchten).
* `Line 1` Für die meisten Operationen erforderlich. Akzeptiert eine Linie beschrieben als \[(x1, y1), (x2, y2)] oder eine kompatible Formeneingabe.
* `Line 2` Für Winkel / Schnittpunkt / einige Distanzoperationen erforderlich. Akzeptiert eine zweite Linie im selben Format.
* `Anchor Point` Optionaler Punkt (x, y), der für Projektionen und Punkt-zu-Linie-Operationen oder wenn eine Kontur zur Formenschnittmenge angegeben wird, verwendet wird.

## 📤 Ausgänge <a href="#outputs" id="outputs"></a>

* `Output Image` Annotiertes Bild (falls `Input Image` bereitgestellt und `Show Visualization` aktiviert ist).
* `Result` Numerisches Ergebnis der gewählten Operation (z. B. Winkel in Grad oder Distanz in Pixeln).
* `Point Output` Ein Punkt-Ergebnis, wenn die Operation eine Koordinate liefert (z. B. Schnittpunkt, Projektion, Mittelpunkt).
* `Extra Output` Operation­spezifische Daten (z. B. Segmentendpunkte, Liste von Schnittpunkten oder andere Debug-Infos).

## 🕹️ Steuerungen <a href="#controls" id="controls"></a>

* `Operation Type` Wählen Sie die auszuführende Geometrieoperation (z. B. Angle Between Lines, Intersection Point, Segment Extraction, Projection).
* `Offset (px)` Schieberegler, der bei Segment-/Projek­tionsoperationen einen Versatz in Pixeln anwendet.
* `Interpolation Factor` Schieberegler (0–100%) für interpolationsbasierte Operationen (Segmentauszug, Projektion entlang einer Linie).
* `Show Visualization` Kontrollkästchen aktiviert/deaktiviert das Zeichnen des annotierten `Output Image`, wenn ein `Input Image` vorhanden ist.

## 🎯 Hauptmerkmale <a href="#features" id="features"></a>

* Ein einzelner, vielseitiger Block, der viele gängige Geometrieaufgaben abdeckt.
* Kontextabhängiges Verhalten: Nur die Ausgänge, die für die gewählte Operation relevant sind, enthalten sinnvolle Daten.
* Optionale visuelle Overlays: Zeichnen Sie Linien, Mittelpunkte, Schnittpunkte, Projektionen und Segmente direkt auf das bereitgestellte Bild.
* Interaktive Tooltips und Hinweistexte helfen bei der Auswahl der richtigen Eingänge und Parameter für jede Operation.

## ⚙️ Ausführungsablauf <a href="#running-mechanism" id="running-mechanism"></a>

Beim Ausführen liest der Block die verbundenen Anschlüsse und den ausgewählten `Operation Type`. Er führt die gewünschte geometrische Berechnung mit den bereitgestellten `Line 1`, optionalen `Line 2` und optionalen `Anchor Point` durch. Wenn ein `Input Image` verbunden ist und `Show Visualization` aktiviert ist, liefert der Block ein annotiertes Bild in `Output Image`. Numerische und Punkt-Ergebnisse erscheinen auf den entsprechenden Ausgängen, abhängig von der gewählten Operation.

## 📝 Nutzungshinweise <a href="#usage" id="usage"></a>

1. Wählen Sie die gewünschte Operation in `Operation Type`.
2. Verbinden Sie die erforderlichen Anschlüsse: mindestens `Line 1`. Verbinden Sie `Line 2` oder `Anchor Point`, falls die gewählte Operation diese benötigt.
3. Optional: Stellen Sie ein `Input Image` bereit und aktivieren Sie `Show Visualization`, um ein annotiertes Overlay zu erhalten.
4. Passen Sie `Offset (px)` oder `Interpolation Factor` bei Segmentauszug- oder Projektionsoperationen an.
5. Führen Sie das Szenario aus; prüfen Sie `Result`, `Point Output` und/oder `Extra Output` und betrachten Sie das visuelle Overlay in `Output Image` oder mit einem Anzeige-Block.

## 💡 Tipps und Tricks (Kombination mit anderen Blöcken) <a href="#tips-and-tricks" id="tips-and-tricks"></a>

* Um Linien automatisch aus Konturen oder Kanten zu erhalten, kombinieren Sie mit `Find Contour` oder `Line Detector`, um Form-/Liniendaten zu extrahieren und an `Line Geometry` weiterzugeben.
* Zuschneiden eines Bereichs und fokussierte Geometrie mit `Image ROI`, `Image ROI Select` oder `Image ROI Polygon` vor dem Senden des Bildes an diesen Block reduziert Rauschen und verbessert die Ergebnisse.
* Visualisieren Sie Ausgaben in der UI mit `Show Image`, damit Sie annotierte Bilder überprüfen und Punkte/Schnittpunkte interaktiv validieren können.
* Wenn Sie textliche Ergebnisse auf dem annotierten Bild für Berichte oder Dashboards überlagern möchten, fügen Sie nach dem visualisierten Output `Draw Result On Image` hinzu.
* Zum Messen von Abständen zwischen erkannten Merkmalen verwenden Sie `Find Contour` oder `Feature Detector` zur Lokalisierung von Punkten und anschließend `Line Geometry` zur Berechnung von Mittelpunkten, Abständen oder Projektionen. Numerische Punkt-Ausgaben können an `Measure Position Distance` für zusätzliche Distanzanalysen weitergereicht werden.
* Um nur relevante Detektionen vor Geometrie-Berechnungen zu isolieren, verwenden Sie `Image ROI Select` oder `Check Area (Polygon)`, um Positionen und Formen zu filtern.
* Bei Kombination von Detektion und Tracking-Workflows verwenden Sie upstream `Object Detection` oder `Object Detection - Custom` zur Bereitstellung von Koordinaten und nutzen dann `Line Geometry` für Analysen wie Schnittpunktprüfungen oder Annäherungswinkelberechnungen.

Tipp: Verwenden Sie die Blockausgänge wie `Point Output` oder `Extra Output` als Eingänge für andere Verarbeitungsblöcke wie `Measure Position Distance`, `Draw Point` oder Logging/Export-Blöcke.

## 🛠️ Fehlersuche <a href="#troubleshooting" id="troubleshooting"></a>

* Wenn `Output Image` leer ist: Stellen Sie sicher, dass ein `Input Image` verbunden ist und `Show Visualization` aktiviert ist.
* Wenn eine Operation keinen Wert in `Result` oder `Point Output` zurückgibt: Prüfen Sie, ob die für diese Operation erforderlichen Anschlüsse verbunden sind (z. B. ist `Line 2` für Winkel-/Schnittpunkt-Operationen erforderlich).
* Wenn Koordinaten falsch erscheinen: Überprüfen Sie das Koordinatenformat und dass Linien als \[(x1, y1), (x2, y2)] bereitgestellt werden. Verwenden Sie Vorschau-Blöcke wie `Show Image` oder `Draw Point`, um Zwischenpunkte zu prüfen.
* Bei Projek­tions- und Interpolations­ergebnissen, die ungenau wirken, justieren Sie `Offset (px)` und `Interpolation Factor`, um Maßstab und Einheiten anzupassen.

Wenn Sie schrittweise visuelle Prüfungen benötigen, kombinieren Sie den Block mit `Show Image` und `Draw Point`, um Zwischengeometrien zu validieren, bevor Sie die Ergebnisse weiterverarbeiten.


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://docs.augelab.com/german/function-blocks/detections-shapes/shape-analysis/line-geometry.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
