坐标 X Y 绘制 Android
coordinate X Y draw Android
我编写了一个绘图应用程序,我想检索我绘图的所有 X Y。也就是说每次我触摸屏幕时,坐标 x 和 y 我把它们放在一个二维的 table ,
我吐司想知道坐标什么时候变了,发现在movetouch方法里变了,所以在方法里声明了一个table 还是吐司看看10在我的数组中,toast 改变了坐标,所以我明白实际上只要 x 和 y 发生变化,值就会被压碎,或者我正在种植
public boolean onTouchEvent(MotionEvent event) {
float x = event.getX();
float y = event.getY();
switch (event.getAction()) {
case MotionEvent.ACTION_DOWN:
startTouch(x, y);
invalidate();
break;
case MotionEvent.ACTION_UP:
upTouch();
invalidate();
break;
case MotionEvent.ACTION_MOVE:
moveTouche(x, y);
invalidate();
break;
}
return true;
}
方法 moveTouch
public void moveTouche (float x,float y ) {
if ((canDraw)&& drawing) {
float dx = Math.abs(x - mX);
float dy = Math.abs(y - mY);
if(dx >= Tolerance || dy >= Tolerance){
path.quadTo(mX,mY,(x+mX)/2,(y+mY)/2);
mX = x ;
mY = y;
double[][] point = new double [99][2];
for (int i = 0; i < 99; i++) {
point[i][0]=x;
point[i][1]=y;
}
Toast.makeText(getContext(),"y = "+point[10][1]+" ",Toast.LENGTH_LONG).show();
}}
}
您可以从任何路径读取任意数量的点。如何从路径中间读取坐标的示例:
PathMeasure pm = new PathMeasure(myPath, false);
//coordinates will be here
float aCoordinates[] = {0f, 0f};
//get coordinates of the middle point
pm.getPosTan(pm.getLength() * 0.5f, aCoordinates, null);
您可以从路径起点经过任意距离来获取点坐标。
我编写了一个绘图应用程序,我想检索我绘图的所有 X Y。也就是说每次我触摸屏幕时,坐标 x 和 y 我把它们放在一个二维的 table ,
我吐司想知道坐标什么时候变了,发现在movetouch方法里变了,所以在方法里声明了一个table 还是吐司看看10在我的数组中,toast 改变了坐标,所以我明白实际上只要 x 和 y 发生变化,值就会被压碎,或者我正在种植
public boolean onTouchEvent(MotionEvent event) {
float x = event.getX();
float y = event.getY();
switch (event.getAction()) {
case MotionEvent.ACTION_DOWN:
startTouch(x, y);
invalidate();
break;
case MotionEvent.ACTION_UP:
upTouch();
invalidate();
break;
case MotionEvent.ACTION_MOVE:
moveTouche(x, y);
invalidate();
break;
}
return true;
}
方法 moveTouch
public void moveTouche (float x,float y ) {
if ((canDraw)&& drawing) {
float dx = Math.abs(x - mX);
float dy = Math.abs(y - mY);
if(dx >= Tolerance || dy >= Tolerance){
path.quadTo(mX,mY,(x+mX)/2,(y+mY)/2);
mX = x ;
mY = y;
double[][] point = new double [99][2];
for (int i = 0; i < 99; i++) {
point[i][0]=x;
point[i][1]=y;
}
Toast.makeText(getContext(),"y = "+point[10][1]+" ",Toast.LENGTH_LONG).show();
}}
}
您可以从任何路径读取任意数量的点。如何从路径中间读取坐标的示例:
PathMeasure pm = new PathMeasure(myPath, false);
//coordinates will be here
float aCoordinates[] = {0f, 0f};
//get coordinates of the middle point
pm.getPosTan(pm.getLength() * 0.5f, aCoordinates, null);
您可以从路径起点经过任意距离来获取点坐标。