Class AIMatrix4x4

  • All Implemented Interfaces:
    java.lang.AutoCloseable, NativeResource, Pointer

    public class AIMatrix4x4
    extends Struct
    implements NativeResource
    Represents a row-major 4x4 matrix, use this for homogeneous coordinates.

    Layout

    
     struct aiMatrix4x4 {
         float a1;
         float a2;
         float a3;
         float a4;
         float b1;
         float b2;
         float b3;
         float b4;
         float c1;
         float c2;
         float c3;
         float c4;
         float d1;
         float d2;
         float d3;
         float d4;
     }
    • Field Detail

      • SIZEOF

        The struct size in bytes.
      • ALIGNOF

        The struct alignment in bytes.
      • A1, A2, A3, A4, B1, B2, B3, B4, C1, C2, C3, C4, D1, D2, D3, D4

        The struct member offsets.
    • Constructor Detail

      • AIMatrix4x4

        public AIMatrix4x4​(java.nio.ByteBuffer container)
        Creates a AIMatrix4x4 instance at the current position of the specified ByteBuffer container. Changes to the buffer's content will be visible to the struct instance and vice versa.

        The created instance holds a strong reference to the container object.

    • Method Detail

      • sizeof

        public int sizeof()
        Description copied from class: Struct
        Returns sizeof(struct).
        Specified by:
        sizeof in class Struct
      • a1

        public float a1()
        Returns the value of the a1 field.
      • a2

        public float a2()
        Returns the value of the a2 field.
      • a3

        public float a3()
        Returns the value of the a3 field.
      • a4

        public float a4()
        Returns the value of the a4 field.
      • b1

        public float b1()
        Returns the value of the b1 field.
      • b2

        public float b2()
        Returns the value of the b2 field.
      • b3

        public float b3()
        Returns the value of the b3 field.
      • b4

        public float b4()
        Returns the value of the b4 field.
      • c1

        public float c1()
        Returns the value of the c1 field.
      • c2

        public float c2()
        Returns the value of the c2 field.
      • c3

        public float c3()
        Returns the value of the c3 field.
      • c4

        public float c4()
        Returns the value of the c4 field.
      • d1

        public float d1()
        Returns the value of the d1 field.
      • d2

        public float d2()
        Returns the value of the d2 field.
      • d3

        public float d3()
        Returns the value of the d3 field.
      • d4

        public float d4()
        Returns the value of the d4 field.
      • a1

        public AIMatrix4x4 a1​(float value)
        Sets the specified value to the a1 field.
      • a2

        public AIMatrix4x4 a2​(float value)
        Sets the specified value to the a2 field.
      • a3

        public AIMatrix4x4 a3​(float value)
        Sets the specified value to the a3 field.
      • a4

        public AIMatrix4x4 a4​(float value)
        Sets the specified value to the a4 field.
      • b1

        public AIMatrix4x4 b1​(float value)
        Sets the specified value to the b1 field.
      • b2

        public AIMatrix4x4 b2​(float value)
        Sets the specified value to the b2 field.
      • b3

        public AIMatrix4x4 b3​(float value)
        Sets the specified value to the b3 field.
      • b4

        public AIMatrix4x4 b4​(float value)
        Sets the specified value to the b4 field.
      • c1

        public AIMatrix4x4 c1​(float value)
        Sets the specified value to the c1 field.
      • c2

        public AIMatrix4x4 c2​(float value)
        Sets the specified value to the c2 field.
      • c3

        public AIMatrix4x4 c3​(float value)
        Sets the specified value to the c3 field.
      • c4

        public AIMatrix4x4 c4​(float value)
        Sets the specified value to the c4 field.
      • d1

        public AIMatrix4x4 d1​(float value)
        Sets the specified value to the d1 field.
      • d2

        public AIMatrix4x4 d2​(float value)
        Sets the specified value to the d2 field.
      • d3

        public AIMatrix4x4 d3​(float value)
        Sets the specified value to the d3 field.
      • d4

        public AIMatrix4x4 d4​(float value)
        Sets the specified value to the d4 field.
      • set

        public AIMatrix4x4 set​(float a1,
                               float a2,
                               float a3,
                               float a4,
                               float b1,
                               float b2,
                               float b3,
                               float b4,
                               float c1,
                               float c2,
                               float c3,
                               float c4,
                               float d1,
                               float d2,
                               float d3,
                               float d4)
        Initializes this struct with the specified values.
      • set

        public AIMatrix4x4 set​(AIMatrix4x4 src)
        Copies the specified struct data to this struct.
        Parameters:
        src - the source struct
        Returns:
        this struct
      • create

        public static AIMatrix4x4 create​(long address)
        Returns a new AIMatrix4x4 instance for the specified memory address.
      • createSafe

        @Nullable
        public static AIMatrix4x4 createSafe​(long address)
        Like create, but returns null if address is NULL.
      • create

        public static AIMatrix4x4.Buffer create​(long address,
                                                int capacity)
        Create a AIMatrix4x4.Buffer instance at the specified memory.
        Parameters:
        address - the memory address
        capacity - the buffer capacity
      • createSafe

        @Nullable
        public static AIMatrix4x4.Buffer createSafe​(long address,
                                                    int capacity)
        Like create, but returns null if address is NULL.
      • callocStack

        public static AIMatrix4x4 callocStack()
        Returns a new AIMatrix4x4 instance allocated on the thread-local MemoryStack and initializes all its bits to zero.
      • callocStack

        public static AIMatrix4x4 callocStack​(MemoryStack stack)
        Returns a new AIMatrix4x4 instance allocated on the specified MemoryStack and initializes all its bits to zero.
        Parameters:
        stack - the stack from which to allocate
      • callocStack

        public static AIMatrix4x4.Buffer callocStack​(int capacity)
        Returns a new AIMatrix4x4.Buffer instance allocated on the thread-local MemoryStack and initializes all its bits to zero.
        Parameters:
        capacity - the buffer capacity
      • callocStack

        public static AIMatrix4x4.Buffer callocStack​(int capacity,
                                                     MemoryStack stack)
        Returns a new AIMatrix4x4.Buffer instance allocated on the specified MemoryStack and initializes all its bits to zero.
        Parameters:
        stack - the stack from which to allocate
        capacity - the buffer capacity
      • na1

        public static float na1​(long struct)
        Unsafe version of a1().
      • na2

        public static float na2​(long struct)
        Unsafe version of a2().
      • na3

        public static float na3​(long struct)
        Unsafe version of a3().
      • na4

        public static float na4​(long struct)
        Unsafe version of a4().
      • nb1

        public static float nb1​(long struct)
        Unsafe version of b1().
      • nb2

        public static float nb2​(long struct)
        Unsafe version of b2().
      • nb3

        public static float nb3​(long struct)
        Unsafe version of b3().
      • nb4

        public static float nb4​(long struct)
        Unsafe version of b4().
      • nc1

        public static float nc1​(long struct)
        Unsafe version of c1().
      • nc2

        public static float nc2​(long struct)
        Unsafe version of c2().
      • nc3

        public static float nc3​(long struct)
        Unsafe version of c3().
      • nc4

        public static float nc4​(long struct)
        Unsafe version of c4().
      • nd1

        public static float nd1​(long struct)
        Unsafe version of d1().
      • nd2

        public static float nd2​(long struct)
        Unsafe version of d2().
      • nd3

        public static float nd3​(long struct)
        Unsafe version of d3().
      • nd4

        public static float nd4​(long struct)
        Unsafe version of d4().
      • na1

        public static void na1​(long struct,
                               float value)
        Unsafe version of a1.
      • na2

        public static void na2​(long struct,
                               float value)
        Unsafe version of a2.
      • na3

        public static void na3​(long struct,
                               float value)
        Unsafe version of a3.
      • na4

        public static void na4​(long struct,
                               float value)
        Unsafe version of a4.
      • nb1

        public static void nb1​(long struct,
                               float value)
        Unsafe version of b1.
      • nb2

        public static void nb2​(long struct,
                               float value)
        Unsafe version of b2.
      • nb3

        public static void nb3​(long struct,
                               float value)
        Unsafe version of b3.
      • nb4

        public static void nb4​(long struct,
                               float value)
        Unsafe version of b4.
      • nc1

        public static void nc1​(long struct,
                               float value)
        Unsafe version of c1.
      • nc2

        public static void nc2​(long struct,
                               float value)
        Unsafe version of c2.
      • nc3

        public static void nc3​(long struct,
                               float value)
        Unsafe version of c3.
      • nc4

        public static void nc4​(long struct,
                               float value)
        Unsafe version of c4.
      • nd1

        public static void nd1​(long struct,
                               float value)
        Unsafe version of d1.
      • nd2

        public static void nd2​(long struct,
                               float value)
        Unsafe version of d2.
      • nd3

        public static void nd3​(long struct,
                               float value)
        Unsafe version of d3.
      • nd4

        public static void nd4​(long struct,
                               float value)
        Unsafe version of d4.