Unit 'PasVulkan.Math' Package
[Overview][Constants][Types][Classes][Procedures and functions][Index] [#pl_pasvulkan]

TpvMatrix4x4Helper

[Properties (by Name)] [Methods (by Name)] [Events (by Name)]

Declaration

Source position: PasVulkan.Math.pas line 1068

type TpvMatrix4x4Helper = record helper

public

const

  Null = record = (RawComponents: ((0.0, 0.0, 0, 0.0), (0.0, 0.0, 0, 0.0), (0.0, 0.0, 0, 0.0), (0.0, 0.0, 0, 0.0)))

  

public

  constructor Create();

  

  constructor CreateRotateX();

  

  constructor CreateRotateY();

  

  constructor CreateRotateZ();

  

  constructor CreateRotate();

  

  constructor CreateRotation(); overload;

  

  constructor CreateSkewYX();

  

  constructor CreateSkewZX();

  

  constructor CreateSkewXY();

  

  constructor CreateSkewZY();

  

  constructor CreateSkewXZ();

  

  constructor CreateSkewYZ();

  

  constructor CreateScale();

  

  constructor CreateTranslation();

  

  constructor CreateTranslated();

  

  constructor CreateFromToRotation();

  

  constructor CreateConstruct();

  

  constructor CreateOuterProduct();

  

  constructor CreateFromQuaternion();

  

  constructor CreateFromQTangent();

  

  constructor CreateReflect();

  

  constructor CreateFrustumLeftHandedNegativeOneToPositiveOne();

  

  constructor CreateFrustumLeftHandedZeroToOne();

  

  constructor CreateFrustumLeftHandedOneToZero();

  

  constructor CreateFrustumRightHandedNegativeOneToPositiveOne();

  

  constructor CreateFrustumRightHandedZeroToOne();

  

  constructor CreateFrustumRightHandedOneToZero();

  

  constructor CreateFrustum();

  

  constructor CreateOrthoLeftHandedNegativeOneToPositiveOne();

  

  constructor CreateOrthoLeftHandedZeroToOne();

  

  constructor CreateOrthoRightHandedNegativeOneToPositiveOne();

  

  constructor CreateOrthoRightHandedZeroToOne();

  

  constructor CreateOrtho();

  

  constructor CreateOrthoLH();

  

  constructor CreateOrthoRH();

  

  constructor CreateOrthoOffCenterLH();

  

  constructor CreateOrthoOffCenterRH();

  

  constructor CreatePerspectiveLeftHandedNegativeOneToPositiveOne();

  

  constructor CreatePerspectiveLeftHandedZeroToOne();

  

  constructor CreatePerspectiveLeftHandedOneToZero();

  

  constructor CreatePerspectiveRightHandedNegativeOneToPositiveOne();

  

  constructor CreatePerspectiveRightHandedZeroToOne();

  

  constructor CreatePerspectiveRightHandedOneToZero();

  

  constructor CreatePerspectiveReversedZ();

  

  constructor CreatePerspective();

  

  constructor CreateHorizontalFOVPerspectiveLeftHandedNegativeOneToPositiveOne();

  

  constructor CreateHorizontalFOVPerspectiveLeftHandedZeroToOne();

  

  constructor CreateHorizontalFOVPerspectiveLeftHandedOneToZero();

  

  constructor CreateHorizontalFOVPerspectiveRightHandedNegativeOneToPositiveOne();

  

  constructor CreateHorizontalFOVPerspectiveRightHandedZeroToOne();

  

  constructor CreateHorizontalFOVPerspectiveRightHandedOneToZero();

  

  constructor CreateHorizontalFOVPerspectiveReversedZ();

  

  constructor CreateHorizontalFOVPerspective();

  

  constructor CreateInverseLookAt();

  

  constructor CreateLookAt();

  

  constructor CreateFill();

  

  constructor CreateConstructX();

  

  constructor CreateConstructY();

  

  constructor CreateConstructZ();

  

  constructor CreateProjectionMatrixClip();

  

  constructor CreateRecomposed();

  

  class operator implicit(TpvScalar):TpvMatrix4x4();

  

  class operator explicit(TpvScalar):TpvMatrix4x4();

  

  class operator equal(TpvMatrix4x4,TpvMatrix4x4):Boolean();

  

  class operator notequal(TpvMatrix4x4,TpvMatrix4x4):Boolean();

  

  class operator inc(TpvMatrix4x4):TpvMatrix4x4();

  

  class operator dec(TpvMatrix4x4):TpvMatrix4x4();

  

  class operator add(TpvMatrix4x4,TpvMatrix4x4):TpvMatrix4x4();

  

  class operator add(TpvMatrix4x4,TpvScalar):TpvMatrix4x4();

  

  class operator add(TpvScalar,TpvMatrix4x4):TpvMatrix4x4();

  

  class operator subtract(TpvMatrix4x4,TpvMatrix4x4):TpvMatrix4x4();

  

  class operator subtract(TpvMatrix4x4,TpvScalar):TpvMatrix4x4();

  

  class operator subtract(TpvScalar,TpvMatrix4x4):TpvMatrix4x4();

  

  class operator multiply(TpvMatrix4x4,TpvMatrix4x4):TpvMatrix4x4();

  

  class operator multiply(TpvMatrix4x4,TpvScalar):TpvMatrix4x4();

  

  class operator multiply(TpvScalar,TpvMatrix4x4):TpvMatrix4x4();

  

  class operator multiply(TpvMatrix4x4,TpvVector2):TpvVector2();

  

  class operator multiply(TpvVector2,TpvMatrix4x4):TpvVector2();

  

  class operator multiply(TpvMatrix4x4,TpvVector3):TpvVector3();

  

  class operator multiply(TpvVector3,TpvMatrix4x4):TpvVector3();

  

  class operator multiply(TpvMatrix4x4,TpvVector4):TpvVector4();

  

  class operator multiply(TpvVector4,TpvMatrix4x4):TpvVector4();

  

  class operator multiply(TpvMatrix4x4,TpvPlane):TpvPlane();

  

  class operator multiply(TpvPlane,TpvMatrix4x4):TpvPlane();

  

  class operator divide(TpvMatrix4x4,TpvMatrix4x4):TpvMatrix4x4();

  

  class operator divide(TpvMatrix4x4,TpvScalar):TpvMatrix4x4();

  

  class operator divide(TpvScalar,TpvMatrix4x4):TpvMatrix4x4();

  

  class operator intdivide(TpvMatrix4x4,TpvMatrix4x4):TpvMatrix4x4();

  

  class operator intdivide(TpvMatrix4x4,TpvScalar):TpvMatrix4x4();

  

  class operator intdivide(TpvScalar,TpvMatrix4x4):TpvMatrix4x4();

  

  class operator modulus(TpvMatrix4x4,TpvMatrix4x4):TpvMatrix4x4();

  

  class operator modulus(TpvMatrix4x4,TpvScalar):TpvMatrix4x4();

  

  class operator modulus(TpvScalar,TpvMatrix4x4):TpvMatrix4x4();

  

  class operator negative(TpvMatrix4x4):TpvMatrix4x4();

  

  class operator positive(TpvMatrix4x4):TpvMatrix4x4();

  

  function Determinant;

  

  function SimpleInverse;

  

  function Inverse;

  

  function Transpose;

  

  function Adjugate;

  

  function EulerAngles;

  

  function Normalize;

  

  function OrthoNormalize;

  

  function RobustOrthoNormalize();

  

  function ToQuaternion;

  

  function ToQTangent();

  

  function ToMatrix3x3;

  

  function ToRotation;

  

  function SimpleLerp();

  

  function SimpleNlerp();

  

  function SimpleSlerp();

  

  function SimpleElerp();

  

  function SimpleSqlerp();

  

  function Lerp();

  

  function Nlerp();

  

  function Slerp();

  

  function Elerp();

  

  function Sqlerp();

  

  function MulInverse();

  

  function MulInverted();

  

  function MulBasis();

  

  function MulAbsBasis();

  

  function MulTransposedBasis();

  

  function MulHomogen();

  

  function Decompose;

  

  property Components []: TpvScalar; default; [rw]

  

  property Columns []: TpvVector4; [rw]

  

  property Rows []: TpvVector4; [rw]

  

  case TpvInt32 of

    0: (

        RawComponents: array [0..3,0..3] of TpvScalar;

  

      );

    1: (

        LinearRawComponents: array [0..15] of TpvScalar;

  

      );

    2: (

        m00: TpvScalar;

  

        m01: TpvScalar;

  

        m02: TpvScalar;

  

        m03: TpvScalar;

  

        m10: TpvScalar;

  

        m11: TpvScalar;

  

        m12: TpvScalar;

  

        m13: TpvScalar;

  

        m20: TpvScalar;

  

        m21: TpvScalar;

  

        m22: TpvScalar;

  

        m23: TpvScalar;

  

        m30: TpvScalar;

  

        m31: TpvScalar;

  

        m32: TpvScalar;

  

        m33: TpvScalar;

  

      );

    3: (

        Tangent: TpvVector4;

  

        Bitangent: TpvVector4;

  

        Normal: TpvVector4;

  

        Translation: TpvVector4;

  

      );

    4: (

        Right: TpvVector4;

  

        Up: TpvVector4;

  

        Forwards: TpvVector4;

  

        Offset: TpvVector4;

  

      );

    5: (

        RawVectors: array [0..3] of TpvVector4;

  

      );

end;

  Identity = record = (RawComponents: ((1.0, 0.0, 0, 0.0), (0.0, 1.0, 0.0, 0.0), (0.0, 0.0, 1.0, 0.0), (0.0, 0.0, 0, 1.0)))

  

public

  constructor Create();

  

  constructor CreateRotateX();

  

  constructor CreateRotateY();

  

  constructor CreateRotateZ();

  

  constructor CreateRotate();

  

  constructor CreateRotation(); overload;

  

  constructor CreateSkewYX();

  

  constructor CreateSkewZX();

  

  constructor CreateSkewXY();

  

  constructor CreateSkewZY();

  

  constructor CreateSkewXZ();

  

  constructor CreateSkewYZ();

  

  constructor CreateScale();

  

  constructor CreateTranslation();

  

  constructor CreateTranslated();

  

  constructor CreateFromToRotation();

  

  constructor CreateConstruct();

  

  constructor CreateOuterProduct();

  

  constructor CreateFromQuaternion();

  

  constructor CreateFromQTangent();

  

  constructor CreateReflect();

  

  constructor CreateFrustumLeftHandedNegativeOneToPositiveOne();

  

  constructor CreateFrustumLeftHandedZeroToOne();

  

  constructor CreateFrustumLeftHandedOneToZero();

  

  constructor CreateFrustumRightHandedNegativeOneToPositiveOne();

  

  constructor CreateFrustumRightHandedZeroToOne();

  

  constructor CreateFrustumRightHandedOneToZero();

  

  constructor CreateFrustum();

  

  constructor CreateOrthoLeftHandedNegativeOneToPositiveOne();

  

  constructor CreateOrthoLeftHandedZeroToOne();

  

  constructor CreateOrthoRightHandedNegativeOneToPositiveOne();

  

  constructor CreateOrthoRightHandedZeroToOne();

  

  constructor CreateOrtho();

  

  constructor CreateOrthoLH();

  

  constructor CreateOrthoRH();

  

  constructor CreateOrthoOffCenterLH();

  

  constructor CreateOrthoOffCenterRH();

  

  constructor CreatePerspectiveLeftHandedNegativeOneToPositiveOne();

  

  constructor CreatePerspectiveLeftHandedZeroToOne();

  

  constructor CreatePerspectiveLeftHandedOneToZero();

  

  constructor CreatePerspectiveRightHandedNegativeOneToPositiveOne();

  

  constructor CreatePerspectiveRightHandedZeroToOne();

  

  constructor CreatePerspectiveRightHandedOneToZero();

  

  constructor CreatePerspectiveReversedZ();

  

  constructor CreatePerspective();

  

  constructor CreateHorizontalFOVPerspectiveLeftHandedNegativeOneToPositiveOne();

  

  constructor CreateHorizontalFOVPerspectiveLeftHandedZeroToOne();

  

  constructor CreateHorizontalFOVPerspectiveLeftHandedOneToZero();

  

  constructor CreateHorizontalFOVPerspectiveRightHandedNegativeOneToPositiveOne();

  

  constructor CreateHorizontalFOVPerspectiveRightHandedZeroToOne();

  

  constructor CreateHorizontalFOVPerspectiveRightHandedOneToZero();

  

  constructor CreateHorizontalFOVPerspectiveReversedZ();

  

  constructor CreateHorizontalFOVPerspective();

  

  constructor CreateInverseLookAt();

  

  constructor CreateLookAt();

  

  constructor CreateFill();

  

  constructor CreateConstructX();

  

  constructor CreateConstructY();

  

  constructor CreateConstructZ();

  

  constructor CreateProjectionMatrixClip();

  

  constructor CreateRecomposed();

  

  class operator implicit(TpvScalar):TpvMatrix4x4();

  

  class operator explicit(TpvScalar):TpvMatrix4x4();

  

  class operator equal(TpvMatrix4x4,TpvMatrix4x4):Boolean();

  

  class operator notequal(TpvMatrix4x4,TpvMatrix4x4):Boolean();

  

  class operator inc(TpvMatrix4x4):TpvMatrix4x4();

  

  class operator dec(TpvMatrix4x4):TpvMatrix4x4();

  

  class operator add(TpvMatrix4x4,TpvMatrix4x4):TpvMatrix4x4();

  

  class operator add(TpvMatrix4x4,TpvScalar):TpvMatrix4x4();

  

  class operator add(TpvScalar,TpvMatrix4x4):TpvMatrix4x4();

  

  class operator subtract(TpvMatrix4x4,TpvMatrix4x4):TpvMatrix4x4();

  

  class operator subtract(TpvMatrix4x4,TpvScalar):TpvMatrix4x4();

  

  class operator subtract(TpvScalar,TpvMatrix4x4):TpvMatrix4x4();

  

  class operator multiply(TpvMatrix4x4,TpvMatrix4x4):TpvMatrix4x4();

  

  class operator multiply(TpvMatrix4x4,TpvScalar):TpvMatrix4x4();

  

  class operator multiply(TpvScalar,TpvMatrix4x4):TpvMatrix4x4();

  

  class operator multiply(TpvMatrix4x4,TpvVector2):TpvVector2();

  

  class operator multiply(TpvVector2,TpvMatrix4x4):TpvVector2();

  

  class operator multiply(TpvMatrix4x4,TpvVector3):TpvVector3();

  

  class operator multiply(TpvVector3,TpvMatrix4x4):TpvVector3();

  

  class operator multiply(TpvMatrix4x4,TpvVector4):TpvVector4();

  

  class operator multiply(TpvVector4,TpvMatrix4x4):TpvVector4();

  

  class operator multiply(TpvMatrix4x4,TpvPlane):TpvPlane();

  

  class operator multiply(TpvPlane,TpvMatrix4x4):TpvPlane();

  

  class operator divide(TpvMatrix4x4,TpvMatrix4x4):TpvMatrix4x4();

  

  class operator divide(TpvMatrix4x4,TpvScalar):TpvMatrix4x4();

  

  class operator divide(TpvScalar,TpvMatrix4x4):TpvMatrix4x4();

  

  class operator intdivide(TpvMatrix4x4,TpvMatrix4x4):TpvMatrix4x4();

  

  class operator intdivide(TpvMatrix4x4,TpvScalar):TpvMatrix4x4();

  

  class operator intdivide(TpvScalar,TpvMatrix4x4):TpvMatrix4x4();

  

  class operator modulus(TpvMatrix4x4,TpvMatrix4x4):TpvMatrix4x4();

  

  class operator modulus(TpvMatrix4x4,TpvScalar):TpvMatrix4x4();

  

  class operator modulus(TpvScalar,TpvMatrix4x4):TpvMatrix4x4();

  

  class operator negative(TpvMatrix4x4):TpvMatrix4x4();

  

  class operator positive(TpvMatrix4x4):TpvMatrix4x4();

  

  function Determinant;

  

  function SimpleInverse;

  

  function Inverse;

  

  function Transpose;

  

  function Adjugate;

  

  function EulerAngles;

  

  function Normalize;

  

  function OrthoNormalize;

  

  function RobustOrthoNormalize();

  

  function ToQuaternion;

  

  function ToQTangent();

  

  function ToMatrix3x3;

  

  function ToRotation;

  

  function SimpleLerp();

  

  function SimpleNlerp();

  

  function SimpleSlerp();

  

  function SimpleElerp();

  

  function SimpleSqlerp();

  

  function Lerp();

  

  function Nlerp();

  

  function Slerp();

  

  function Elerp();

  

  function Sqlerp();

  

  function MulInverse();

  

  function MulInverted();

  

  function MulBasis();

  

  function MulAbsBasis();

  

  function MulTransposedBasis();

  

  function MulHomogen();

  

  function Decompose;

  

  property Components []: TpvScalar; default; [rw]

  

  property Columns []: TpvVector4; [rw]

  

  property Rows []: TpvVector4; [rw]

  

  case TpvInt32 of

    0: (

        RawComponents: array [0..3,0..3] of TpvScalar;

  

      );

    1: (

        LinearRawComponents: array [0..15] of TpvScalar;

  

      );

    2: (

        m00: TpvScalar;

  

        m01: TpvScalar;

  

        m02: TpvScalar;

  

        m03: TpvScalar;

  

        m10: TpvScalar;

  

        m11: TpvScalar;

  

        m12: TpvScalar;

  

        m13: TpvScalar;

  

        m20: TpvScalar;

  

        m21: TpvScalar;

  

        m22: TpvScalar;

  

        m23: TpvScalar;

  

        m30: TpvScalar;

  

        m31: TpvScalar;

  

        m32: TpvScalar;

  

        m33: TpvScalar;

  

      );

    3: (

        Tangent: TpvVector4;

  

        Bitangent: TpvVector4;

  

        Normal: TpvVector4;

  

        Translation: TpvVector4;

  

      );

    4: (

        Right: TpvVector4;

  

        Up: TpvVector4;

  

        Forwards: TpvVector4;

  

        Offset: TpvVector4;

  

      );

    5: (

        RawVectors: array [0..3] of TpvVector4;

  

      );

end;

  RotateY180 = record = (RawComponents: ((- 1.0, 0.0, 0, 0.0), (0.0, 1.0, 0.0, 0.0), (0.0, 0.0, - 1.0, 0.0), (0.0, 0.0, 0, 1.0)))

  

public

  constructor Create();

  

  constructor CreateRotateX();

  

  constructor CreateRotateY();

  

  constructor CreateRotateZ();

  

  constructor CreateRotate();

  

  constructor CreateRotation(); overload;

  

  constructor CreateSkewYX();

  

  constructor CreateSkewZX();

  

  constructor CreateSkewXY();

  

  constructor CreateSkewZY();

  

  constructor CreateSkewXZ();

  

  constructor CreateSkewYZ();

  

  constructor CreateScale();

  

  constructor CreateTranslation();

  

  constructor CreateTranslated();

  

  constructor CreateFromToRotation();

  

  constructor CreateConstruct();

  

  constructor CreateOuterProduct();

  

  constructor CreateFromQuaternion();

  

  constructor CreateFromQTangent();

  

  constructor CreateReflect();

  

  constructor CreateFrustumLeftHandedNegativeOneToPositiveOne();

  

  constructor CreateFrustumLeftHandedZeroToOne();

  

  constructor CreateFrustumLeftHandedOneToZero();

  

  constructor CreateFrustumRightHandedNegativeOneToPositiveOne();

  

  constructor CreateFrustumRightHandedZeroToOne();

  

  constructor CreateFrustumRightHandedOneToZero();

  

  constructor CreateFrustum();

  

  constructor CreateOrthoLeftHandedNegativeOneToPositiveOne();

  

  constructor CreateOrthoLeftHandedZeroToOne();

  

  constructor CreateOrthoRightHandedNegativeOneToPositiveOne();

  

  constructor CreateOrthoRightHandedZeroToOne();

  

  constructor CreateOrtho();

  

  constructor CreateOrthoLH();

  

  constructor CreateOrthoRH();

  

  constructor CreateOrthoOffCenterLH();

  

  constructor CreateOrthoOffCenterRH();

  

  constructor CreatePerspectiveLeftHandedNegativeOneToPositiveOne();

  

  constructor CreatePerspectiveLeftHandedZeroToOne();

  

  constructor CreatePerspectiveLeftHandedOneToZero();

  

  constructor CreatePerspectiveRightHandedNegativeOneToPositiveOne();

  

  constructor CreatePerspectiveRightHandedZeroToOne();

  

  constructor CreatePerspectiveRightHandedOneToZero();

  

  constructor CreatePerspectiveReversedZ();

  

  constructor CreatePerspective();

  

  constructor CreateHorizontalFOVPerspectiveLeftHandedNegativeOneToPositiveOne();

  

  constructor CreateHorizontalFOVPerspectiveLeftHandedZeroToOne();

  

  constructor CreateHorizontalFOVPerspectiveLeftHandedOneToZero();

  

  constructor CreateHorizontalFOVPerspectiveRightHandedNegativeOneToPositiveOne();

  

  constructor CreateHorizontalFOVPerspectiveRightHandedZeroToOne();

  

  constructor CreateHorizontalFOVPerspectiveRightHandedOneToZero();

  

  constructor CreateHorizontalFOVPerspectiveReversedZ();

  

  constructor CreateHorizontalFOVPerspective();

  

  constructor CreateInverseLookAt();

  

  constructor CreateLookAt();

  

  constructor CreateFill();

  

  constructor CreateConstructX();

  

  constructor CreateConstructY();

  

  constructor CreateConstructZ();

  

  constructor CreateProjectionMatrixClip();

  

  constructor CreateRecomposed();

  

  class operator implicit(TpvScalar):TpvMatrix4x4();

  

  class operator explicit(TpvScalar):TpvMatrix4x4();

  

  class operator equal(TpvMatrix4x4,TpvMatrix4x4):Boolean();

  

  class operator notequal(TpvMatrix4x4,TpvMatrix4x4):Boolean();

  

  class operator inc(TpvMatrix4x4):TpvMatrix4x4();

  

  class operator dec(TpvMatrix4x4):TpvMatrix4x4();

  

  class operator add(TpvMatrix4x4,TpvMatrix4x4):TpvMatrix4x4();

  

  class operator add(TpvMatrix4x4,TpvScalar):TpvMatrix4x4();

  

  class operator add(TpvScalar,TpvMatrix4x4):TpvMatrix4x4();

  

  class operator subtract(TpvMatrix4x4,TpvMatrix4x4):TpvMatrix4x4();

  

  class operator subtract(TpvMatrix4x4,TpvScalar):TpvMatrix4x4();

  

  class operator subtract(TpvScalar,TpvMatrix4x4):TpvMatrix4x4();

  

  class operator multiply(TpvMatrix4x4,TpvMatrix4x4):TpvMatrix4x4();

  

  class operator multiply(TpvMatrix4x4,TpvScalar):TpvMatrix4x4();

  

  class operator multiply(TpvScalar,TpvMatrix4x4):TpvMatrix4x4();

  

  class operator multiply(TpvMatrix4x4,TpvVector2):TpvVector2();

  

  class operator multiply(TpvVector2,TpvMatrix4x4):TpvVector2();

  

  class operator multiply(TpvMatrix4x4,TpvVector3):TpvVector3();

  

  class operator multiply(TpvVector3,TpvMatrix4x4):TpvVector3();

  

  class operator multiply(TpvMatrix4x4,TpvVector4):TpvVector4();

  

  class operator multiply(TpvVector4,TpvMatrix4x4):TpvVector4();

  

  class operator multiply(TpvMatrix4x4,TpvPlane):TpvPlane();

  

  class operator multiply(TpvPlane,TpvMatrix4x4):TpvPlane();

  

  class operator divide(TpvMatrix4x4,TpvMatrix4x4):TpvMatrix4x4();

  

  class operator divide(TpvMatrix4x4,TpvScalar):TpvMatrix4x4();

  

  class operator divide(TpvScalar,TpvMatrix4x4):TpvMatrix4x4();

  

  class operator intdivide(TpvMatrix4x4,TpvMatrix4x4):TpvMatrix4x4();

  

  class operator intdivide(TpvMatrix4x4,TpvScalar):TpvMatrix4x4();

  

  class operator intdivide(TpvScalar,TpvMatrix4x4):TpvMatrix4x4();

  

  class operator modulus(TpvMatrix4x4,TpvMatrix4x4):TpvMatrix4x4();

  

  class operator modulus(TpvMatrix4x4,TpvScalar):TpvMatrix4x4();

  

  class operator modulus(TpvScalar,TpvMatrix4x4):TpvMatrix4x4();

  

  class operator negative(TpvMatrix4x4):TpvMatrix4x4();

  

  class operator positive(TpvMatrix4x4):TpvMatrix4x4();

  

  function Determinant;

  

  function SimpleInverse;

  

  function Inverse;

  

  function Transpose;

  

  function Adjugate;

  

  function EulerAngles;

  

  function Normalize;

  

  function OrthoNormalize;

  

  function RobustOrthoNormalize();

  

  function ToQuaternion;

  

  function ToQTangent();

  

  function ToMatrix3x3;

  

  function ToRotation;

  

  function SimpleLerp();

  

  function SimpleNlerp();

  

  function SimpleSlerp();

  

  function SimpleElerp();

  

  function SimpleSqlerp();

  

  function Lerp();

  

  function Nlerp();

  

  function Slerp();

  

  function Elerp();

  

  function Sqlerp();

  

  function MulInverse();

  

  function MulInverted();

  

  function MulBasis();

  

  function MulAbsBasis();

  

  function MulTransposedBasis();

  

  function MulHomogen();

  

  function Decompose;

  

  property Components []: TpvScalar; default; [rw]

  

  property Columns []: TpvVector4; [rw]

  

  property Rows []: TpvVector4; [rw]

  

  case TpvInt32 of

    0: (

        RawComponents: array [0..3,0..3] of TpvScalar;

  

      );

    1: (

        LinearRawComponents: array [0..15] of TpvScalar;

  

      );

    2: (

        m00: TpvScalar;

  

        m01: TpvScalar;

  

        m02: TpvScalar;

  

        m03: TpvScalar;

  

        m10: TpvScalar;

  

        m11: TpvScalar;

  

        m12: TpvScalar;

  

        m13: TpvScalar;

  

        m20: TpvScalar;

  

        m21: TpvScalar;

  

        m22: TpvScalar;

  

        m23: TpvScalar;

  

        m30: TpvScalar;

  

        m31: TpvScalar;

  

        m32: TpvScalar;

  

        m33: TpvScalar;

  

      );

    3: (

        Tangent: TpvVector4;

  

        Bitangent: TpvVector4;

  

        Normal: TpvVector4;

  

        Translation: TpvVector4;

  

      );

    4: (

        Right: TpvVector4;

  

        Up: TpvVector4;

  

        Forwards: TpvVector4;

  

        Offset: TpvVector4;

  

      );

    5: (

        RawVectors: array [0..3] of TpvVector4;

  

      );

end;

  RightToLeftHanded = record = (RawComponents: ((1.0, 0.0, 0, 0.0), (0.0, 1.0, 0.0, 0.0), (0.0, 0.0, - 1.0, 0.0), (0.0, 0.0, 0, 1.0)))

  

public

  constructor Create();

  

  constructor CreateRotateX();

  

  constructor CreateRotateY();

  

  constructor CreateRotateZ();

  

  constructor CreateRotate();

  

  constructor CreateRotation(); overload;

  

  constructor CreateSkewYX();

  

  constructor CreateSkewZX();

  

  constructor CreateSkewXY();

  

  constructor CreateSkewZY();

  

  constructor CreateSkewXZ();

  

  constructor CreateSkewYZ();

  

  constructor CreateScale();

  

  constructor CreateTranslation();

  

  constructor CreateTranslated();

  

  constructor CreateFromToRotation();

  

  constructor CreateConstruct();

  

  constructor CreateOuterProduct();

  

  constructor CreateFromQuaternion();

  

  constructor CreateFromQTangent();

  

  constructor CreateReflect();

  

  constructor CreateFrustumLeftHandedNegativeOneToPositiveOne();

  

  constructor CreateFrustumLeftHandedZeroToOne();

  

  constructor CreateFrustumLeftHandedOneToZero();

  

  constructor CreateFrustumRightHandedNegativeOneToPositiveOne();

  

  constructor CreateFrustumRightHandedZeroToOne();

  

  constructor CreateFrustumRightHandedOneToZero();

  

  constructor CreateFrustum();

  

  constructor CreateOrthoLeftHandedNegativeOneToPositiveOne();

  

  constructor CreateOrthoLeftHandedZeroToOne();

  

  constructor CreateOrthoRightHandedNegativeOneToPositiveOne();

  

  constructor CreateOrthoRightHandedZeroToOne();

  

  constructor CreateOrtho();

  

  constructor CreateOrthoLH();

  

  constructor CreateOrthoRH();

  

  constructor CreateOrthoOffCenterLH();

  

  constructor CreateOrthoOffCenterRH();

  

  constructor CreatePerspectiveLeftHandedNegativeOneToPositiveOne();

  

  constructor CreatePerspectiveLeftHandedZeroToOne();

  

  constructor CreatePerspectiveLeftHandedOneToZero();

  

  constructor CreatePerspectiveRightHandedNegativeOneToPositiveOne();

  

  constructor CreatePerspectiveRightHandedZeroToOne();

  

  constructor CreatePerspectiveRightHandedOneToZero();

  

  constructor CreatePerspectiveReversedZ();

  

  constructor CreatePerspective();

  

  constructor CreateHorizontalFOVPerspectiveLeftHandedNegativeOneToPositiveOne();

  

  constructor CreateHorizontalFOVPerspectiveLeftHandedZeroToOne();

  

  constructor CreateHorizontalFOVPerspectiveLeftHandedOneToZero();

  

  constructor CreateHorizontalFOVPerspectiveRightHandedNegativeOneToPositiveOne();

  

  constructor CreateHorizontalFOVPerspectiveRightHandedZeroToOne();

  

  constructor CreateHorizontalFOVPerspectiveRightHandedOneToZero();

  

  constructor CreateHorizontalFOVPerspectiveReversedZ();

  

  constructor CreateHorizontalFOVPerspective();

  

  constructor CreateInverseLookAt();

  

  constructor CreateLookAt();

  

  constructor CreateFill();

  

  constructor CreateConstructX();

  

  constructor CreateConstructY();

  

  constructor CreateConstructZ();

  

  constructor CreateProjectionMatrixClip();

  

  constructor CreateRecomposed();

  

  class operator implicit(TpvScalar):TpvMatrix4x4();

  

  class operator explicit(TpvScalar):TpvMatrix4x4();

  

  class operator equal(TpvMatrix4x4,TpvMatrix4x4):Boolean();

  

  class operator notequal(TpvMatrix4x4,TpvMatrix4x4):Boolean();

  

  class operator inc(TpvMatrix4x4):TpvMatrix4x4();

  

  class operator dec(TpvMatrix4x4):TpvMatrix4x4();

  

  class operator add(TpvMatrix4x4,TpvMatrix4x4):TpvMatrix4x4();

  

  class operator add(TpvMatrix4x4,TpvScalar):TpvMatrix4x4();

  

  class operator add(TpvScalar,TpvMatrix4x4):TpvMatrix4x4();

  

  class operator subtract(TpvMatrix4x4,TpvMatrix4x4):TpvMatrix4x4();

  

  class operator subtract(TpvMatrix4x4,TpvScalar):TpvMatrix4x4();

  

  class operator subtract(TpvScalar,TpvMatrix4x4):TpvMatrix4x4();

  

  class operator multiply(TpvMatrix4x4,TpvMatrix4x4):TpvMatrix4x4();

  

  class operator multiply(TpvMatrix4x4,TpvScalar):TpvMatrix4x4();

  

  class operator multiply(TpvScalar,TpvMatrix4x4):TpvMatrix4x4();

  

  class operator multiply(TpvMatrix4x4,TpvVector2):TpvVector2();

  

  class operator multiply(TpvVector2,TpvMatrix4x4):TpvVector2();

  

  class operator multiply(TpvMatrix4x4,TpvVector3):TpvVector3();

  

  class operator multiply(TpvVector3,TpvMatrix4x4):TpvVector3();

  

  class operator multiply(TpvMatrix4x4,TpvVector4):TpvVector4();

  

  class operator multiply(TpvVector4,TpvMatrix4x4):TpvVector4();

  

  class operator multiply(TpvMatrix4x4,TpvPlane):TpvPlane();

  

  class operator multiply(TpvPlane,TpvMatrix4x4):TpvPlane();

  

  class operator divide(TpvMatrix4x4,TpvMatrix4x4):TpvMatrix4x4();

  

  class operator divide(TpvMatrix4x4,TpvScalar):TpvMatrix4x4();

  

  class operator divide(TpvScalar,TpvMatrix4x4):TpvMatrix4x4();

  

  class operator intdivide(TpvMatrix4x4,TpvMatrix4x4):TpvMatrix4x4();

  

  class operator intdivide(TpvMatrix4x4,TpvScalar):TpvMatrix4x4();

  

  class operator intdivide(TpvScalar,TpvMatrix4x4):TpvMatrix4x4();

  

  class operator modulus(TpvMatrix4x4,TpvMatrix4x4):TpvMatrix4x4();

  

  class operator modulus(TpvMatrix4x4,TpvScalar):TpvMatrix4x4();

  

  class operator modulus(TpvScalar,TpvMatrix4x4):TpvMatrix4x4();

  

  class operator negative(TpvMatrix4x4):TpvMatrix4x4();

  

  class operator positive(TpvMatrix4x4):TpvMatrix4x4();

  

  function Determinant;

  

  function SimpleInverse;

  

  function Inverse;

  

  function Transpose;

  

  function Adjugate;

  

  function EulerAngles;

  

  function Normalize;

  

  function OrthoNormalize;

  

  function RobustOrthoNormalize();

  

  function ToQuaternion;

  

  function ToQTangent();

  

  function ToMatrix3x3;

  

  function ToRotation;

  

  function SimpleLerp();

  

  function SimpleNlerp();

  

  function SimpleSlerp();

  

  function SimpleElerp();

  

  function SimpleSqlerp();

  

  function Lerp();

  

  function Nlerp();

  

  function Slerp();

  

  function Elerp();

  

  function Sqlerp();

  

  function MulInverse();

  

  function MulInverted();

  

  function MulBasis();

  

  function MulAbsBasis();

  

  function MulTransposedBasis();

  

  function MulHomogen();

  

  function Decompose;

  

  property Components []: TpvScalar; default; [rw]

  

  property Columns []: TpvVector4; [rw]

  

  property Rows []: TpvVector4; [rw]

  

  case TpvInt32 of

    0: (

        RawComponents: array [0..3,0..3] of TpvScalar;

  

      );

    1: (

        LinearRawComponents: array [0..15] of TpvScalar;

  

      );

    2: (

        m00: TpvScalar;

  

        m01: TpvScalar;

  

        m02: TpvScalar;

  

        m03: TpvScalar;

  

        m10: TpvScalar;

  

        m11: TpvScalar;

  

        m12: TpvScalar;

  

        m13: TpvScalar;

  

        m20: TpvScalar;

  

        m21: TpvScalar;

  

        m22: TpvScalar;

  

        m23: TpvScalar;

  

        m30: TpvScalar;

  

        m31: TpvScalar;

  

        m32: TpvScalar;

  

        m33: TpvScalar;

  

      );

    3: (

        Tangent: TpvVector4;

  

        Bitangent: TpvVector4;

  

        Normal: TpvVector4;

  

        Translation: TpvVector4;

  

      );

    4: (

        Right: TpvVector4;

  

        Up: TpvVector4;

  

        Forwards: TpvVector4;

  

        Offset: TpvVector4;

  

      );

    5: (

        RawVectors: array [0..3] of TpvVector4;

  

      );

end;

  Flip = record = (RawComponents: ((0.0, 0.0, - 1.0, 0.0), (- 1.0, 0.0, 0, 0.0), (0.0, 1.0, 0.0, 0.0), (0.0, 0.0, 0, 1.0)))

  

public

  constructor Create();

  

  constructor CreateRotateX();

  

  constructor CreateRotateY();

  

  constructor CreateRotateZ();

  

  constructor CreateRotate();

  

  constructor CreateRotation(); overload;

  

  constructor CreateSkewYX();

  

  constructor CreateSkewZX();

  

  constructor CreateSkewXY();

  

  constructor CreateSkewZY();

  

  constructor CreateSkewXZ();

  

  constructor CreateSkewYZ();

  

  constructor CreateScale();

  

  constructor CreateTranslation();

  

  constructor CreateTranslated();

  

  constructor CreateFromToRotation();

  

  constructor CreateConstruct();

  

  constructor CreateOuterProduct();

  

  constructor CreateFromQuaternion();

  

  constructor CreateFromQTangent();

  

  constructor CreateReflect();

  

  constructor CreateFrustumLeftHandedNegativeOneToPositiveOne();

  

  constructor CreateFrustumLeftHandedZeroToOne();

  

  constructor CreateFrustumLeftHandedOneToZero();

  

  constructor CreateFrustumRightHandedNegativeOneToPositiveOne();

  

  constructor CreateFrustumRightHandedZeroToOne();

  

  constructor CreateFrustumRightHandedOneToZero();

  

  constructor CreateFrustum();

  

  constructor CreateOrthoLeftHandedNegativeOneToPositiveOne();

  

  constructor CreateOrthoLeftHandedZeroToOne();

  

  constructor CreateOrthoRightHandedNegativeOneToPositiveOne();

  

  constructor CreateOrthoRightHandedZeroToOne();

  

  constructor CreateOrtho();

  

  constructor CreateOrthoLH();

  

  constructor CreateOrthoRH();

  

  constructor CreateOrthoOffCenterLH();

  

  constructor CreateOrthoOffCenterRH();

  

  constructor CreatePerspectiveLeftHandedNegativeOneToPositiveOne();

  

  constructor CreatePerspectiveLeftHandedZeroToOne();

  

  constructor CreatePerspectiveLeftHandedOneToZero();

  

  constructor CreatePerspectiveRightHandedNegativeOneToPositiveOne();

  

  constructor CreatePerspectiveRightHandedZeroToOne();

  

  constructor CreatePerspectiveRightHandedOneToZero();

  

  constructor CreatePerspectiveReversedZ();

  

  constructor CreatePerspective();

  

  constructor CreateHorizontalFOVPerspectiveLeftHandedNegativeOneToPositiveOne();

  

  constructor CreateHorizontalFOVPerspectiveLeftHandedZeroToOne();

  

  constructor CreateHorizontalFOVPerspectiveLeftHandedOneToZero();

  

  constructor CreateHorizontalFOVPerspectiveRightHandedNegativeOneToPositiveOne();

  

  constructor CreateHorizontalFOVPerspectiveRightHandedZeroToOne();

  

  constructor CreateHorizontalFOVPerspectiveRightHandedOneToZero();

  

  constructor CreateHorizontalFOVPerspectiveReversedZ();

  

  constructor CreateHorizontalFOVPerspective();

  

  constructor CreateInverseLookAt();

  

  constructor CreateLookAt();

  

  constructor CreateFill();

  

  constructor CreateConstructX();

  

  constructor CreateConstructY();

  

  constructor CreateConstructZ();

  

  constructor CreateProjectionMatrixClip();

  

  constructor CreateRecomposed();

  

  class operator implicit(TpvScalar):TpvMatrix4x4();

  

  class operator explicit(TpvScalar):TpvMatrix4x4();

  

  class operator equal(TpvMatrix4x4,TpvMatrix4x4):Boolean();

  

  class operator notequal(TpvMatrix4x4,TpvMatrix4x4):Boolean();

  

  class operator inc(TpvMatrix4x4):TpvMatrix4x4();

  

  class operator dec(TpvMatrix4x4):TpvMatrix4x4();

  

  class operator add(TpvMatrix4x4,TpvMatrix4x4):TpvMatrix4x4();

  

  class operator add(TpvMatrix4x4,TpvScalar):TpvMatrix4x4();

  

  class operator add(TpvScalar,TpvMatrix4x4):TpvMatrix4x4();

  

  class operator subtract(TpvMatrix4x4,TpvMatrix4x4):TpvMatrix4x4();

  

  class operator subtract(TpvMatrix4x4,TpvScalar):TpvMatrix4x4();

  

  class operator subtract(TpvScalar,TpvMatrix4x4):TpvMatrix4x4();

  

  class operator multiply(TpvMatrix4x4,TpvMatrix4x4):TpvMatrix4x4();

  

  class operator multiply(TpvMatrix4x4,TpvScalar):TpvMatrix4x4();

  

  class operator multiply(TpvScalar,TpvMatrix4x4):TpvMatrix4x4();

  

  class operator multiply(TpvMatrix4x4,TpvVector2):TpvVector2();

  

  class operator multiply(TpvVector2,TpvMatrix4x4):TpvVector2();

  

  class operator multiply(TpvMatrix4x4,TpvVector3):TpvVector3();

  

  class operator multiply(TpvVector3,TpvMatrix4x4):TpvVector3();

  

  class operator multiply(TpvMatrix4x4,TpvVector4):TpvVector4();

  

  class operator multiply(TpvVector4,TpvMatrix4x4):TpvVector4();

  

  class operator multiply(TpvMatrix4x4,TpvPlane):TpvPlane();

  

  class operator multiply(TpvPlane,TpvMatrix4x4):TpvPlane();

  

  class operator divide(TpvMatrix4x4,TpvMatrix4x4):TpvMatrix4x4();

  

  class operator divide(TpvMatrix4x4,TpvScalar):TpvMatrix4x4();

  

  class operator divide(TpvScalar,TpvMatrix4x4):TpvMatrix4x4();

  

  class operator intdivide(TpvMatrix4x4,TpvMatrix4x4):TpvMatrix4x4();

  

  class operator intdivide(TpvMatrix4x4,TpvScalar):TpvMatrix4x4();

  

  class operator intdivide(TpvScalar,TpvMatrix4x4):TpvMatrix4x4();

  

  class operator modulus(TpvMatrix4x4,TpvMatrix4x4):TpvMatrix4x4();

  

  class operator modulus(TpvMatrix4x4,TpvScalar):TpvMatrix4x4();

  

  class operator modulus(TpvScalar,TpvMatrix4x4):TpvMatrix4x4();

  

  class operator negative(TpvMatrix4x4):TpvMatrix4x4();

  

  class operator positive(TpvMatrix4x4):TpvMatrix4x4();

  

  function Determinant;

  

  function SimpleInverse;

  

  function Inverse;

  

  function Transpose;

  

  function Adjugate;

  

  function EulerAngles;

  

  function Normalize;

  

  function OrthoNormalize;

  

  function RobustOrthoNormalize();

  

  function ToQuaternion;

  

  function ToQTangent();

  

  function ToMatrix3x3;

  

  function ToRotation;

  

  function SimpleLerp();

  

  function SimpleNlerp();

  

  function SimpleSlerp();

  

  function SimpleElerp();

  

  function SimpleSqlerp();

  

  function Lerp();

  

  function Nlerp();

  

  function Slerp();

  

  function Elerp();

  

  function Sqlerp();

  

  function MulInverse();

  

  function MulInverted();

  

  function MulBasis();

  

  function MulAbsBasis();

  

  function MulTransposedBasis();

  

  function MulHomogen();

  

  function Decompose;

  

  property Components []: TpvScalar; default; [rw]

  

  property Columns []: TpvVector4; [rw]

  

  property Rows []: TpvVector4; [rw]

  

  case TpvInt32 of

    0: (

        RawComponents: array [0..3,0..3] of TpvScalar;

  

      );

    1: (

        LinearRawComponents: array [0..15] of TpvScalar;

  

      );

    2: (

        m00: TpvScalar;

  

        m01: TpvScalar;

  

        m02: TpvScalar;

  

        m03: TpvScalar;

  

        m10: TpvScalar;

  

        m11: TpvScalar;

  

        m12: TpvScalar;

  

        m13: TpvScalar;

  

        m20: TpvScalar;

  

        m21: TpvScalar;

  

        m22: TpvScalar;

  

        m23: TpvScalar;

  

        m30: TpvScalar;

  

        m31: TpvScalar;

  

        m32: TpvScalar;

  

        m33: TpvScalar;

  

      );

    3: (

        Tangent: TpvVector4;

  

        Bitangent: TpvVector4;

  

        Normal: TpvVector4;

  

        Translation: TpvVector4;

  

      );

    4: (

        Right: TpvVector4;

  

        Up: TpvVector4;

  

        Forwards: TpvVector4;

  

        Offset: TpvVector4;

  

      );

    5: (

        RawVectors: array [0..3] of TpvVector4;

  

      );

end;

  InverseFlip = record = (RawComponents: ((0.0, - 1.0, 0.0, 0.0), (0.0, 0.0, 1.0, 0.0), (- 1.0, 0.0, 0, 0.0), (0.0, 0.0, 0, 1.0)))

  

public

  constructor Create();

  

  constructor CreateRotateX();

  

  constructor CreateRotateY();

  

  constructor CreateRotateZ();

  

  constructor CreateRotate();

  

  constructor CreateRotation(); overload;

  

  constructor CreateSkewYX();

  

  constructor CreateSkewZX();

  

  constructor CreateSkewXY();

  

  constructor CreateSkewZY();

  

  constructor CreateSkewXZ();

  

  constructor CreateSkewYZ();

  

  constructor CreateScale();

  

  constructor CreateTranslation();

  

  constructor CreateTranslated();

  

  constructor CreateFromToRotation();

  

  constructor CreateConstruct();

  

  constructor CreateOuterProduct();

  

  constructor CreateFromQuaternion();

  

  constructor CreateFromQTangent();

  

  constructor CreateReflect();

  

  constructor CreateFrustumLeftHandedNegativeOneToPositiveOne();

  

  constructor CreateFrustumLeftHandedZeroToOne();

  

  constructor CreateFrustumLeftHandedOneToZero();

  

  constructor CreateFrustumRightHandedNegativeOneToPositiveOne();

  

  constructor CreateFrustumRightHandedZeroToOne();

  

  constructor CreateFrustumRightHandedOneToZero();

  

  constructor CreateFrustum();

  

  constructor CreateOrthoLeftHandedNegativeOneToPositiveOne();

  

  constructor CreateOrthoLeftHandedZeroToOne();

  

  constructor CreateOrthoRightHandedNegativeOneToPositiveOne();

  

  constructor CreateOrthoRightHandedZeroToOne();

  

  constructor CreateOrtho();

  

  constructor CreateOrthoLH();

  

  constructor CreateOrthoRH();

  

  constructor CreateOrthoOffCenterLH();

  

  constructor CreateOrthoOffCenterRH();

  

  constructor CreatePerspectiveLeftHandedNegativeOneToPositiveOne();

  

  constructor CreatePerspectiveLeftHandedZeroToOne();

  

  constructor CreatePerspectiveLeftHandedOneToZero();

  

  constructor CreatePerspectiveRightHandedNegativeOneToPositiveOne();

  

  constructor CreatePerspectiveRightHandedZeroToOne();

  

  constructor CreatePerspectiveRightHandedOneToZero();

  

  constructor CreatePerspectiveReversedZ();

  

  constructor CreatePerspective();

  

  constructor CreateHorizontalFOVPerspectiveLeftHandedNegativeOneToPositiveOne();

  

  constructor CreateHorizontalFOVPerspectiveLeftHandedZeroToOne();

  

  constructor CreateHorizontalFOVPerspectiveLeftHandedOneToZero();

  

  constructor CreateHorizontalFOVPerspectiveRightHandedNegativeOneToPositiveOne();

  

  constructor CreateHorizontalFOVPerspectiveRightHandedZeroToOne();

  

  constructor CreateHorizontalFOVPerspectiveRightHandedOneToZero();

  

  constructor CreateHorizontalFOVPerspectiveReversedZ();

  

  constructor CreateHorizontalFOVPerspective();

  

  constructor CreateInverseLookAt();

  

  constructor CreateLookAt();

  

  constructor CreateFill();

  

  constructor CreateConstructX();

  

  constructor CreateConstructY();

  

  constructor CreateConstructZ();

  

  constructor CreateProjectionMatrixClip();

  

  constructor CreateRecomposed();

  

  class operator implicit(TpvScalar):TpvMatrix4x4();

  

  class operator explicit(TpvScalar):TpvMatrix4x4();

  

  class operator equal(TpvMatrix4x4,TpvMatrix4x4):Boolean();

  

  class operator notequal(TpvMatrix4x4,TpvMatrix4x4):Boolean();

  

  class operator inc(TpvMatrix4x4):TpvMatrix4x4();

  

  class operator dec(TpvMatrix4x4):TpvMatrix4x4();

  

  class operator add(TpvMatrix4x4,TpvMatrix4x4):TpvMatrix4x4();

  

  class operator add(TpvMatrix4x4,TpvScalar):TpvMatrix4x4();

  

  class operator add(TpvScalar,TpvMatrix4x4):TpvMatrix4x4();

  

  class operator subtract(TpvMatrix4x4,TpvMatrix4x4):TpvMatrix4x4();

  

  class operator subtract(TpvMatrix4x4,TpvScalar):TpvMatrix4x4();

  

  class operator subtract(TpvScalar,TpvMatrix4x4):TpvMatrix4x4();

  

  class operator multiply(TpvMatrix4x4,TpvMatrix4x4):TpvMatrix4x4();

  

  class operator multiply(TpvMatrix4x4,TpvScalar):TpvMatrix4x4();

  

  class operator multiply(TpvScalar,TpvMatrix4x4):TpvMatrix4x4();

  

  class operator multiply(TpvMatrix4x4,TpvVector2):TpvVector2();

  

  class operator multiply(TpvVector2,TpvMatrix4x4):TpvVector2();

  

  class operator multiply(TpvMatrix4x4,TpvVector3):TpvVector3();

  

  class operator multiply(TpvVector3,TpvMatrix4x4):TpvVector3();

  

  class operator multiply(TpvMatrix4x4,TpvVector4):TpvVector4();

  

  class operator multiply(TpvVector4,TpvMatrix4x4):TpvVector4();

  

  class operator multiply(TpvMatrix4x4,TpvPlane):TpvPlane();

  

  class operator multiply(TpvPlane,TpvMatrix4x4):TpvPlane();

  

  class operator divide(TpvMatrix4x4,TpvMatrix4x4):TpvMatrix4x4();

  

  class operator divide(TpvMatrix4x4,TpvScalar):TpvMatrix4x4();

  

  class operator divide(TpvScalar,TpvMatrix4x4):TpvMatrix4x4();

  

  class operator intdivide(TpvMatrix4x4,TpvMatrix4x4):TpvMatrix4x4();

  

  class operator intdivide(TpvMatrix4x4,TpvScalar):TpvMatrix4x4();

  

  class operator intdivide(TpvScalar,TpvMatrix4x4):TpvMatrix4x4();

  

  class operator modulus(TpvMatrix4x4,TpvMatrix4x4):TpvMatrix4x4();

  

  class operator modulus(TpvMatrix4x4,TpvScalar):TpvMatrix4x4();

  

  class operator modulus(TpvScalar,TpvMatrix4x4):TpvMatrix4x4();

  

  class operator negative(TpvMatrix4x4):TpvMatrix4x4();

  

  class operator positive(TpvMatrix4x4):TpvMatrix4x4();

  

  function Determinant;

  

  function SimpleInverse;

  

  function Inverse;

  

  function Transpose;

  

  function Adjugate;

  

  function EulerAngles;

  

  function Normalize;

  

  function OrthoNormalize;

  

  function RobustOrthoNormalize();

  

  function ToQuaternion;

  

  function ToQTangent();

  

  function ToMatrix3x3;

  

  function ToRotation;

  

  function SimpleLerp();

  

  function SimpleNlerp();

  

  function SimpleSlerp();

  

  function SimpleElerp();

  

  function SimpleSqlerp();

  

  function Lerp();

  

  function Nlerp();

  

  function Slerp();

  

  function Elerp();

  

  function Sqlerp();

  

  function MulInverse();

  

  function MulInverted();

  

  function MulBasis();

  

  function MulAbsBasis();

  

  function MulTransposedBasis();

  

  function MulHomogen();

  

  function Decompose;

  

  property Components []: TpvScalar; default; [rw]

  

  property Columns []: TpvVector4; [rw]

  

  property Rows []: TpvVector4; [rw]

  

  case TpvInt32 of

    0: (

        RawComponents: array [0..3,0..3] of TpvScalar;

  

      );

    1: (

        LinearRawComponents: array [0..15] of TpvScalar;

  

      );

    2: (

        m00: TpvScalar;

  

        m01: TpvScalar;

  

        m02: TpvScalar;

  

        m03: TpvScalar;

  

        m10: TpvScalar;

  

        m11: TpvScalar;

  

        m12: TpvScalar;

  

        m13: TpvScalar;

  

        m20: TpvScalar;

  

        m21: TpvScalar;

  

        m22: TpvScalar;

  

        m23: TpvScalar;

  

        m30: TpvScalar;

  

        m31: TpvScalar;

  

        m32: TpvScalar;

  

        m33: TpvScalar;

  

      );

    3: (

        Tangent: TpvVector4;

  

        Bitangent: TpvVector4;

  

        Normal: TpvVector4;

  

        Translation: TpvVector4;

  

      );

    4: (

        Right: TpvVector4;

  

        Up: TpvVector4;

  

        Forwards: TpvVector4;

  

        Offset: TpvVector4;

  

      );

    5: (

        RawVectors: array [0..3] of TpvVector4;

  

      );

end;

  FlipYZ = record = (RawComponents: ((1.0, 0.0, 0, 0.0), (0.0, 0.0, 1.0, 0.0), (0.0, - 1.0, 0.0, 0.0), (0.0, 0.0, 0, 1.0)))

  

public

  constructor Create();

  

  constructor CreateRotateX();

  

  constructor CreateRotateY();

  

  constructor CreateRotateZ();

  

  constructor CreateRotate();

  

  constructor CreateRotation(); overload;

  

  constructor CreateSkewYX();

  

  constructor CreateSkewZX();

  

  constructor CreateSkewXY();

  

  constructor CreateSkewZY();

  

  constructor CreateSkewXZ();

  

  constructor CreateSkewYZ();

  

  constructor CreateScale();

  

  constructor CreateTranslation();

  

  constructor CreateTranslated();

  

  constructor CreateFromToRotation();

  

  constructor CreateConstruct();

  

  constructor CreateOuterProduct();

  

  constructor CreateFromQuaternion();

  

  constructor CreateFromQTangent();

  

  constructor CreateReflect();

  

  constructor CreateFrustumLeftHandedNegativeOneToPositiveOne();

  

  constructor CreateFrustumLeftHandedZeroToOne();

  

  constructor CreateFrustumLeftHandedOneToZero();

  

  constructor CreateFrustumRightHandedNegativeOneToPositiveOne();

  

  constructor CreateFrustumRightHandedZeroToOne();

  

  constructor CreateFrustumRightHandedOneToZero();

  

  constructor CreateFrustum();

  

  constructor CreateOrthoLeftHandedNegativeOneToPositiveOne();

  

  constructor CreateOrthoLeftHandedZeroToOne();

  

  constructor CreateOrthoRightHandedNegativeOneToPositiveOne();

  

  constructor CreateOrthoRightHandedZeroToOne();

  

  constructor CreateOrtho();

  

  constructor CreateOrthoLH();

  

  constructor CreateOrthoRH();

  

  constructor CreateOrthoOffCenterLH();

  

  constructor CreateOrthoOffCenterRH();

  

  constructor CreatePerspectiveLeftHandedNegativeOneToPositiveOne();

  

  constructor CreatePerspectiveLeftHandedZeroToOne();

  

  constructor CreatePerspectiveLeftHandedOneToZero();

  

  constructor CreatePerspectiveRightHandedNegativeOneToPositiveOne();

  

  constructor CreatePerspectiveRightHandedZeroToOne();

  

  constructor CreatePerspectiveRightHandedOneToZero();

  

  constructor CreatePerspectiveReversedZ();

  

  constructor CreatePerspective();

  

  constructor CreateHorizontalFOVPerspectiveLeftHandedNegativeOneToPositiveOne();

  

  constructor CreateHorizontalFOVPerspectiveLeftHandedZeroToOne();

  

  constructor CreateHorizontalFOVPerspectiveLeftHandedOneToZero();

  

  constructor CreateHorizontalFOVPerspectiveRightHandedNegativeOneToPositiveOne();

  

  constructor CreateHorizontalFOVPerspectiveRightHandedZeroToOne();

  

  constructor CreateHorizontalFOVPerspectiveRightHandedOneToZero();

  

  constructor CreateHorizontalFOVPerspectiveReversedZ();

  

  constructor CreateHorizontalFOVPerspective();

  

  constructor CreateInverseLookAt();

  

  constructor CreateLookAt();

  

  constructor CreateFill();

  

  constructor CreateConstructX();

  

  constructor CreateConstructY();

  

  constructor CreateConstructZ();

  

  constructor CreateProjectionMatrixClip();

  

  constructor CreateRecomposed();

  

  class operator implicit(TpvScalar):TpvMatrix4x4();

  

  class operator explicit(TpvScalar):TpvMatrix4x4();

  

  class operator equal(TpvMatrix4x4,TpvMatrix4x4):Boolean();

  

  class operator notequal(TpvMatrix4x4,TpvMatrix4x4):Boolean();

  

  class operator inc(TpvMatrix4x4):TpvMatrix4x4();

  

  class operator dec(TpvMatrix4x4):TpvMatrix4x4();

  

  class operator add(TpvMatrix4x4,TpvMatrix4x4):TpvMatrix4x4();

  

  class operator add(TpvMatrix4x4,TpvScalar):TpvMatrix4x4();

  

  class operator add(TpvScalar,TpvMatrix4x4):TpvMatrix4x4();

  

  class operator subtract(TpvMatrix4x4,TpvMatrix4x4):TpvMatrix4x4();

  

  class operator subtract(TpvMatrix4x4,TpvScalar):TpvMatrix4x4();

  

  class operator subtract(TpvScalar,TpvMatrix4x4):TpvMatrix4x4();

  

  class operator multiply(TpvMatrix4x4,TpvMatrix4x4):TpvMatrix4x4();

  

  class operator multiply(TpvMatrix4x4,TpvScalar):TpvMatrix4x4();

  

  class operator multiply(TpvScalar,TpvMatrix4x4):TpvMatrix4x4();

  

  class operator multiply(TpvMatrix4x4,TpvVector2):TpvVector2();

  

  class operator multiply(TpvVector2,TpvMatrix4x4):TpvVector2();

  

  class operator multiply(TpvMatrix4x4,TpvVector3):TpvVector3();

  

  class operator multiply(TpvVector3,TpvMatrix4x4):TpvVector3();

  

  class operator multiply(TpvMatrix4x4,TpvVector4):TpvVector4();

  

  class operator multiply(TpvVector4,TpvMatrix4x4):TpvVector4();

  

  class operator multiply(TpvMatrix4x4,TpvPlane):TpvPlane();

  

  class operator multiply(TpvPlane,TpvMatrix4x4):TpvPlane();

  

  class operator divide(TpvMatrix4x4,TpvMatrix4x4):TpvMatrix4x4();

  

  class operator divide(TpvMatrix4x4,TpvScalar):TpvMatrix4x4();

  

  class operator divide(TpvScalar,TpvMatrix4x4):TpvMatrix4x4();

  

  class operator intdivide(TpvMatrix4x4,TpvMatrix4x4):TpvMatrix4x4();

  

  class operator intdivide(TpvMatrix4x4,TpvScalar):TpvMatrix4x4();

  

  class operator intdivide(TpvScalar,TpvMatrix4x4):TpvMatrix4x4();

  

  class operator modulus(TpvMatrix4x4,TpvMatrix4x4):TpvMatrix4x4();

  

  class operator modulus(TpvMatrix4x4,TpvScalar):TpvMatrix4x4();

  

  class operator modulus(TpvScalar,TpvMatrix4x4):TpvMatrix4x4();

  

  class operator negative(TpvMatrix4x4):TpvMatrix4x4();

  

  class operator positive(TpvMatrix4x4):TpvMatrix4x4();

  

  function Determinant;

  

  function SimpleInverse;

  

  function Inverse;

  

  function Transpose;

  

  function Adjugate;

  

  function EulerAngles;

  

  function Normalize;

  

  function OrthoNormalize;

  

  function RobustOrthoNormalize();

  

  function ToQuaternion;

  

  function ToQTangent();

  

  function ToMatrix3x3;

  

  function ToRotation;

  

  function SimpleLerp();

  

  function SimpleNlerp();

  

  function SimpleSlerp();

  

  function SimpleElerp();

  

  function SimpleSqlerp();

  

  function Lerp();

  

  function Nlerp();

  

  function Slerp();

  

  function Elerp();

  

  function Sqlerp();

  

  function MulInverse();

  

  function MulInverted();

  

  function MulBasis();

  

  function MulAbsBasis();

  

  function MulTransposedBasis();

  

  function MulHomogen();

  

  function Decompose;

  

  property Components []: TpvScalar; default; [rw]

  

  property Columns []: TpvVector4; [rw]

  

  property Rows []: TpvVector4; [rw]

  

  case TpvInt32 of

    0: (

        RawComponents: array [0..3,0..3] of TpvScalar;

  

      );

    1: (

        LinearRawComponents: array [0..15] of TpvScalar;

  

      );

    2: (

        m00: TpvScalar;

  

        m01: TpvScalar;

  

        m02: TpvScalar;

  

        m03: TpvScalar;

  

        m10: TpvScalar;

  

        m11: TpvScalar;

  

        m12: TpvScalar;

  

        m13: TpvScalar;

  

        m20: TpvScalar;

  

        m21: TpvScalar;

  

        m22: TpvScalar;

  

        m23: TpvScalar;

  

        m30: TpvScalar;

  

        m31: TpvScalar;

  

        m32: TpvScalar;

  

        m33: TpvScalar;

  

      );

    3: (

        Tangent: TpvVector4;

  

        Bitangent: TpvVector4;

  

        Normal: TpvVector4;

  

        Translation: TpvVector4;

  

      );

    4: (

        Right: TpvVector4;

  

        Up: TpvVector4;

  

        Forwards: TpvVector4;

  

        Offset: TpvVector4;

  

      );

    5: (

        RawVectors: array [0..3] of TpvVector4;

  

      );

end;

  InverseFlipYZ = record = (RawComponents: ((1.0, 0.0, 0, 0.0), (0.0, 0.0, - 1.0, 0.0), (0.0, 1.0, 0.0, 0.0), (0.0, 0.0, 0, 1.0)))

  

public

  constructor Create();

  

  constructor CreateRotateX();

  

  constructor CreateRotateY();

  

  constructor CreateRotateZ();

  

  constructor CreateRotate();

  

  constructor CreateRotation(); overload;

  

  constructor CreateSkewYX();

  

  constructor CreateSkewZX();

  

  constructor CreateSkewXY();

  

  constructor CreateSkewZY();

  

  constructor CreateSkewXZ();

  

  constructor CreateSkewYZ();

  

  constructor CreateScale();

  

  constructor CreateTranslation();

  

  constructor CreateTranslated();

  

  constructor CreateFromToRotation();

  

  constructor CreateConstruct();

  

  constructor CreateOuterProduct();

  

  constructor CreateFromQuaternion();

  

  constructor CreateFromQTangent();

  

  constructor CreateReflect();

  

  constructor CreateFrustumLeftHandedNegativeOneToPositiveOne();

  

  constructor CreateFrustumLeftHandedZeroToOne();

  

  constructor CreateFrustumLeftHandedOneToZero();

  

  constructor CreateFrustumRightHandedNegativeOneToPositiveOne();

  

  constructor CreateFrustumRightHandedZeroToOne();

  

  constructor CreateFrustumRightHandedOneToZero();

  

  constructor CreateFrustum();

  

  constructor CreateOrthoLeftHandedNegativeOneToPositiveOne();

  

  constructor CreateOrthoLeftHandedZeroToOne();

  

  constructor CreateOrthoRightHandedNegativeOneToPositiveOne();

  

  constructor CreateOrthoRightHandedZeroToOne();

  

  constructor CreateOrtho();

  

  constructor CreateOrthoLH();

  

  constructor CreateOrthoRH();

  

  constructor CreateOrthoOffCenterLH();

  

  constructor CreateOrthoOffCenterRH();

  

  constructor CreatePerspectiveLeftHandedNegativeOneToPositiveOne();

  

  constructor CreatePerspectiveLeftHandedZeroToOne();

  

  constructor CreatePerspectiveLeftHandedOneToZero();

  

  constructor CreatePerspectiveRightHandedNegativeOneToPositiveOne();

  

  constructor CreatePerspectiveRightHandedZeroToOne();

  

  constructor CreatePerspectiveRightHandedOneToZero();

  

  constructor CreatePerspectiveReversedZ();

  

  constructor CreatePerspective();

  

  constructor CreateHorizontalFOVPerspectiveLeftHandedNegativeOneToPositiveOne();

  

  constructor CreateHorizontalFOVPerspectiveLeftHandedZeroToOne();

  

  constructor CreateHorizontalFOVPerspectiveLeftHandedOneToZero();

  

  constructor CreateHorizontalFOVPerspectiveRightHandedNegativeOneToPositiveOne();

  

  constructor CreateHorizontalFOVPerspectiveRightHandedZeroToOne();

  

  constructor CreateHorizontalFOVPerspectiveRightHandedOneToZero();

  

  constructor CreateHorizontalFOVPerspectiveReversedZ();

  

  constructor CreateHorizontalFOVPerspective();

  

  constructor CreateInverseLookAt();

  

  constructor CreateLookAt();

  

  constructor CreateFill();

  

  constructor CreateConstructX();

  

  constructor CreateConstructY();

  

  constructor CreateConstructZ();

  

  constructor CreateProjectionMatrixClip();

  

  constructor CreateRecomposed();

  

  class operator implicit(TpvScalar):TpvMatrix4x4();

  

  class operator explicit(TpvScalar):TpvMatrix4x4();

  

  class operator equal(TpvMatrix4x4,TpvMatrix4x4):Boolean();

  

  class operator notequal(TpvMatrix4x4,TpvMatrix4x4):Boolean();

  

  class operator inc(TpvMatrix4x4):TpvMatrix4x4();

  

  class operator dec(TpvMatrix4x4):TpvMatrix4x4();

  

  class operator add(TpvMatrix4x4,TpvMatrix4x4):TpvMatrix4x4();

  

  class operator add(TpvMatrix4x4,TpvScalar):TpvMatrix4x4();

  

  class operator add(TpvScalar,TpvMatrix4x4):TpvMatrix4x4();

  

  class operator subtract(TpvMatrix4x4,TpvMatrix4x4):TpvMatrix4x4();

  

  class operator subtract(TpvMatrix4x4,TpvScalar):TpvMatrix4x4();

  

  class operator subtract(TpvScalar,TpvMatrix4x4):TpvMatrix4x4();

  

  class operator multiply(TpvMatrix4x4,TpvMatrix4x4):TpvMatrix4x4();

  

  class operator multiply(TpvMatrix4x4,TpvScalar):TpvMatrix4x4();

  

  class operator multiply(TpvScalar,TpvMatrix4x4):TpvMatrix4x4();

  

  class operator multiply(TpvMatrix4x4,TpvVector2):TpvVector2();

  

  class operator multiply(TpvVector2,TpvMatrix4x4):TpvVector2();

  

  class operator multiply(TpvMatrix4x4,TpvVector3):TpvVector3();

  

  class operator multiply(TpvVector3,TpvMatrix4x4):TpvVector3();

  

  class operator multiply(TpvMatrix4x4,TpvVector4):TpvVector4();

  

  class operator multiply(TpvVector4,TpvMatrix4x4):TpvVector4();

  

  class operator multiply(TpvMatrix4x4,TpvPlane):TpvPlane();

  

  class operator multiply(TpvPlane,TpvMatrix4x4):TpvPlane();

  

  class operator divide(TpvMatrix4x4,TpvMatrix4x4):TpvMatrix4x4();

  

  class operator divide(TpvMatrix4x4,TpvScalar):TpvMatrix4x4();

  

  class operator divide(TpvScalar,TpvMatrix4x4):TpvMatrix4x4();

  

  class operator intdivide(TpvMatrix4x4,TpvMatrix4x4):TpvMatrix4x4();

  

  class operator intdivide(TpvMatrix4x4,TpvScalar):TpvMatrix4x4();

  

  class operator intdivide(TpvScalar,TpvMatrix4x4):TpvMatrix4x4();

  

  class operator modulus(TpvMatrix4x4,TpvMatrix4x4):TpvMatrix4x4();

  

  class operator modulus(TpvMatrix4x4,TpvScalar):TpvMatrix4x4();

  

  class operator modulus(TpvScalar,TpvMatrix4x4):TpvMatrix4x4();

  

  class operator negative(TpvMatrix4x4):TpvMatrix4x4();

  

  class operator positive(TpvMatrix4x4):TpvMatrix4x4();

  

  function Determinant;

  

  function SimpleInverse;

  

  function Inverse;

  

  function Transpose;

  

  function Adjugate;

  

  function EulerAngles;

  

  function Normalize;

  

  function OrthoNormalize;

  

  function RobustOrthoNormalize();

  

  function ToQuaternion;

  

  function ToQTangent();

  

  function ToMatrix3x3;

  

  function ToRotation;

  

  function SimpleLerp();

  

  function SimpleNlerp();

  

  function SimpleSlerp();

  

  function SimpleElerp();

  

  function SimpleSqlerp();

  

  function Lerp();

  

  function Nlerp();

  

  function Slerp();

  

  function Elerp();

  

  function Sqlerp();

  

  function MulInverse();

  

  function MulInverted();

  

  function MulBasis();

  

  function MulAbsBasis();

  

  function MulTransposedBasis();

  

  function MulHomogen();

  

  function Decompose;

  

  property Components []: TpvScalar; default; [rw]

  

  property Columns []: TpvVector4; [rw]

  

  property Rows []: TpvVector4; [rw]

  

  case TpvInt32 of

    0: (

        RawComponents: array [0..3,0..3] of TpvScalar;

  

      );

    1: (

        LinearRawComponents: array [0..15] of TpvScalar;

  

      );

    2: (

        m00: TpvScalar;

  

        m01: TpvScalar;

  

        m02: TpvScalar;

  

        m03: TpvScalar;

  

        m10: TpvScalar;

  

        m11: TpvScalar;

  

        m12: TpvScalar;

  

        m13: TpvScalar;

  

        m20: TpvScalar;

  

        m21: TpvScalar;

  

        m22: TpvScalar;

  

        m23: TpvScalar;

  

        m30: TpvScalar;

  

        m31: TpvScalar;

  

        m32: TpvScalar;

  

        m33: TpvScalar;

  

      );

    3: (

        Tangent: TpvVector4;

  

        Bitangent: TpvVector4;

  

        Normal: TpvVector4;

  

        Translation: TpvVector4;

  

      );

    4: (

        Right: TpvVector4;

  

        Up: TpvVector4;

  

        Forwards: TpvVector4;

  

        Offset: TpvVector4;

  

      );

    5: (

        RawVectors: array [0..3] of TpvVector4;

  

      );

end;

  NormalizedSpace = record = (RawComponents: ((2.0, 0.0, 0, 0.0), (0.0, 2.0, 0.0, 0.0), (0.0, 0.0, 2.0, 0.0), (- 1.0, - 1.0, - 1.0, 1.0)))

  

public

  constructor Create();

  

  constructor CreateRotateX();

  

  constructor CreateRotateY();

  

  constructor CreateRotateZ();

  

  constructor CreateRotate();

  

  constructor CreateRotation(); overload;

  

  constructor CreateSkewYX();

  

  constructor CreateSkewZX();

  

  constructor CreateSkewXY();

  

  constructor CreateSkewZY();

  

  constructor CreateSkewXZ();

  

  constructor CreateSkewYZ();

  

  constructor CreateScale();

  

  constructor CreateTranslation();

  

  constructor CreateTranslated();

  

  constructor CreateFromToRotation();

  

  constructor CreateConstruct();

  

  constructor CreateOuterProduct();

  

  constructor CreateFromQuaternion();

  

  constructor CreateFromQTangent();

  

  constructor CreateReflect();

  

  constructor CreateFrustumLeftHandedNegativeOneToPositiveOne();

  

  constructor CreateFrustumLeftHandedZeroToOne();

  

  constructor CreateFrustumLeftHandedOneToZero();

  

  constructor CreateFrustumRightHandedNegativeOneToPositiveOne();

  

  constructor CreateFrustumRightHandedZeroToOne();

  

  constructor CreateFrustumRightHandedOneToZero();

  

  constructor CreateFrustum();

  

  constructor CreateOrthoLeftHandedNegativeOneToPositiveOne();

  

  constructor CreateOrthoLeftHandedZeroToOne();

  

  constructor CreateOrthoRightHandedNegativeOneToPositiveOne();

  

  constructor CreateOrthoRightHandedZeroToOne();

  

  constructor CreateOrtho();

  

  constructor CreateOrthoLH();

  

  constructor CreateOrthoRH();

  

  constructor CreateOrthoOffCenterLH();

  

  constructor CreateOrthoOffCenterRH();

  

  constructor CreatePerspectiveLeftHandedNegativeOneToPositiveOne();

  

  constructor CreatePerspectiveLeftHandedZeroToOne();

  

  constructor CreatePerspectiveLeftHandedOneToZero();

  

  constructor CreatePerspectiveRightHandedNegativeOneToPositiveOne();

  

  constructor CreatePerspectiveRightHandedZeroToOne();

  

  constructor CreatePerspectiveRightHandedOneToZero();

  

  constructor CreatePerspectiveReversedZ();

  

  constructor CreatePerspective();

  

  constructor CreateHorizontalFOVPerspectiveLeftHandedNegativeOneToPositiveOne();

  

  constructor CreateHorizontalFOVPerspectiveLeftHandedZeroToOne();

  

  constructor CreateHorizontalFOVPerspectiveLeftHandedOneToZero();

  

  constructor CreateHorizontalFOVPerspectiveRightHandedNegativeOneToPositiveOne();

  

  constructor CreateHorizontalFOVPerspectiveRightHandedZeroToOne();

  

  constructor CreateHorizontalFOVPerspectiveRightHandedOneToZero();

  

  constructor CreateHorizontalFOVPerspectiveReversedZ();

  

  constructor CreateHorizontalFOVPerspective();

  

  constructor CreateInverseLookAt();

  

  constructor CreateLookAt();

  

  constructor CreateFill();

  

  constructor CreateConstructX();

  

  constructor CreateConstructY();

  

  constructor CreateConstructZ();

  

  constructor CreateProjectionMatrixClip();

  

  constructor CreateRecomposed();

  

  class operator implicit(TpvScalar):TpvMatrix4x4();

  

  class operator explicit(TpvScalar):TpvMatrix4x4();

  

  class operator equal(TpvMatrix4x4,TpvMatrix4x4):Boolean();

  

  class operator notequal(TpvMatrix4x4,TpvMatrix4x4):Boolean();

  

  class operator inc(TpvMatrix4x4):TpvMatrix4x4();

  

  class operator dec(TpvMatrix4x4):TpvMatrix4x4();

  

  class operator add(TpvMatrix4x4,TpvMatrix4x4):TpvMatrix4x4();

  

  class operator add(TpvMatrix4x4,TpvScalar):TpvMatrix4x4();

  

  class operator add(TpvScalar,TpvMatrix4x4):TpvMatrix4x4();

  

  class operator subtract(TpvMatrix4x4,TpvMatrix4x4):TpvMatrix4x4();

  

  class operator subtract(TpvMatrix4x4,TpvScalar):TpvMatrix4x4();

  

  class operator subtract(TpvScalar,TpvMatrix4x4):TpvMatrix4x4();

  

  class operator multiply(TpvMatrix4x4,TpvMatrix4x4):TpvMatrix4x4();

  

  class operator multiply(TpvMatrix4x4,TpvScalar):TpvMatrix4x4();

  

  class operator multiply(TpvScalar,TpvMatrix4x4):TpvMatrix4x4();

  

  class operator multiply(TpvMatrix4x4,TpvVector2):TpvVector2();

  

  class operator multiply(TpvVector2,TpvMatrix4x4):TpvVector2();

  

  class operator multiply(TpvMatrix4x4,TpvVector3):TpvVector3();

  

  class operator multiply(TpvVector3,TpvMatrix4x4):TpvVector3();

  

  class operator multiply(TpvMatrix4x4,TpvVector4):TpvVector4();

  

  class operator multiply(TpvVector4,TpvMatrix4x4):TpvVector4();

  

  class operator multiply(TpvMatrix4x4,TpvPlane):TpvPlane();

  

  class operator multiply(TpvPlane,TpvMatrix4x4):TpvPlane();

  

  class operator divide(TpvMatrix4x4,TpvMatrix4x4):TpvMatrix4x4();

  

  class operator divide(TpvMatrix4x4,TpvScalar):TpvMatrix4x4();

  

  class operator divide(TpvScalar,TpvMatrix4x4):TpvMatrix4x4();

  

  class operator intdivide(TpvMatrix4x4,TpvMatrix4x4):TpvMatrix4x4();

  

  class operator intdivide(TpvMatrix4x4,TpvScalar):TpvMatrix4x4();

  

  class operator intdivide(TpvScalar,TpvMatrix4x4):TpvMatrix4x4();

  

  class operator modulus(TpvMatrix4x4,TpvMatrix4x4):TpvMatrix4x4();

  

  class operator modulus(TpvMatrix4x4,TpvScalar):TpvMatrix4x4();

  

  class operator modulus(TpvScalar,TpvMatrix4x4):TpvMatrix4x4();

  

  class operator negative(TpvMatrix4x4):TpvMatrix4x4();

  

  class operator positive(TpvMatrix4x4):TpvMatrix4x4();

  

  function Determinant;

  

  function SimpleInverse;

  

  function Inverse;

  

  function Transpose;

  

  function Adjugate;

  

  function EulerAngles;

  

  function Normalize;

  

  function OrthoNormalize;

  

  function RobustOrthoNormalize();

  

  function ToQuaternion;

  

  function ToQTangent();

  

  function ToMatrix3x3;

  

  function ToRotation;

  

  function SimpleLerp();

  

  function SimpleNlerp();

  

  function SimpleSlerp();

  

  function SimpleElerp();

  

  function SimpleSqlerp();

  

  function Lerp();

  

  function Nlerp();

  

  function Slerp();

  

  function Elerp();

  

  function Sqlerp();

  

  function MulInverse();

  

  function MulInverted();

  

  function MulBasis();

  

  function MulAbsBasis();

  

  function MulTransposedBasis();

  

  function MulHomogen();

  

  function Decompose;

  

  property Components []: TpvScalar; default; [rw]

  

  property Columns []: TpvVector4; [rw]

  

  property Rows []: TpvVector4; [rw]

  

  case TpvInt32 of

    0: (

        RawComponents: array [0..3,0..3] of TpvScalar;

  

      );

    1: (

        LinearRawComponents: array [0..15] of TpvScalar;

  

      );

    2: (

        m00: TpvScalar;

  

        m01: TpvScalar;

  

        m02: TpvScalar;

  

        m03: TpvScalar;

  

        m10: TpvScalar;

  

        m11: TpvScalar;

  

        m12: TpvScalar;

  

        m13: TpvScalar;

  

        m20: TpvScalar;

  

        m21: TpvScalar;

  

        m22: TpvScalar;

  

        m23: TpvScalar;

  

        m30: TpvScalar;

  

        m31: TpvScalar;

  

        m32: TpvScalar;

  

        m33: TpvScalar;

  

      );

    3: (

        Tangent: TpvVector4;

  

        Bitangent: TpvVector4;

  

        Normal: TpvVector4;

  

        Translation: TpvVector4;

  

      );

    4: (

        Right: TpvVector4;

  

        Up: TpvVector4;

  

        Forwards: TpvVector4;

  

        Offset: TpvVector4;

  

      );

    5: (

        RawVectors: array [0..3] of TpvVector4;

  

      );

end;

  FlipYClipSpace = record = (RawComponents: ((1.0, 0.0, 0, 0.0), (0.0, - 1.0, 0.0, 0.0), (0.0, 0.0, 1.0, 0.0), (0.0, 0.0, 0.0, 1.0)))

  

public

  constructor Create();

  

  constructor CreateRotateX();

  

  constructor CreateRotateY();

  

  constructor CreateRotateZ();

  

  constructor CreateRotate();

  

  constructor CreateRotation(); overload;

  

  constructor CreateSkewYX();

  

  constructor CreateSkewZX();

  

  constructor CreateSkewXY();

  

  constructor CreateSkewZY();

  

  constructor CreateSkewXZ();

  

  constructor CreateSkewYZ();

  

  constructor CreateScale();

  

  constructor CreateTranslation();

  

  constructor CreateTranslated();

  

  constructor CreateFromToRotation();

  

  constructor CreateConstruct();

  

  constructor CreateOuterProduct();

  

  constructor CreateFromQuaternion();

  

  constructor CreateFromQTangent();

  

  constructor CreateReflect();

  

  constructor CreateFrustumLeftHandedNegativeOneToPositiveOne();

  

  constructor CreateFrustumLeftHandedZeroToOne();

  

  constructor CreateFrustumLeftHandedOneToZero();

  

  constructor CreateFrustumRightHandedNegativeOneToPositiveOne();

  

  constructor CreateFrustumRightHandedZeroToOne();

  

  constructor CreateFrustumRightHandedOneToZero();

  

  constructor CreateFrustum();

  

  constructor CreateOrthoLeftHandedNegativeOneToPositiveOne();

  

  constructor CreateOrthoLeftHandedZeroToOne();

  

  constructor CreateOrthoRightHandedNegativeOneToPositiveOne();

  

  constructor CreateOrthoRightHandedZeroToOne();

  

  constructor CreateOrtho();

  

  constructor CreateOrthoLH();

  

  constructor CreateOrthoRH();

  

  constructor CreateOrthoOffCenterLH();

  

  constructor CreateOrthoOffCenterRH();

  

  constructor CreatePerspectiveLeftHandedNegativeOneToPositiveOne();

  

  constructor CreatePerspectiveLeftHandedZeroToOne();

  

  constructor CreatePerspectiveLeftHandedOneToZero();

  

  constructor CreatePerspectiveRightHandedNegativeOneToPositiveOne();

  

  constructor CreatePerspectiveRightHandedZeroToOne();

  

  constructor CreatePerspectiveRightHandedOneToZero();

  

  constructor CreatePerspectiveReversedZ();

  

  constructor CreatePerspective();

  

  constructor CreateHorizontalFOVPerspectiveLeftHandedNegativeOneToPositiveOne();

  

  constructor CreateHorizontalFOVPerspectiveLeftHandedZeroToOne();

  

  constructor CreateHorizontalFOVPerspectiveLeftHandedOneToZero();

  

  constructor CreateHorizontalFOVPerspectiveRightHandedNegativeOneToPositiveOne();

  

  constructor CreateHorizontalFOVPerspectiveRightHandedZeroToOne();

  

  constructor CreateHorizontalFOVPerspectiveRightHandedOneToZero();

  

  constructor CreateHorizontalFOVPerspectiveReversedZ();

  

  constructor CreateHorizontalFOVPerspective();

  

  constructor CreateInverseLookAt();

  

  constructor CreateLookAt();

  

  constructor CreateFill();

  

  constructor CreateConstructX();

  

  constructor CreateConstructY();

  

  constructor CreateConstructZ();

  

  constructor CreateProjectionMatrixClip();

  

  constructor CreateRecomposed();

  

  class operator implicit(TpvScalar):TpvMatrix4x4();

  

  class operator explicit(TpvScalar):TpvMatrix4x4();

  

  class operator equal(TpvMatrix4x4,TpvMatrix4x4):Boolean();

  

  class operator notequal(TpvMatrix4x4,TpvMatrix4x4):Boolean();

  

  class operator inc(TpvMatrix4x4):TpvMatrix4x4();

  

  class operator dec(TpvMatrix4x4):TpvMatrix4x4();

  

  class operator add(TpvMatrix4x4,TpvMatrix4x4):TpvMatrix4x4();

  

  class operator add(TpvMatrix4x4,TpvScalar):TpvMatrix4x4();

  

  class operator add(TpvScalar,TpvMatrix4x4):TpvMatrix4x4();

  

  class operator subtract(TpvMatrix4x4,TpvMatrix4x4):TpvMatrix4x4();

  

  class operator subtract(TpvMatrix4x4,TpvScalar):TpvMatrix4x4();

  

  class operator subtract(TpvScalar,TpvMatrix4x4):TpvMatrix4x4();

  

  class operator multiply(TpvMatrix4x4,TpvMatrix4x4):TpvMatrix4x4();

  

  class operator multiply(TpvMatrix4x4,TpvScalar):TpvMatrix4x4();

  

  class operator multiply(TpvScalar,TpvMatrix4x4):TpvMatrix4x4();

  

  class operator multiply(TpvMatrix4x4,TpvVector2):TpvVector2();

  

  class operator multiply(TpvVector2,TpvMatrix4x4):TpvVector2();

  

  class operator multiply(TpvMatrix4x4,TpvVector3):TpvVector3();

  

  class operator multiply(TpvVector3,TpvMatrix4x4):TpvVector3();

  

  class operator multiply(TpvMatrix4x4,TpvVector4):TpvVector4();

  

  class operator multiply(TpvVector4,TpvMatrix4x4):TpvVector4();

  

  class operator multiply(TpvMatrix4x4,TpvPlane):TpvPlane();

  

  class operator multiply(TpvPlane,TpvMatrix4x4):TpvPlane();

  

  class operator divide(TpvMatrix4x4,TpvMatrix4x4):TpvMatrix4x4();

  

  class operator divide(TpvMatrix4x4,TpvScalar):TpvMatrix4x4();

  

  class operator divide(TpvScalar,TpvMatrix4x4):TpvMatrix4x4();

  

  class operator intdivide(TpvMatrix4x4,TpvMatrix4x4):TpvMatrix4x4();

  

  class operator intdivide(TpvMatrix4x4,TpvScalar):TpvMatrix4x4();

  

  class operator intdivide(TpvScalar,TpvMatrix4x4):TpvMatrix4x4();

  

  class operator modulus(TpvMatrix4x4,TpvMatrix4x4):TpvMatrix4x4();

  

  class operator modulus(TpvMatrix4x4,TpvScalar):TpvMatrix4x4();

  

  class operator modulus(TpvScalar,TpvMatrix4x4):TpvMatrix4x4();

  

  class operator negative(TpvMatrix4x4):TpvMatrix4x4();

  

  class operator positive(TpvMatrix4x4):TpvMatrix4x4();

  

  function Determinant;

  

  function SimpleInverse;

  

  function Inverse;

  

  function Transpose;

  

  function Adjugate;

  

  function EulerAngles;

  

  function Normalize;

  

  function OrthoNormalize;

  

  function RobustOrthoNormalize();

  

  function ToQuaternion;

  

  function ToQTangent();

  

  function ToMatrix3x3;

  

  function ToRotation;

  

  function SimpleLerp();

  

  function SimpleNlerp();

  

  function SimpleSlerp();

  

  function SimpleElerp();

  

  function SimpleSqlerp();

  

  function Lerp();

  

  function Nlerp();

  

  function Slerp();

  

  function Elerp();

  

  function Sqlerp();

  

  function MulInverse();

  

  function MulInverted();

  

  function MulBasis();

  

  function MulAbsBasis();

  

  function MulTransposedBasis();

  

  function MulHomogen();

  

  function Decompose;

  

  property Components []: TpvScalar; default; [rw]

  

  property Columns []: TpvVector4; [rw]

  

  property Rows []: TpvVector4; [rw]

  

  case TpvInt32 of

    0: (

        RawComponents: array [0..3,0..3] of TpvScalar;

  

      );

    1: (

        LinearRawComponents: array [0..15] of TpvScalar;

  

      );

    2: (

        m00: TpvScalar;

  

        m01: TpvScalar;

  

        m02: TpvScalar;

  

        m03: TpvScalar;

  

        m10: TpvScalar;

  

        m11: TpvScalar;

  

        m12: TpvScalar;

  

        m13: TpvScalar;

  

        m20: TpvScalar;

  

        m21: TpvScalar;

  

        m22: TpvScalar;

  

        m23: TpvScalar;

  

        m30: TpvScalar;

  

        m31: TpvScalar;

  

        m32: TpvScalar;

  

        m33: TpvScalar;

  

      );

    3: (

        Tangent: TpvVector4;

  

        Bitangent: TpvVector4;

  

        Normal: TpvVector4;

  

        Translation: TpvVector4;

  

      );

    4: (

        Right: TpvVector4;

  

        Up: TpvVector4;

  

        Forwards: TpvVector4;

  

        Offset: TpvVector4;

  

      );

    5: (

        RawVectors: array [0..3] of TpvVector4;

  

      );

end;

  HalfZClipSpace = record = (RawComponents: ((1.0, 0.0, 0, 0.0), (0.0, 1.0, 0.0, 0.0), (0.0, 0.0, 0.5, 0.0), (0.0, 0.0, 0.5, 1.0)))

  

public

  constructor Create();

  

  constructor CreateRotateX();

  

  constructor CreateRotateY();

  

  constructor CreateRotateZ();

  

  constructor CreateRotate();

  

  constructor CreateRotation(); overload;

  

  constructor CreateSkewYX();

  

  constructor CreateSkewZX();

  

  constructor CreateSkewXY();

  

  constructor CreateSkewZY();

  

  constructor CreateSkewXZ();

  

  constructor CreateSkewYZ();

  

  constructor CreateScale();

  

  constructor CreateTranslation();

  

  constructor CreateTranslated();

  

  constructor CreateFromToRotation();

  

  constructor CreateConstruct();

  

  constructor CreateOuterProduct();

  

  constructor CreateFromQuaternion();

  

  constructor CreateFromQTangent();

  

  constructor CreateReflect();

  

  constructor CreateFrustumLeftHandedNegativeOneToPositiveOne();

  

  constructor CreateFrustumLeftHandedZeroToOne();

  

  constructor CreateFrustumLeftHandedOneToZero();

  

  constructor CreateFrustumRightHandedNegativeOneToPositiveOne();

  

  constructor CreateFrustumRightHandedZeroToOne();

  

  constructor CreateFrustumRightHandedOneToZero();

  

  constructor CreateFrustum();

  

  constructor CreateOrthoLeftHandedNegativeOneToPositiveOne();

  

  constructor CreateOrthoLeftHandedZeroToOne();

  

  constructor CreateOrthoRightHandedNegativeOneToPositiveOne();

  

  constructor CreateOrthoRightHandedZeroToOne();

  

  constructor CreateOrtho();

  

  constructor CreateOrthoLH();

  

  constructor CreateOrthoRH();

  

  constructor CreateOrthoOffCenterLH();

  

  constructor CreateOrthoOffCenterRH();

  

  constructor CreatePerspectiveLeftHandedNegativeOneToPositiveOne();

  

  constructor CreatePerspectiveLeftHandedZeroToOne();

  

  constructor CreatePerspectiveLeftHandedOneToZero();

  

  constructor CreatePerspectiveRightHandedNegativeOneToPositiveOne();

  

  constructor CreatePerspectiveRightHandedZeroToOne();

  

  constructor CreatePerspectiveRightHandedOneToZero();

  

  constructor CreatePerspectiveReversedZ();

  

  constructor CreatePerspective();

  

  constructor CreateHorizontalFOVPerspectiveLeftHandedNegativeOneToPositiveOne();

  

  constructor CreateHorizontalFOVPerspectiveLeftHandedZeroToOne();

  

  constructor CreateHorizontalFOVPerspectiveLeftHandedOneToZero();

  

  constructor CreateHorizontalFOVPerspectiveRightHandedNegativeOneToPositiveOne();

  

  constructor CreateHorizontalFOVPerspectiveRightHandedZeroToOne();

  

  constructor CreateHorizontalFOVPerspectiveRightHandedOneToZero();

  

  constructor CreateHorizontalFOVPerspectiveReversedZ();

  

  constructor CreateHorizontalFOVPerspective();

  

  constructor CreateInverseLookAt();

  

  constructor CreateLookAt();

  

  constructor CreateFill();

  

  constructor CreateConstructX();

  

  constructor CreateConstructY();

  

  constructor CreateConstructZ();

  

  constructor CreateProjectionMatrixClip();

  

  constructor CreateRecomposed();

  

  class operator implicit(TpvScalar):TpvMatrix4x4();

  

  class operator explicit(TpvScalar):TpvMatrix4x4();

  

  class operator equal(TpvMatrix4x4,TpvMatrix4x4):Boolean();

  

  class operator notequal(TpvMatrix4x4,TpvMatrix4x4):Boolean();

  

  class operator inc(TpvMatrix4x4):TpvMatrix4x4();

  

  class operator dec(TpvMatrix4x4):TpvMatrix4x4();

  

  class operator add(TpvMatrix4x4,TpvMatrix4x4):TpvMatrix4x4();

  

  class operator add(TpvMatrix4x4,TpvScalar):TpvMatrix4x4();

  

  class operator add(TpvScalar,TpvMatrix4x4):TpvMatrix4x4();

  

  class operator subtract(TpvMatrix4x4,TpvMatrix4x4):TpvMatrix4x4();

  

  class operator subtract(TpvMatrix4x4,TpvScalar):TpvMatrix4x4();

  

  class operator subtract(TpvScalar,TpvMatrix4x4):TpvMatrix4x4();

  

  class operator multiply(TpvMatrix4x4,TpvMatrix4x4):TpvMatrix4x4();

  

  class operator multiply(TpvMatrix4x4,TpvScalar):TpvMatrix4x4();

  

  class operator multiply(TpvScalar,TpvMatrix4x4):TpvMatrix4x4();

  

  class operator multiply(TpvMatrix4x4,TpvVector2):TpvVector2();

  

  class operator multiply(TpvVector2,TpvMatrix4x4):TpvVector2();

  

  class operator multiply(TpvMatrix4x4,TpvVector3):TpvVector3();

  

  class operator multiply(TpvVector3,TpvMatrix4x4):TpvVector3();

  

  class operator multiply(TpvMatrix4x4,TpvVector4):TpvVector4();

  

  class operator multiply(TpvVector4,TpvMatrix4x4):TpvVector4();

  

  class operator multiply(TpvMatrix4x4,TpvPlane):TpvPlane();

  

  class operator multiply(TpvPlane,TpvMatrix4x4):TpvPlane();

  

  class operator divide(TpvMatrix4x4,TpvMatrix4x4):TpvMatrix4x4();

  

  class operator divide(TpvMatrix4x4,TpvScalar):TpvMatrix4x4();

  

  class operator divide(TpvScalar,TpvMatrix4x4):TpvMatrix4x4();

  

  class operator intdivide(TpvMatrix4x4,TpvMatrix4x4):TpvMatrix4x4();

  

  class operator intdivide(TpvMatrix4x4,TpvScalar):TpvMatrix4x4();

  

  class operator intdivide(TpvScalar,TpvMatrix4x4):TpvMatrix4x4();

  

  class operator modulus(TpvMatrix4x4,TpvMatrix4x4):TpvMatrix4x4();

  

  class operator modulus(TpvMatrix4x4,TpvScalar):TpvMatrix4x4();

  

  class operator modulus(TpvScalar,TpvMatrix4x4):TpvMatrix4x4();

  

  class operator negative(TpvMatrix4x4):TpvMatrix4x4();

  

  class operator positive(TpvMatrix4x4):TpvMatrix4x4();

  

  function Determinant;

  

  function SimpleInverse;

  

  function Inverse;

  

  function Transpose;

  

  function Adjugate;

  

  function EulerAngles;

  

  function Normalize;

  

  function OrthoNormalize;

  

  function RobustOrthoNormalize();

  

  function ToQuaternion;

  

  function ToQTangent();

  

  function ToMatrix3x3;

  

  function ToRotation;

  

  function SimpleLerp();

  

  function SimpleNlerp();

  

  function SimpleSlerp();

  

  function SimpleElerp();

  

  function SimpleSqlerp();

  

  function Lerp();

  

  function Nlerp();

  

  function Slerp();

  

  function Elerp();

  

  function Sqlerp();

  

  function MulInverse();

  

  function MulInverted();

  

  function MulBasis();

  

  function MulAbsBasis();

  

  function MulTransposedBasis();

  

  function MulHomogen();

  

  function Decompose;

  

  property Components []: TpvScalar; default; [rw]

  

  property Columns []: TpvVector4; [rw]

  

  property Rows []: TpvVector4; [rw]

  

  case TpvInt32 of

    0: (

        RawComponents: array [0..3,0..3] of TpvScalar;

  

      );

    1: (

        LinearRawComponents: array [0..15] of TpvScalar;

  

      );

    2: (

        m00: TpvScalar;

  

        m01: TpvScalar;

  

        m02: TpvScalar;

  

        m03: TpvScalar;

  

        m10: TpvScalar;

  

        m11: TpvScalar;

  

        m12: TpvScalar;

  

        m13: TpvScalar;

  

        m20: TpvScalar;

  

        m21: TpvScalar;

  

        m22: TpvScalar;

  

        m23: TpvScalar;

  

        m30: TpvScalar;

  

        m31: TpvScalar;

  

        m32: TpvScalar;

  

        m33: TpvScalar;

  

      );

    3: (

        Tangent: TpvVector4;

  

        Bitangent: TpvVector4;

  

        Normal: TpvVector4;

  

        Translation: TpvVector4;

  

      );

    4: (

        Right: TpvVector4;

  

        Up: TpvVector4;

  

        Forwards: TpvVector4;

  

        Offset: TpvVector4;

  

      );

    5: (

        RawVectors: array [0..3] of TpvVector4;

  

      );

end;

  FlipYHalfZClipSpace = record = (RawComponents: ((1.0, 0.0, 0, 0.0), (0.0, - 1.0, 0.0, 0.0), (0.0, 0.0, 0.5, 0.0), (0.0, 0.0, 0.5, 1.0)))

  

public

  constructor Create();

  

  constructor CreateRotateX();

  

  constructor CreateRotateY();

  

  constructor CreateRotateZ();

  

  constructor CreateRotate();

  

  constructor CreateRotation(); overload;

  

  constructor CreateSkewYX();

  

  constructor CreateSkewZX();

  

  constructor CreateSkewXY();

  

  constructor CreateSkewZY();

  

  constructor CreateSkewXZ();

  

  constructor CreateSkewYZ();

  

  constructor CreateScale();

  

  constructor CreateTranslation();

  

  constructor CreateTranslated();

  

  constructor CreateFromToRotation();

  

  constructor CreateConstruct();

  

  constructor CreateOuterProduct();

  

  constructor CreateFromQuaternion();

  

  constructor CreateFromQTangent();

  

  constructor CreateReflect();

  

  constructor CreateFrustumLeftHandedNegativeOneToPositiveOne();

  

  constructor CreateFrustumLeftHandedZeroToOne();

  

  constructor CreateFrustumLeftHandedOneToZero();

  

  constructor CreateFrustumRightHandedNegativeOneToPositiveOne();

  

  constructor CreateFrustumRightHandedZeroToOne();

  

  constructor CreateFrustumRightHandedOneToZero();

  

  constructor CreateFrustum();

  

  constructor CreateOrthoLeftHandedNegativeOneToPositiveOne();

  

  constructor CreateOrthoLeftHandedZeroToOne();

  

  constructor CreateOrthoRightHandedNegativeOneToPositiveOne();

  

  constructor CreateOrthoRightHandedZeroToOne();

  

  constructor CreateOrtho();

  

  constructor CreateOrthoLH();

  

  constructor CreateOrthoRH();

  

  constructor CreateOrthoOffCenterLH();

  

  constructor CreateOrthoOffCenterRH();

  

  constructor CreatePerspectiveLeftHandedNegativeOneToPositiveOne();

  

  constructor CreatePerspectiveLeftHandedZeroToOne();

  

  constructor CreatePerspectiveLeftHandedOneToZero();

  

  constructor CreatePerspectiveRightHandedNegativeOneToPositiveOne();

  

  constructor CreatePerspectiveRightHandedZeroToOne();

  

  constructor CreatePerspectiveRightHandedOneToZero();

  

  constructor CreatePerspectiveReversedZ();

  

  constructor CreatePerspective();

  

  constructor CreateHorizontalFOVPerspectiveLeftHandedNegativeOneToPositiveOne();

  

  constructor CreateHorizontalFOVPerspectiveLeftHandedZeroToOne();

  

  constructor CreateHorizontalFOVPerspectiveLeftHandedOneToZero();

  

  constructor CreateHorizontalFOVPerspectiveRightHandedNegativeOneToPositiveOne();

  

  constructor CreateHorizontalFOVPerspectiveRightHandedZeroToOne();

  

  constructor CreateHorizontalFOVPerspectiveRightHandedOneToZero();

  

  constructor CreateHorizontalFOVPerspectiveReversedZ();

  

  constructor CreateHorizontalFOVPerspective();

  

  constructor CreateInverseLookAt();

  

  constructor CreateLookAt();

  

  constructor CreateFill();

  

  constructor CreateConstructX();

  

  constructor CreateConstructY();

  

  constructor CreateConstructZ();

  

  constructor CreateProjectionMatrixClip();

  

  constructor CreateRecomposed();

  

  class operator implicit(TpvScalar):TpvMatrix4x4();

  

  class operator explicit(TpvScalar):TpvMatrix4x4();

  

  class operator equal(TpvMatrix4x4,TpvMatrix4x4):Boolean();

  

  class operator notequal(TpvMatrix4x4,TpvMatrix4x4):Boolean();

  

  class operator inc(TpvMatrix4x4):TpvMatrix4x4();

  

  class operator dec(TpvMatrix4x4):TpvMatrix4x4();

  

  class operator add(TpvMatrix4x4,TpvMatrix4x4):TpvMatrix4x4();

  

  class operator add(TpvMatrix4x4,TpvScalar):TpvMatrix4x4();

  

  class operator add(TpvScalar,TpvMatrix4x4):TpvMatrix4x4();

  

  class operator subtract(TpvMatrix4x4,TpvMatrix4x4):TpvMatrix4x4();

  

  class operator subtract(TpvMatrix4x4,TpvScalar):TpvMatrix4x4();

  

  class operator subtract(TpvScalar,TpvMatrix4x4):TpvMatrix4x4();

  

  class operator multiply(TpvMatrix4x4,TpvMatrix4x4):TpvMatrix4x4();

  

  class operator multiply(TpvMatrix4x4,TpvScalar):TpvMatrix4x4();

  

  class operator multiply(TpvScalar,TpvMatrix4x4):TpvMatrix4x4();

  

  class operator multiply(TpvMatrix4x4,TpvVector2):TpvVector2();

  

  class operator multiply(TpvVector2,TpvMatrix4x4):TpvVector2();

  

  class operator multiply(TpvMatrix4x4,TpvVector3):TpvVector3();

  

  class operator multiply(TpvVector3,TpvMatrix4x4):TpvVector3();

  

  class operator multiply(TpvMatrix4x4,TpvVector4):TpvVector4();

  

  class operator multiply(TpvVector4,TpvMatrix4x4):TpvVector4();

  

  class operator multiply(TpvMatrix4x4,TpvPlane):TpvPlane();

  

  class operator multiply(TpvPlane,TpvMatrix4x4):TpvPlane();

  

  class operator divide(TpvMatrix4x4,TpvMatrix4x4):TpvMatrix4x4();

  

  class operator divide(TpvMatrix4x4,TpvScalar):TpvMatrix4x4();

  

  class operator divide(TpvScalar,TpvMatrix4x4):TpvMatrix4x4();

  

  class operator intdivide(TpvMatrix4x4,TpvMatrix4x4):TpvMatrix4x4();

  

  class operator intdivide(TpvMatrix4x4,TpvScalar):TpvMatrix4x4();

  

  class operator intdivide(TpvScalar,TpvMatrix4x4):TpvMatrix4x4();

  

  class operator modulus(TpvMatrix4x4,TpvMatrix4x4):TpvMatrix4x4();

  

  class operator modulus(TpvMatrix4x4,TpvScalar):TpvMatrix4x4();

  

  class operator modulus(TpvScalar,TpvMatrix4x4):TpvMatrix4x4();

  

  class operator negative(TpvMatrix4x4):TpvMatrix4x4();

  

  class operator positive(TpvMatrix4x4):TpvMatrix4x4();

  

  function Determinant;

  

  function SimpleInverse;

  

  function Inverse;

  

  function Transpose;

  

  function Adjugate;

  

  function EulerAngles;

  

  function Normalize;

  

  function OrthoNormalize;

  

  function RobustOrthoNormalize();

  

  function ToQuaternion;

  

  function ToQTangent();

  

  function ToMatrix3x3;

  

  function ToRotation;

  

  function SimpleLerp();

  

  function SimpleNlerp();

  

  function SimpleSlerp();

  

  function SimpleElerp();

  

  function SimpleSqlerp();

  

  function Lerp();

  

  function Nlerp();

  

  function Slerp();

  

  function Elerp();

  

  function Sqlerp();

  

  function MulInverse();

  

  function MulInverted();

  

  function MulBasis();

  

  function MulAbsBasis();

  

  function MulTransposedBasis();

  

  function MulHomogen();

  

  function Decompose;

  

  property Components []: TpvScalar; default; [rw]

  

  property Columns []: TpvVector4; [rw]

  

  property Rows []: TpvVector4; [rw]

  

  case TpvInt32 of

    0: (

        RawComponents: array [0..3,0..3] of TpvScalar;

  

      );

    1: (

        LinearRawComponents: array [0..15] of TpvScalar;

  

      );

    2: (

        m00: TpvScalar;

  

        m01: TpvScalar;

  

        m02: TpvScalar;

  

        m03: TpvScalar;

  

        m10: TpvScalar;

  

        m11: TpvScalar;

  

        m12: TpvScalar;

  

        m13: TpvScalar;

  

        m20: TpvScalar;

  

        m21: TpvScalar;

  

        m22: TpvScalar;

  

        m23: TpvScalar;

  

        m30: TpvScalar;

  

        m31: TpvScalar;

  

        m32: TpvScalar;

  

        m33: TpvScalar;

  

      );

    3: (

        Tangent: TpvVector4;

  

        Bitangent: TpvVector4;

  

        Normal: TpvVector4;

  

        Translation: TpvVector4;

  

      );

    4: (

        Right: TpvVector4;

  

        Up: TpvVector4;

  

        Forwards: TpvVector4;

  

        Offset: TpvVector4;

  

      );

    5: (

        RawVectors: array [0..3] of TpvVector4;

  

      );

end;

  FlipZ = record = (RawComponents: ((1.0, 0.0, 0, 0.0), (0.0, 1.0, 0.0, 0.0), (0.0, 0.0, - 1.0, 0.0), (0.0, 0.0, 0.0, 1.0)))

  

public

  constructor Create();

  

  constructor CreateRotateX();

  

  constructor CreateRotateY();

  

  constructor CreateRotateZ();

  

  constructor CreateRotate();

  

  constructor CreateRotation(); overload;

  

  constructor CreateSkewYX();

  

  constructor CreateSkewZX();

  

  constructor CreateSkewXY();

  

  constructor CreateSkewZY();

  

  constructor CreateSkewXZ();

  

  constructor CreateSkewYZ();

  

  constructor CreateScale();

  

  constructor CreateTranslation();

  

  constructor CreateTranslated();

  

  constructor CreateFromToRotation();

  

  constructor CreateConstruct();

  

  constructor CreateOuterProduct();

  

  constructor CreateFromQuaternion();

  

  constructor CreateFromQTangent();

  

  constructor CreateReflect();

  

  constructor CreateFrustumLeftHandedNegativeOneToPositiveOne();

  

  constructor CreateFrustumLeftHandedZeroToOne();

  

  constructor CreateFrustumLeftHandedOneToZero();

  

  constructor CreateFrustumRightHandedNegativeOneToPositiveOne();

  

  constructor CreateFrustumRightHandedZeroToOne();

  

  constructor CreateFrustumRightHandedOneToZero();

  

  constructor CreateFrustum();

  

  constructor CreateOrthoLeftHandedNegativeOneToPositiveOne();

  

  constructor CreateOrthoLeftHandedZeroToOne();

  

  constructor CreateOrthoRightHandedNegativeOneToPositiveOne();

  

  constructor CreateOrthoRightHandedZeroToOne();

  

  constructor CreateOrtho();

  

  constructor CreateOrthoLH();

  

  constructor CreateOrthoRH();

  

  constructor CreateOrthoOffCenterLH();

  

  constructor CreateOrthoOffCenterRH();

  

  constructor CreatePerspectiveLeftHandedNegativeOneToPositiveOne();

  

  constructor CreatePerspectiveLeftHandedZeroToOne();

  

  constructor CreatePerspectiveLeftHandedOneToZero();

  

  constructor CreatePerspectiveRightHandedNegativeOneToPositiveOne();

  

  constructor CreatePerspectiveRightHandedZeroToOne();

  

  constructor CreatePerspectiveRightHandedOneToZero();

  

  constructor CreatePerspectiveReversedZ();

  

  constructor CreatePerspective();

  

  constructor CreateHorizontalFOVPerspectiveLeftHandedNegativeOneToPositiveOne();

  

  constructor CreateHorizontalFOVPerspectiveLeftHandedZeroToOne();

  

  constructor CreateHorizontalFOVPerspectiveLeftHandedOneToZero();

  

  constructor CreateHorizontalFOVPerspectiveRightHandedNegativeOneToPositiveOne();

  

  constructor CreateHorizontalFOVPerspectiveRightHandedZeroToOne();

  

  constructor CreateHorizontalFOVPerspectiveRightHandedOneToZero();

  

  constructor CreateHorizontalFOVPerspectiveReversedZ();

  

  constructor CreateHorizontalFOVPerspective();

  

  constructor CreateInverseLookAt();

  

  constructor CreateLookAt();

  

  constructor CreateFill();

  

  constructor CreateConstructX();

  

  constructor CreateConstructY();

  

  constructor CreateConstructZ();

  

  constructor CreateProjectionMatrixClip();

  

  constructor CreateRecomposed();

  

  class operator implicit(TpvScalar):TpvMatrix4x4();

  

  class operator explicit(TpvScalar):TpvMatrix4x4();

  

  class operator equal(TpvMatrix4x4,TpvMatrix4x4):Boolean();

  

  class operator notequal(TpvMatrix4x4,TpvMatrix4x4):Boolean();

  

  class operator inc(TpvMatrix4x4):TpvMatrix4x4();

  

  class operator dec(TpvMatrix4x4):TpvMatrix4x4();

  

  class operator add(TpvMatrix4x4,TpvMatrix4x4):TpvMatrix4x4();

  

  class operator add(TpvMatrix4x4,TpvScalar):TpvMatrix4x4();

  

  class operator add(TpvScalar,TpvMatrix4x4):TpvMatrix4x4();

  

  class operator subtract(TpvMatrix4x4,TpvMatrix4x4):TpvMatrix4x4();

  

  class operator subtract(TpvMatrix4x4,TpvScalar):TpvMatrix4x4();

  

  class operator subtract(TpvScalar,TpvMatrix4x4):TpvMatrix4x4();

  

  class operator multiply(TpvMatrix4x4,TpvMatrix4x4):TpvMatrix4x4();

  

  class operator multiply(TpvMatrix4x4,TpvScalar):TpvMatrix4x4();

  

  class operator multiply(TpvScalar,TpvMatrix4x4):TpvMatrix4x4();

  

  class operator multiply(TpvMatrix4x4,TpvVector2):TpvVector2();

  

  class operator multiply(TpvVector2,TpvMatrix4x4):TpvVector2();

  

  class operator multiply(TpvMatrix4x4,TpvVector3):TpvVector3();

  

  class operator multiply(TpvVector3,TpvMatrix4x4):TpvVector3();

  

  class operator multiply(TpvMatrix4x4,TpvVector4):TpvVector4();

  

  class operator multiply(TpvVector4,TpvMatrix4x4):TpvVector4();

  

  class operator multiply(TpvMatrix4x4,TpvPlane):TpvPlane();

  

  class operator multiply(TpvPlane,TpvMatrix4x4):TpvPlane();

  

  class operator divide(TpvMatrix4x4,TpvMatrix4x4):TpvMatrix4x4();

  

  class operator divide(TpvMatrix4x4,TpvScalar):TpvMatrix4x4();

  

  class operator divide(TpvScalar,TpvMatrix4x4):TpvMatrix4x4();

  

  class operator intdivide(TpvMatrix4x4,TpvMatrix4x4):TpvMatrix4x4();

  

  class operator intdivide(TpvMatrix4x4,TpvScalar):TpvMatrix4x4();

  

  class operator intdivide(TpvScalar,TpvMatrix4x4):TpvMatrix4x4();

  

  class operator modulus(TpvMatrix4x4,TpvMatrix4x4):TpvMatrix4x4();

  

  class operator modulus(TpvMatrix4x4,TpvScalar):TpvMatrix4x4();

  

  class operator modulus(TpvScalar,TpvMatrix4x4):TpvMatrix4x4();

  

  class operator negative(TpvMatrix4x4):TpvMatrix4x4();

  

  class operator positive(TpvMatrix4x4):TpvMatrix4x4();

  

  function Determinant;

  

  function SimpleInverse;

  

  function Inverse;

  

  function Transpose;

  

  function Adjugate;

  

  function EulerAngles;

  

  function Normalize;

  

  function OrthoNormalize;

  

  function RobustOrthoNormalize();

  

  function ToQuaternion;

  

  function ToQTangent();

  

  function ToMatrix3x3;

  

  function ToRotation;

  

  function SimpleLerp();

  

  function SimpleNlerp();

  

  function SimpleSlerp();

  

  function SimpleElerp();

  

  function SimpleSqlerp();

  

  function Lerp();

  

  function Nlerp();

  

  function Slerp();

  

  function Elerp();

  

  function Sqlerp();

  

  function MulInverse();

  

  function MulInverted();

  

  function MulBasis();

  

  function MulAbsBasis();

  

  function MulTransposedBasis();

  

  function MulHomogen();

  

  function Decompose;

  

  property Components []: TpvScalar; default; [rw]

  

  property Columns []: TpvVector4; [rw]

  

  property Rows []: TpvVector4; [rw]

  

  case TpvInt32 of

    0: (

        RawComponents: array [0..3,0..3] of TpvScalar;

  

      );

    1: (

        LinearRawComponents: array [0..15] of TpvScalar;

  

      );

    2: (

        m00: TpvScalar;

  

        m01: TpvScalar;

  

        m02: TpvScalar;

  

        m03: TpvScalar;

  

        m10: TpvScalar;

  

        m11: TpvScalar;

  

        m12: TpvScalar;

  

        m13: TpvScalar;

  

        m20: TpvScalar;

  

        m21: TpvScalar;

  

        m22: TpvScalar;

  

        m23: TpvScalar;

  

        m30: TpvScalar;

  

        m31: TpvScalar;

  

        m32: TpvScalar;

  

        m33: TpvScalar;

  

      );

    3: (

        Tangent: TpvVector4;

  

        Bitangent: TpvVector4;

  

        Normal: TpvVector4;

  

        Translation: TpvVector4;

  

      );

    4: (

        Right: TpvVector4;

  

        Up: TpvVector4;

  

        Forwards: TpvVector4;

  

        Offset: TpvVector4;

  

      );

    5: (

        RawVectors: array [0..3] of TpvVector4;

  

      );

end;

end;

Inheritance

TpvMatrix4x4Helper

  



CT Web help

CodeTyphon Studio