package zxc.zxczxc.zxczxczxc;
import java.util.*;
import android.app.Activity;
import android.content.*;
import android.content.res.*;
import android.graphics.*;
import android.graphics.drawable.*;
import android.os.Bundle;
import android.view.*;
import android.view.Display;
import android.view.WindowManager;
public class TEST_AActivity extends Activity {
/** Called when the activity is first created. */
private MyView vm;
ArrayList<Vertex> arVertex;
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
vm = new MyView(this);
setContentView(vm);
arVertex = new ArrayList<Vertex>();
}
// A class what have location of a point
public class Vertex {
Vertex( float ax , float ay , boolean ad ) {
x = ax;
y = ay;
Draw = ad;
}
float x;
float y;
boolean Draw;
}
protected class MyView extends View {
Paint mPaint;
public MyView(Context context) {
super(context);
mPaint = new Paint();
mPaint.setColor(Color.BLACK);
mPaint.setStrokeWidth(1);
mPaint.setAntiAlias(true);
}
public void onDraw(Canvas canvas) {
Display display = ((WindowManager)getSystemService(WINDOW_SERVICE)).getDefaultDisplay();
int displayW = display.getWidth();
int displayH = display.getHeight();
Paint Pnt = new Paint();
canvas.drawColor(0xffe0e0e0);
Resources r = getResources();
BitmapDrawable bd = (BitmapDrawable)r.getDrawable(R.drawable.base);
Bitmap bit = bd.getBitmap();
canvas.drawBitmap(bit, 10, 10, null);
canvas.drawBitmap(bit, null, new Rect(0,0,displayW,displayH), null);
//drawing lines
for ( int i = 0 ; i < arVertex.size() ; i++ ) {
if ( arVertex.get(i).Draw ) {
canvas.drawLine(arVertex.get(i-1).x, arVertex.get(i-1).y,arVertex.get(i).x, arVertex.get(i).y, mPaint);
}
}
}
public boolean onTouchEvent(MotionEvent event) {
if( event.getAction() == MotionEvent.ACTION_DOWN ) {
arVertex.add(new Vertex(event.getX(), event.getY(), false));
return true;
}
if(event.getAction() == MotionEvent.ACTION_MOVE) {
arVertex.add(new Vertex(event.getX(), event.getY(), true));
invalidate();
return true;
}
return false;
}
}
}
아직 미완성이고 추가될 기능이 무궁무진 하지만 막히는게 하나있는데...
아니 무슨 뭐랄까 그 선을 빠르게 그어버리면 저렇게 막 각져서 나오는데.. 진짜 부드럽게 어떻게 못바꾸나 ㅠㅠ
댓글 영역
획득법
① NFT 발행
작성한 게시물을 NFT로 발행하면 일주일 동안 사용할 수 있습니다. (최초 1회)
② NFT 구매
다른 이용자의 NFT를 구매하면 한 달 동안 사용할 수 있습니다. (구매 시마다 갱신)
사용법
디시콘에서지갑연결시 바로 사용 가능합니다.