www.digitalmars.com         C & C++   DMDScript  

digitalmars.D.learn - ndslice help.

reply Zz <Zz nomail.com> writes:
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
Dec 30 2015
parent reply Ilya Yaroshenko <ilyayaroshenko gmail.com> writes:
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
Dec 30 2015
parent Zz <Zz nomail.com> writes:
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
Dec 30 2015