Guten Morgen.
Diese Transformationsmatrix ist ein Array mit 12 Elementen.
Diese besteht aus den vier Vektoren der Form (x,y,z).
Die ersten drei bestimmen die x-, y- und z-Achse des Produkts relativ zum übergeordnete Produkt, der vierte bestimmt die Verschiebung des Nullpunktes (in mm) relativ zum Achsensystem des übergeordneten Produktes.
Zusammengefaßt:
dim matrix(11)
'(xx,xy,xz, yx,yy,yz, zx,zy,zz, tx,ty,tz)
Position auslesen:
oProduct.Position.GetComponents matrix
Position setzen:
oProduct.Position.SetComponents matrix
In deinem Fall müßtest du zuerst die Position auslesen, alle y-Werte negieren und das Ergebnis wieder zurückschreiben.
oProduct.Position.GetComponents matrix
matrix(1) = -matrix(1)
matrix(4) = -matrix(4)
matrix(7) = -matrix(7)
matrix(10) = -matrix(7)
oProduct.Position.SetComponents matrix
ABER: Diese Spiegelung bezieht sich dann auf die zx-Ebene des übergeordneten Produktes...
Falls du das ganze an der globalen zx-Ebene spiegeln willst und das übergeordnete Produkt schon irgendwie verdreht ist, wird das ganze ziemlich kompliziert... dann müssen alle relativen Transformationen kombiniert werden, inverse Matrizen berechenen, und und und... alles was Vektoralgebra zu bieten hat.
mfg Alex
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP