WinCC WinCC Bild-Objekt komplett spiegeln

KARPi

Level-1
Beiträge
12
Reaktionspunkte
1
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo liebe Leute,

ich habe über Stunden ein Bild in WinCC erstellt. Nun hat die Anlage eine Durchlaufrichtung, aber kann von beiden Seiten aus bedient werden. Das heißt, mein Bild soll von beiden Bedienständen aus, ohne das Bild im Kopf zu drehen, aufgerufen werden können.

Ich müsste mein mühsam erstelltes Bild also nochmal komplett neu, nur anders herum aufbauen - und da wir ja alle faul sind, suche im WinCC v7.4 SP1 Ud5 nach einer Lösung für mein Problem.
Ich möchte mein erstelltes Bild spiegeln.

Ich kenne die Funktion "Spiegeln" eines oder mehrerer Objekte im Bild, aber das bringt mich leider nicht zu dem gewünschten Ergebnis.
Kann ich das komplette Bild, also das "Bild-Objekt" spiegeln? Das würde mir denke ich weiter helfen.
Vielleicht gibt es auch User mit anderen Ideen?

Vielen Dank im Voraus,

LG
KARPi
 
Zuletzt bearbeitet:
Die Funktion "spiegeln" existiert auch nur in der Entwicklung, und das ist auch nicht bei allen Objekten möglich.

Du könntest über ein VBS- oder C-Skript aber in Runtime alle Bildobjekte durchgehen, und die Position an der Bildmitte spiegeln (Xneu = Bildbreite - Xalt). Bei Bildobjekten ist die Position aber nicht der Mittelpunkt des Objekts, sondern die linke obere Ecke. Du müsstest also die Breite der Objekte mit in die Berechnung einbeziehen damit die Bildobjekte nicht aus dem Bild wandern.
Wenn du nicht alle Bildobjekte spiegeln willst, könntest du auch vorher die zu spiegelnden mit einem passenden Objektnamen versehen, die du im Skript abfragen kannst.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
So würden alle Bildobjekte eines Bildes an der Bildmitte gespiegelt:
Code:
Dim objScreen
Dim i
Set objScreen = HMIRuntime.ActiveScreen

For i = 1 To objScreen.ScreenItems.Count
   objScreen.ScreenItems.Item(i).Left = objScreen.Width - objScreen.ScreenItems.Item(i).Left - objScreen.ScreenItems.Item(i).Width
Next
 
Da werden die Objekte aber nur verschoben. Unsymetrische Objekte werden dabei nicht "in sich" gespiegelt.
Versuche mal alle Bildobjekte in eine Gruppe zu gruppieren, dann spiegele die Gruppe und löse die Gruppe wieder auf.

Harald
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Es hat geklappt! Vielen Dank für eure Hilfe.

Danke für den schnellen und guten Tipp @ PN/DP

Um es mit deinen Worten zu sagen: "
Es ist immer wieder überraschend, wie etwas plötzlich funktioniert, sobald man alles richtig macht."

;)[SUB][SUP]
[/SUP][/SUB]
 
Zurück
Oben