処理中のプロジェクトがあり、Twitter のツイートをスクレイピングし、ツイートの言葉に基づいてボイドの群れを作成します。https://processing.org/examples/flocking.htmlの群れの例をベースとして使用すると、プロジェクトの約 95% が完了しました。
ここでの問題は、1 つの一般的な形状 (サンプル コードでは三角形) の代わりに、text() 関数を使用してツイートの単語を描画するように、フロッキング コードを変更することです。現在、そうすると、言葉が重なり合ってしまいます。私が使用しているコードは次のとおりです。
void render() {
float theta = velocity.heading() + radians(0);
fill(255, 255, 255);
stroke(255);
pushMatrix();
translate(location.x, location.y);
for (int i = 0; i < words1.length; i++) {
rotate(theta);
text(words1[i], 0, 0);
}
popMatrix();
}
私のテストから、問題はコードの翻訳部分にあるようです。location.x と location.y は、boid の現在の位置であり、単一の形状では問題なく機能しますが、複数の異なる形状を追跡する必要がある場合、これは問題になる可能性があります。ツイートの単語ごとに個別に実行するように boids コードを書き直さなくても、これを行う方法はありますか?