
No.1ベストアンサー
- 回答日時:
私は,HSPで同じようなことがあったんですが,
スクリーンをロック(redraw 0)
円1を動かす (表示は更新されない
円2を動かす (同上
スクリーンのロックを解除(redraw 1)
で,一度に両方動かすんです.
VC++は全くわからないので,この方法が使えるかどうかわかりませんが,参考になれば・・・
No.2
- 回答日時:
例えば円の中心点A(ax,ay)とB(bx,by)が直線で動くとします。
Aは(200,100)→(800,600)
Bは(700,300)→(100,500)
これをfor文で同時に動かそうとすると、
int n = 200;
for (int i = 0; i <= n; i++) {
ax = 200 + (800-200) * i / n;
ay = 100 + (600-100) * i / n;
bx = 700 + (100-700) * i / n;
by = 300 + (500-300) * i / n;
円の描画をする
少し待つ
}
こんな感じになります。
「少し待つ」という部分を実現するプログラムの構造を考えてみる必要があるのですが、このようなforループではうまくいかないと思います。
何かを動かす場合は時間の概念が重要で、経過時間を計測しながら、次に移動させる量を計算しなければならない事が多いです。動くオブジェクト1つ1つに対して、「いつから・いつまで・どこから・どこまで・どんな動き」のようなデータを用意して、そのデータに従って、次に表示させる座標を計算することになります。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Vba Replace関数について教えて...
-
CSSが全く分かりません、お助け...
-
プログラミング 素数か素数では...
-
c言語の問題の説明、各所ごとに
-
DLLファイルの逆コンパイラにつ...
-
逆コンパイルと逆アセンブルの...
-
C言語について。
-
C#でログファイルにファイルパ...
-
終端記号、非終端記号とは
-
VisualStudioでC++クラスを追加...
-
int16_t の _t は何?
-
Cのオブジェクトファイルの逆ア...
-
C言語の関数のextern宣言
-
DNCL(共テ用プログラミング言語...
-
C#でTreeViewのCheckBoxのサイ...
-
CPUが16bitでも32bitOSでコンパ...
-
C言語 列挙型(enum型)変数について
-
コマンドプロンプトについて。
-
visual studioでフォームデザイ...
-
Windows Formアプリからコンソ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
COBOLのIFの入れ子について
-
VB.NETで階乗を求めるプログラ...
-
GoTo文について
-
javascript初心者です
-
OpenCV cvmatchtemplate
-
小文字wと大文字Wの区別
-
Windowsでchangenotifyしたい
-
Rubyのソースを難読化すると「u...
-
Ruby / passenger のインストー...
-
バーコードのチェックデジット...
-
Ruby on Railsでボタンをクリッ...
-
パソコンのフォルダ保存について
-
書店・アマゾンで購入できる、P...
-
プログラミング言語で大文字と...
-
Rubyの.soについて
-
Rubyを勉強している初心者です...
-
We're sorry, but something we...
-
RubyでexeファイルをつくるExer...
-
「大文字・小文字・スペース」...
-
RubyでNo such file or directo...
おすすめ情報