ページ 11

オブジェクトを8の字に移動させたい

Posted: 2011年11月26日(土) 17:56
by YYSS
~開発環境~
 Windows 7 Ultimate SP1 32bit
 Visual C++ 2010
 DXライブラリ

8の字の移動を行いたいのですが、なかなかいい方法が思いつきません。

8の字の交差部分を原点として、ぐるぐると回したいだけなのですが・・・

コード:


//xyが描画座標、baseが原点
static double x, y, baseX, baseY;
static double ang = 0
static int flame = 0;

if( flame == 0 ){
  baseX = 100;
  baseY = 100;
}

//cos2とかはcosのDeg版
 x = baseX + 100 * cos2( ang );
 y = baseY + 200 * sin2( ang );

 flame ++;
 ang ++;


これだとただの楕円移動になっていまい8の字になりません。
回転移動はある程度理解できたのですが、8の字となると思いつきません;;

何かアドバイスをいただけると幸いです。

Re: オブジェクトを8の字に移動させたい

Posted: 2011年11月26日(土) 18:35
by かずま
これでどうでしょうか?

コード:

    x = baseX + 200 * cos2(ang);
    y = baseY + 100 * sin2(2 * ang);

Re: オブジェクトを8の字に移動させたい

Posted: 2011年11月26日(土) 22:39
by YYSS
かずま さんが書きました:これでどうでしょうか?

コード:

    x = baseX + 200 * cos2(ang);
    y = baseY + 100 * sin2(2 * ang);
完璧ですw
こんな簡単に出来て感動しましたw
ありがとうございました!