計算値に対応して、針が動く(速度に対応したスピ-ドメーター)を描画したいのですが、
この場合、どのようなプログラムを組めばよいのでしょうか?
ゲームプログラミンギの館のサンプルプログラムを参考にして、針を動かすことはできたのですが、ただ時間経過にあわせて針が回転する『時計』しか作ることができませんでした。
どうかアドバイスお願いします。
#include "DxLib.h"
#define PI 3.1415926
int image0,image1,image2,count=0;
char Key[256];
int WINAPI WinMain( HINSTANCE hInstance, HINSTANCE hPrevInstance,LPSTR lpCmdLine, int nCmdShow ){
if( ChangeWindowMode(TRUE) != DX_CHANGESCREEN_OK || DxLib_Init() == -1 ) return -1;
SetDrawScreen( DX_SCREEN_BACK );
image0 = LoadGraph( "計器.dds" ) ;//計器盤の画像を読み込む
image1 = LoadGraph( "長針.dds" ) ;//速度計の長針の画像を読み込む
image2 = LoadGraph( "短針.dds" ) ;//速度計の短針の画像を読み込む
while(!ProcessMessage() && !ClearDrawScreen() && !GetHitKeyStateAll( Key ) && Key[KEY_INPUT_ESCAPE]==0){
LoadGraphScreen( 0 , 0 , "計器.dds" , FALSE ) ;//計器盤を描画
DrawRotaGraph2 ( 155 , 155 , 13 , 97 , 1.0 , (double)count*0.1, image1 , TRUE) ;//長針を回転描画
DrawRotaGraph2 ( 155 , 155 , 11.5 , 56 , 1.0 , (double)count*0.01 , image2 , TRUE) ;//短針を回転描画
DrawCircle ( 155 , 155 , 2 , GetColor(255,0,0) ) ;//中心点を描画
count++;
ScreenFlip();
}
DxLib_End();
return 0;
}
数値に対応した描画について
-
バグ
Re:数値に対応した描画について
例えば、半円状の盤に速度を表示するような形のメーターならば…
針の角度=180×(現在速度÷最高速度)
で求める事ができますね。
時計の針を表示させる事ができるならば、それほど難しくはないと思いますよ。がんばってください♪
針の角度=180×(現在速度÷最高速度)
で求める事ができますね。
時計の針を表示させる事ができるならば、それほど難しくはないと思いますよ。がんばってください♪