Android OntouchListener, проверьте пересечение изображения при рисовании растрового изображения

1

ОК, ребята, отлично..., похоже, я ошибся с последним вопросом...

Я работаю над словарной игрой, и я изменил "Точку зрения" моей реализации приложения из GridView в рисунок Bitmap с использованием canvas в android.

это так: есть объект с возможностью рисования внутри холста, а также другой объект, который будет рисоваться, когда пользователь вызывает событие OntouchListener...

Я хочу сделать логическую операцию, так что, если второй объект draw имеет одну и ту же ось или ординат в качестве первого объекта, подлежащего рисованию, он сделает что-то...

здесь код:

public class DrawView extends View implements OnTouchListener{
private static final String TAG = "DrawView";

List<Point> points = new ArrayList<Point>();
Paint paint = new Paint();
Bitmap kangoo = BitmapFactory.decodeResource(getResources(),R.drawable.icon);

public DrawView(Context context, AttributeSet attrs) {
    super(context,attrs);
    setFocusable(true);
    setFocusableInTouchMode(true);

    this.setOnTouchListener(this);
    paint.setColor(Color.WHITE);
    paint.setAntiAlias(true);
}

@Override
public void onDraw(Canvas canvas) {
    Bitmap krazy = BitmapFactory.decodeResource(getResources(),R.drawable.schema);
    canvas.drawBitmap(krazy, 130, 130, null);
    for (Point point : points) {
        canvas.drawBitmap(kangoo, point.x, point.y, null);
        //canvas.drawCircle(point.x, point.y, 5, paint);
        // Log.d(TAG, "Painting: "+point);
    }
}

@Override
public boolean onTouch(View view, MotionEvent event) {
     // if(event.getAction() != MotionEvent.ACTION_DOWN)
    // return super.onTouchEvent(event);
    Point point = new Point();
    point.x = event.getX();
    point.y = event.getY();
    points.add(point);
    invalidate();
    Log.d(TAG, "point: " + point);
    return true;
}
    }

    class Point {
    float x, y;

    @Override
     public String toString() {
       return x + ", " + y;
     }
    }

см...., статический объект рисования - KRAZY и динамический, который будет рисовать при касании экрана KANGOO

Я хочу знать, находятся ли эти два объекта в контакте либо через x, либо через y....

Благодарим U

Теги:
canvas
drawable

1 ответ

1
Лучший ответ

На самом деле это решение используется, чтобы помочь моему игровому проекту по поиску слов...

Главное, что мне просто нужно сделать, это измерить занятые слова, которые представлены блоками drawables строки... а затем сравнить его с квадратной площадью, которая будет сделана квадратным полем выбора, которое будет нарисоваться внутри блоков символов, пока пользователь коснется экрана...

а затем вызывать, когда квадратная область или занятая область квадратного выбора OCCUPIED всем блоком символов.... я имею в виду, что квадрат выбора квадратов находится внутри блоков символов

в этом случае, если слово составляет 4 блока символов, начиная с точки .x = 0.0, y = 0.0, и каждый блок занят 32pix H и W, тогда занимаемая позиция квадратного поля выбора должна быть меньше 4 * 32 (W ) и 1 * 32 (H)....

Ещё вопросы

Сообщество Overcoder
Наверх
Меню