MatrixInt.Diag Method

function Diag(const Vec: TVecInt; k: Integer): TMtxInt;

Sets the matrix diagonal to values from the vector.

#NameTypeDescription
1VecTVecInt
2kInteger

Result: stored in self (calling object), returns self for chaining

Remarks:

Sets the k-th diagonal of the calling matrix to values from from the Vec object. If k = 0 then the main diagonal matrix is set, if k < 0 then the k-th subdiagonal matrix is set and if k > 0 the then the k-th super diagonal is set. The matrix must be large enough to hold diagonal or an exception is raised.

Examples
var A: TMtxInt;
    D: TVecInt;
begin
    CreateIt(A);
    CreateIt(D);
    try
        A.SetIt(2,2,[1,1,
            1,2]);
        D.SetIt([3,4]);
        A.Diag(D,0);
        // A becomes:
        // [3,1]
        // [1,4]
    finally
        FreeIt(D);
        FreeIt(A);
    end;
end;
See Also: TVecInt.Diag