合計 昨日 今日

イライラ棒の自機を画像で表示

フォーラムルール
フォーラムルールはこちら  ※コードを貼り付ける場合は [code][/code] で囲って下さい。詳しくはこちら
Name: help
[URL]
Date: 2017年10月10日(火) 21:40
No: 1
(OFFLINE)

 イライラ棒の自機を画像で表示

プログラミング初心者です

イライラ棒の自機を写真に置き換えたいのですが、あたり判定などを円のままで、円の部分に画像を上書きすることはできますでしょうか?
できるとしたらPlayerクラスを最終的にどのように編集すればいいのでしょうか?
何卒よろしくお願いします。

Name: Math
[URL]
Date: 2017年10月10日(火) 21:54
No: 2
(OFFLINE)

 Re: イライラ棒の自機を画像で表示

Forum rule http://dixq.net/board/board.htmlを読んで一度読んで見てくださいね。(^^;

>イライラ棒の自機を写真に置き換えたいのですが、あたり判定などを円のままで、円の部分に画像を上書きすることはできますでしょうか?
>できるとしたらPlayerクラスを最終的にどのように編集すればいいのでしょうか?
イライラ棒の自機を置き換えたい写真を加工して対応する円の形にし上書きすることは簡単にできそうな気がしますね。
Playerクラスを最終的にどのように編集すればいいのかは”自分”で判断するしかないでしょうね。もっと具体的に説明して頂けるといいのですがちょっと抽象論的すぎと思います。

Name: help
[URL]
Date: 2017年10月10日(火) 23:57
No: 3
(OFFLINE)

 Re: イライラ棒の自機を画像で表示

大変失礼いたしました。
Task classで
code
public abstract class Task {
protected Context _context;
public Task(Context c){
_context = c;
}
public boolean onUpdate(){
return true;
}

public void onDraw(Canvas c){
}

}
/code
として
Playerクラスを
code
public class Player extends Task {
private final static float MAX_SPEED = 20;
private final static float SIZE = 20;
private Circle _cir = null;
private Paint _paint = new Paint();
private Vec _vec = new Vec();
private Vec _sensorVec = new Vec();
protected Context _context;


public Player(Context _context){

_context = context;
Resources res = context.getResources();
Bitmap bitmap = BitmapFactory.decodeResource(res, R.drawable.ziro);

_cir = new Circle( 380, 700, SIZE );
_paint.setColor(Color.BLUE);
_paint.setAntiAlias(true);
}


public final Circle getPt(){
return _cir;
}

// ベクトルをセットする
private void setVec(){
float x = -AcSensor.Inst().getX()*2;
float y = AcSensor.Inst().getY()*2;
_sensorVec._x = x < 0 ? -x*x : x*x;
_sensorVec._y = y < 0 ? -y*y : y*y;
_sensorVec.setLengthCap(MAX_SPEED);
_vec.blend( _sensorVec, 0.05f );
}


private void Move(){
_cir._x += _vec._x;
_cir._y += _vec._y;
}

@Override
public boolean onUpdate(){
setVec();
Move();
return true;
}

@Override
public void onDraw( Canvas c ){
c.drawBitmap(res,_cir._x, _cir._y, _paint);
}

}
/code
とするとcontextにcannot resolve symbolというエラーが出てしまいます。長文すみませんでした。

Name: ????
[URL]
Date: 2017年10月11日(水) 00:30
No: 4
(OFFLINE)

 Re: イライラ棒の自機を画像で表示

Task classで
コード[C++]: 全て選択
1
2
3
4
5
6
7
8
9
10
11
12
13
public abstract class Task {
 protected Context _context;
 public Task(Context c){
 _context = c;
 }
 public boolean onUpdate(){
 return true;
 }
 
 public void onDraw(Canvas c){
 }
 
}

として
Playerクラスを
コード[C++]: 全て選択
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
public class Player extends Task {
 private final static float MAX_SPEED = 20;
 private final static float SIZE = 20;
 private Circle _cir = null;
 private Paint _paint = new Paint();
 private Vec _vec = new Vec();
 private Vec _sensorVec = new Vec();
 protected Context _context;
 
 
 public Player(Context _context){
 
 _context = context;
 Resources res = context.getResources();
 Bitmap bitmap = BitmapFactory.decodeResource(res, R.drawable.ziro);
 
 _cir = new Circle( 380, 700, SIZE );
 _paint.setColor(Color.BLUE);
 _paint.setAntiAlias(true);
 }
 
 
 public final Circle getPt(){
 return _cir;
 }
 
 // ベクトルをセットする
private void setVec(){
 float x = -AcSensor.Inst().getX()*2;
 float y = AcSensor.Inst().getY()*2;
 _sensorVec._x = x < 0 ? -x*x : x*x;
 _sensorVec._y = y < 0 ? -y*y : y*y;
 _sensorVec.setLengthCap(MAX_SPEED);
 _vec.blend( _sensorVec, 0.05f );
 }
 
 
 private void Move(){
 _cir._x += _vec._x;
 _cir._y += _vec._y;
 }
 
 @Override
 public boolean onUpdate(){
 setVec();
 Move();
 return true;
 }
 
 @Override
 public void onDraw( Canvas c ){
 c.drawBitmap(res,_cir._x, _cir._y, _paint);
 }
 
}

とするとcontextにcannot resolve symbolというエラーが出てしまいます。長文すみませんでした。

Name: Math
[URL]
Date: 2017年10月12日(木) 00:13
No: 5
(OFFLINE)

 Re: イライラ棒の自機を画像で表示

Forum rule http://dixq.net/board/board.htmlをよ~く読んで見てくださいね。(^^;
エラーを詳しくかく(何行目がエラーかでてるはず)
言語とOS(C/C++ VisualStadio2017,windows10 等)を書く。また
検証出来るように全体を提示してください。


Return to C言語何でも質問掲示板

オンラインデータ

このフォーラムを閲覧中のユーザー: なし & ゲスト[12人]