我所试图做的事:创建一系列产生的每一帧彼此相邻的矩形。每个矩形的高度基于当时的声音频率,然后迭代器移动到下一个矩形,将最后一个保持在适当的高度。C++/OF迭代每次迭代更改属性的对象?
发生了什么事:屏幕变成了一个很大的单一块,所有的空间都随着频率不断上下移动......我似乎无法让它一次迭代一次,而不是全部改变它们不断。
我觉得我的问题是:我不知道如何让每一次迭代来存储并保存自己的价值观,即使值是对象的一部分......
中的代码问题:
float bldgHeighTemp;
for (int i = 0; i < 1000 ; i+=30){
for (int f = 0; f < (int)(BUFFER_SIZE/2); f++){
bldg temp;
bldgs.push_back(temp);
bldgs[i].bldgPosX = i;
bldgs[i].bldgPosY = ofGetHeight()/2;
bldgs[i].bldgWidth = 30;
bldgs[i].bldgHeight = bldgHeighTemp;
bldgs[i].draw();
bldgHeighTemp = freq[f]*-6;
}
}
如何正确地实现这一点?
好吧,第一部分是有意义的... 第二部分,我有一个对象bldg.h,bldg.cpp并称它为矢量矢量 bldgs; 这有道理吗? –
bree
我想为每个框架添加一个新的矩形。我做错了吗? – bree
我是否把它推回错误的地方?我觉得我在这里错过了一些东西... – bree