package com.sandro.example;
import android.content.Context;
import android.graphics.Canvas;
import android.graphics.Paint;
import android.util.AttributeSet;
import android.util.Log;
import android.view.View;
public class SmokeView extends View{
private final static int WIDTH = 480;
private final static int HEIGHT = 400;
private Paint mPaint;
private int[] array ;
private ParticleManager patricleManager;
@Override
protected void onDraw(Canvas canvas){
canvas.drawBitmap(array, 0, WIDTH, 0, 0, WIDTH, HEIGHT, false, mPaint);
}
private void init(Context context){
mPaint = new Paint();
array = new int[WIDTH*HEIGHT];
patricleManager = new ParticleManager(WIDTH,HEIGHT);
}
public void changeSmoke(){
long time=System.currentTimeMillis();
blurAll();
array = patricleManager.getBitmapArray(array);
Log.i("sandro", "time : " + (System.currentTimeMillis() - time));
this.invalidate();
}
private void blurAll(){
for(int i = 0;i<array.length;i++){
if(array[i]>0){
array[i]=0;
}
}
}
public SmokeView(Context context, AttributeSet attrs, int defStyle) {
super(context, attrs, defStyle);
init(context);
}
public SmokeView(Context context, AttributeSet attrs) {
super(context, attrs);
init(context);
}
public SmokeView(Context context) {
super(context);
init(context);
}
}