나는 Float32Array
소스를 보조 Float32Array
에서 만듭니다. 보조 값 Float32Array
에 반복 시퀀스로 복사하려는 값 시퀀스 model
이 있습니다. 나는 현재 reverse while 루프를 사용하여이 작업을 수행하고있다.반복 시퀀스를 TypedArray에 복사하는보다 효율적인 방법은 무엇입니까?
sequence = [1, 0, 0, 0, 0, 1, 0, 0, 2, 0, 1, 0];
n = 3179520; //divisible by sequence length
modelBuffs = new Float32Array(n);
var v = modelBuffs.length;
while(v-=12){
modelBuffs[v-12] = sequence[0];
modelBuffs[v-11] = sequence[1];
modelBuffs[v-10] = sequence[2];
modelBuffs[v-9] = sequence[3];
// YTransform
modelBuffs[v-8] = sequence[4];
modelBuffs[v-7] = sequence[5];
modelBuffs[v-6] = sequence[6];
modelBuffs[v-5] = sequence[7];
// ZTransform
modelBuffs[v-4] = sequence[8];
modelBuffs[v-3] = sequence[9];
modelBuffs[v-2] = sequence[10];
modelBuffs[v-1] = sequence[11];
}
불행하게도, n
를 알 수 있습니다. 대체 솔루션이 없다면 상당한 리팩토링을해야 할 수도 있습니다. 내가 한 번 시퀀스를 설정할 수 있고 초기 바이트 시퀀스를 반복하는 장소/반복 채우기/비트 단위 작업에 복사본이있을 것으로 기대하고 있습니다.
편집는 예컨대 입력
필자가 볼 수 있듯이 패턴이 있지만'3, 7,11,15'에서는 값을 사용하지 않습니다. 특별한 이유가 있습니까? – Rajesh
@rajesh 나는 이것을 더 복잡한 예제에서 잘라 냈다. 특별한 이유는 3,7,11,15는 사용되지 않는 4x4 행렬의 마지막 열입니다. – kevzettler
그래서'NxM' 행렬에서'm-1' 열은 항상 사용되지 않는다고 가정해야합니까? – Rajesh