nicht durchführbare Umwandlung von 'tagVECTOR3D' in 'TVector3D'
-
Kann mir jemand sagen was hier der Fehler ist?
nicht durchführbare Umwandlung von 'System::Math::Vectors::tagVECTOR3D' in 'System::Math::Vectors::TVector3D'
Die Zeile lautet in Delphi
Var K:TVector3D begin K = Viewport3D1.Context.CurrentCameraMatrix.M[1];
Ich wollte es jetzt auf C++ übertragen:
TVector3D K = Viewport3D1->Context->CurrentCameraMatrix.M[1];
Kann mir jemand hier weiterhelfen? Die Doku hilft mir da leider wenig.
http://docwiki.embarcadero.com/Libraries/XE8/de/FMX.Types3D.TContext3D.CurrentCameraMatrix
-
Mein Problem liegt vermutlich hier:
http://docwiki.embarcadero.com/Libraries/XE8/de/System.Math.Vectors.tagVECTOR3D
Delphi spricht hier M[0] an, aber wie macht man es im C++ struct?Zusatz:
CurrentCameraMatrix ist vom Typ TMatrix3D
http://docwiki.embarcadero.com/Libraries/XE8/de/System.Math.Vectors.TMatrix3D
das M wird hier beschrieben
http://docwiki.embarcadero.com/Libraries/XE8/de/System.Math.Vectors.TMatrix3DTypeBaseTVector3D
http://docwiki.embarcadero.com/Libraries/XE6/en/System.Math.Vectors.TVector3D
-
Hallo,
tagVECTOR3D K = Viewport3D1->Context->CurrentCameraMatrix.M[1];
müsste dann die Entsprechung für C++ sein.
Und dann entweder perK.V[x] // wobei x = 0 - 3
oder explizit mittels
K.X K.Y K.Z K.W
auf die einzelnen Werte zugreifen.
Die "tag..." Typen in C++ sind reine Datenstrukturen, während die "T..." den Delphi-Klassen entsprechen.