On Wednesday, 30 December 2015 at 20:43:21 UTC, Ilya Yaroshenko wrote:
On Wednesday, 30 December 2015 at 18:53:15 UTC, Zz wrote:
Hi,

Just playing with ndslice and I couldn't figure how to get the following transformations.

given.

auto slicea = sliced(iota(6), 2, 3, 1);
foreach (item; slicea)
{
   writeln(item);
}

which gives.

[[0][1][2]]
[[3][4][5]]

what transformation should i do to get the following from slicea.

[[0][2][4]]
[[1][3][5]]

[[4][2][0]]
[[5][3][1]]

Zz

Hi,

void main()
{
        auto slicea = sliced(iota(6), 2, 3, 1);
        auto sliceb = slicea.reshape(3, 2, 1).transposed!1;
        auto slicec = sliceb.reversed!1;

        writefln("%(%(%(%s%)\n%)\n\n%)", [slicea, sliceb, slicec]);
}

Output:
[0][1][2]
[3][4][5]

[0][2][4]
[1][3][5]

[4][2][0]
[5][3][1]

Ilya

Thanks

Reply via email to