# Image Translate

Dieser Funktionsblock verschiebt ein Bild horizontal und/oder vertikal um eine angegebene Anzahl von Pixeln. Der freigelegte Bereich wird mit einer gewählten Hintergrundfarbe gefüllt. Die Eingänge `X displacement`, `Y displacement` und `Background Color` sind optional — leere Werte lassen das Bild unverändert bzw. verwenden voreingestellte Standardwerte.

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

`Input Image` Ein Graustufen- oder Farbbild, das verschoben werden soll (image socket).

`X displacement` Horizontale Verschiebung in Pixeln (number socket). Positive Werte verschieben nach rechts, negative nach links. Optional — bei leerem Wert wird 0 angenommen.

`Y displacement` Vertikale Verschiebung in Pixeln (number socket). Positive Werte verschieben nach unten, negative nach oben. Optional — bei leerem Wert wird 0 angenommen.

`Background Color` Füllfarbe für die freigelegten Hintergrundbereiche (pixel socket). Optional — standardmäßig schwarz, wenn nicht angegeben.

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

`Translated Image` Das resultierende Bild nach der Verschiebung (image socket). Das Ausgabebild hat dieselben Abmessungen wie das Eingabebild; der Inhalt ist verschoben und die Ränder mit der gewählten Farbe gefüllt.

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

`X displacement` Geben Sie die horizontale Verschiebung in Pixeln ein. Negative Werte verschieben nach links.

`Y displacement` Geben Sie die vertikale Verschiebung in Pixeln ein. Negative Werte verschieben nach oben.

`Background Color` Wählen Sie eine Hintergrundfarbe zum Füllen der neu freigelegten Bereiche (verwenden Sie einen `Pixel`-Eingang oder ein farbproduzierendes Block).

## ✨ Funktionen <a href="#features" id="features"></a>

* Optionale Eingänge: Lassen Sie `X displacement` oder `Y displacement` leer, um diese Achse unverändert zu lassen.
* Erhält die Größe des Eingabebildes; verschobener Inhalt wird auf die ursprüngliche Leinwand zugeschnitten.
* Funktioniert mit Graustufen- und RGB-Bildern.
* Die Hintergrundfüllung akzeptiert Einzelkanal- oder RGB-Werte, je nach Eingabebild.

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

1. Verbinden Sie einen bildproduzierenden Block mit `Input Image`.
2. Geben Sie Pixelwerte für `X displacement` und/oder `Y displacement` an, um das Bild zu verschieben.
3. Optional: Geben Sie `Background Color` an, um die Füllfarbe der freigelegten Bereiche zu steuern.
4. Verwenden Sie die Ausgabe `Translated Image` als Eingabe für nachfolgende Blöcke (Anzeigen, Analyse, Speichern).

Beispiele:

* Verschieben Sie ein Bild um 50 Pixel nach rechts und 20 Pixel nach unten, indem Sie `X displacement` = 50 und `Y displacement` = 20 setzen.
* Nur vertikal verschieben: Wert bei `Y displacement` angeben und `X displacement` leer lassen.

## 📊 Laufverhalten <a href="#evaluation" id="evaluation"></a>

Beim Ausführen liest der Block das Eingabebild und die Verschiebungswerte, verschiebt die Pixel um den gewünschten Betrag, füllt die freigelegten Regionen mit der gewählten Farbe und gibt das verschobene Bild über den Socket `Translated Image` zurück. Fehlende Verschiebungswerte werden als Null behandelt.

## 💡 Tipps und Tricks <a href="#tips-and-tricks" id="tips-and-tricks"></a>

* Damit wichtige Bildinhalte nach der Verschiebung nicht abgeschnitten werden, fügen Sie vorher einen Rand hinzu mit `Image Padding` oder vergrößern Sie die Leinwand mit `Image Resize` / `Make Image`, und verschieben Sie dann innerhalb der größeren Leinwand.
* Verwenden Sie `Pixel` oder einen kleinen `Make Image`-Block, um eine präzise Hintergrundfarbe zu erzeugen und diese an `Background Color` anzuschließen.
* Kombinieren Sie mit `Image ROI` oder `Image ROI Select`, um nur einen ausgeschnittenen Bereich zu verschieben, und setzen Sie anschließend mit `Image Concatenate` oder `Collage Images` wieder zusammen/visualisieren.
* Benötigen Sie ein Spiegeln oder Drehen nach der Verschiebung, ketten Sie `Flip Image` oder `Rotate Image Angle` hinter diesen Block.
* Für Kachel-Layouts oder Komposition: Verschieben Sie mehrere Ausschnitte und fügen Sie sie mit `Image Concatenate` oder `Merge Channels` wieder zusammen.

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

* Problem: Wichtige Bildteile werden nach der Verschiebung abgeschnitten.\
  Lösung: Fügen Sie vor der Verschiebung Rand hinzu mit `Image Padding` oder vergrößern Sie die Leinwand mit `Image Resize` / `Make Image`, dann verschieben.
* Problem: Hintergrundfarbe entspricht nicht dem erwarteten Ergebnis.\
  Lösung: Stellen Sie sicher, dass der Eingang `Background Color` das richtige Kanalformat liefert (Einzelwert für Graustufen, RGB-Triple für Farbbilder). Verwenden Sie `Pixel`, um eine exakte Farbe bereitzustellen.
* Problem: Keine Änderung nach Angabe der Verschiebungswerte.\
  Lösung: Prüfen Sie, ob die Verschiebungs-Eingänge verbunden sind und nicht leer sind; leere Werte entsprechen 0.
* Problem: Bildqualität soll bei großen Verschiebungen erhalten bleiben.\
  Lösung: Verschieben Sie zunächst auf einer größeren Leinwand und vermeiden Sie mehrfaches Zuschneiden; prüfen Sie Ergebnisse mit nachfolgenden Blöcken wie `Show Image`.


---

# Agent Instructions: 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:

```
GET https://docs.augelab.com/german/function-blocks/image-transformations/operations/image-translate.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
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.
