TMtxInt.Rotate Method

Overload List

#SignatureDescription
1function Rotate(const Src: TMtxVecInt; Offset: Integer; SrcIndex: Integer; Index: Integer; Len: Integer): TMtxVecInt;A cyclic shift on vector elements in range.
2function Rotate(Offset: Integer; Index: Integer; Len: Integer): TMtxVecInt;A cyclic shift on vector elements in range.

Overload 1: function Rotate(const Src: TMtxVecInt; Offset: Integer; SrcIndex: Integer; Index: Integer; Len: Integer): TMtxVecInt;

A cyclic shift on vector elements in range.

#NameTypeDescription
1SrcTMtxVecIntsource TVecInt or TMtxInt
2OffsetInteger
3SrcIndexIntegersource start index
4IndexIntegerstart index
5LenIntegerelement count

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

Remarks:

Performs cyclic shift on source vector elements in specified range [SrcIndex .. SrcIndex+Len-1] and stores them to calling vector elements [Index .. Index+Len-1]. The number of elements to shift is specified in the Offset parameter. Offset can be any integer number, positive or negative.

An exception is raised if array borders are overrun/underrun.

Overload 2: function Rotate(Offset: Integer; Index: Integer; Len: Integer): TMtxVecInt;

A cyclic shift on vector elements in range.

#NameTypeDescription
1OffsetInteger
2IndexIntegerstart index
3LenIntegerelement count

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

Remarks:

Performs cyclic shift on vector elements in specified range [Index..Index+Len-1]. The number of elements to shift is specified in the Offset parameter. Offset can be any integer number, positive or negative.

An exception is raised if array borders are overrun/underrun.