teratail header banner
teratail header banner
質問するログイン新規登録

回答編集履歴

2

繰り返し時のコード修正

2017/02/08 01:13

投稿

masaya_ohashi
masaya_ohashi

スコア9210

answer CHANGED
@@ -29,7 +29,7 @@
29
29
 
30
30
  さて、これを8つ描きたいということですが、8つ描くだけならいまある描画処理をfor文で8回やればいいだけです。わざわざボールの個数分のスレッドを回す必要はありません。これら8つの●が常に等間隔、等速で回るのであれば、tに対して8分の1周分プラス(またはマイナス)したtを渡してやればいいだけです。for文のカウントをiとしたとき、tの計算はこうなります。
31
31
  ```
32
- t = 2 * 3.1415 * pass / period + (period * i / 8);
32
+ t = 2 * 3.1415 * (pass + period * i / 8) / period;
33
33
  ```
34
34
 
35
35
  あとは自分で組み立ててみてください。

1

スレッドに関する文書修正

2017/02/08 01:13

投稿

masaya_ohashi
masaya_ohashi

スコア9210

answer CHANGED
@@ -27,7 +27,7 @@
27
27
 
28
28
  これで円運動する物体の中心点x、yの座標が求められました。ここを中心に●を描画すれば、無事に●が円運動します。
29
29
 
30
- さて、これを8つ描きたいということですが、8つ描くだけならfor文で8回やればいいだけです。わざわざスレッドにして8個処理を回す必要はありません。これら8つの●が常に等間隔、等速で回るのであれば、tに対して8分の1周分プラス(またはマイナス)したtを渡してやればいいだけです。for文のカウントをiとしたとき、tの計算はこうなります。
30
+ さて、これを8つ描きたいということですが、8つ描くだけならいまある描画処理をfor文で8回やればいいだけです。わざわざボールの個数分のスレッドを回す必要はありません。これら8つの●が常に等間隔、等速で回るのであれば、tに対して8分の1周分プラス(またはマイナス)したtを渡してやればいいだけです。for文のカウントをiとしたとき、tの計算はこうなります。
31
31
  ```
32
32
  t = 2 * 3.1415 * pass / period + (period * i / 8);
33
33
  ```