例えばIteratorでSpriteパッチなんかを敷き詰めようとすると、
まずは一方向に繰り返してからIterator入れ子にしてもう一回繰り返したりしますよね?
それが何となく面倒だったので、javascriptで配列作ってみた。
input 1がx軸、2がy、3がzの個数。Input Spliterでも繋いで入力。
例えばinputs1に4 inputs2に3 inputs3に2を入力すると、
outputs1は
0,1,2,3,0,1,2,3,0,1,2,3,
0,1,2,3,0,1,2,3,0,1,2,3,
outputs2は
0,0,0,0,1,1,1,1,2,2,2,2,
0,0,0,0,1,1,1,1,2,2,2,2,
outputs3は
0,0,0,0,0,0,0,0,0,0,0,0,
1,1,1,1,1,1,1,1,1,1,1,1,
という配列を出力するのでStructure Index Memberで分解してMathとかで加工して使う。と。
書き方がスマートじゃないとか言われてもよう分らん。
QC内でjavascript直接記述すると、for文書いてる途中で虹色グルグルになって処理できなくなったりするので、ある程度は外部エディタで書いてから調節したほうがいいみたいですね。
var a = inputs[0];
var b = inputs[1];
var c = inputs[2];
var myAry1 = new Array();
var myAry2 = new Array();
var myAry3 = new Array();
for (h=0; h<c; h++)
{
for (i=0; i<b; i++)
{
for (j=0; j<a; j++)
{
myAry1.push(j);
}
}
}
for (h=0; h<c; h++)
{
for (i=0; i<b; i++)
{
for (j=0; j<a; j++)
{
myAry2.push(i);
}
}
}
for (i=0; i<c; i++)
{
for (j=0; j<a*b; j++)
{
myAry3.push(i);
}
}
outputs[0] = myAry1;
outputs[1] = myAry2;
outputs[2] = myAry3;
posted by qtz(戻) at 22:54|
Comment(0)
|
TrackBack(0)
|
日記
|

|