Skip to content

Instantly share code, notes, and snippets.

@yume-yu
Created September 5, 2018 01:21
Show Gist options
  • Save yume-yu/032c1997a2908f9bca912cbb0c17584f to your computer and use it in GitHub Desktop.
Save yume-yu/032c1997a2908f9bca912cbb0c17584f to your computer and use it in GitHub Desktop.
アニメーションつきフレーム表示
/**
* アニメーションつきフレーム表示
*/
void animete_make_flame(int width,int height,int x,int y){
int current_x; //アニメーション中のフレームの現在の左上x座標
int current_y; //アニメーション中のフレームの現在の左上y座標
int current_width; //アニメーション中のフレームの現在の幅
int current_height; //アニメーション中のフレームの現在の高さ
//開始時の座標に中心座標をセット
current_x = x + width/2;
current_y = y + height/2;
//与えられた幅の偶奇で初期幅を決定する
switch(width%2){
case 0:
current_width = 2;
break;
case 1:
current_width = 3;
break;
}
//与えられた高さの偶奇で初期高さを決定する
switch(height%2){
case 0:
current_height = 2;
break;
case 1:
current_height = 3;
break;
}
//アニメーション表示する
while(true){
make_flame(current_width,current_height,current_x,current_y);
//現在の値の更新 ここから
if(current_width != width){
current_width += 2;
current_x--;
}
if(current_height != height){
current_height += 2;
current_y--;
}
//現在の値の更新 ここまで
//アニメーション終了チェック
if(current_width == width && current_height == height){
break;
}
//アニメーションにするための間
usleep(5 * 10000);
fflush(stdout);
}
}
@yume-yu
Copy link
Author

yume-yu commented Sep 5, 2018

めも

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment