Объекты располагаются, как показано на картинке.
Одна клетка — 10 пикселей.
Какие числа выведет программа?
x1,y1=t1.pos()
x2,y2=t2.pos()
dx=x2+x1
dy=y2+y1
print(dx,dy)
Классная задача на работу с координатами и единицами измерения в пикселях.
Что делает программа
- x1, y1 = t1.pos(): пиксельные координаты левого верхнего угла (или точки привязки) первого объекта.
- x2, y2 = t2.pos(): такие же для второго объекта.
- Одна клетка — 10 пикселей.
- dx = x2 + x1, dy = y2 + y1: программа выводит суммарные значения координат по x и по y.
Как получить точные числа
- Если оба объекта лежат в клетках сетки с ведущим уголком в начала координат, то их пиксельные координаты равны целым кратным 10: x1 = 10*i1, y1 = 10*j1, x2 = 10*i2, y2 = 10*j2, где i1, j1, i2, j2 — номер клетки по оси x и y.
- Тогда dx = x1 + x2 = 10*(i1 + i2), dy = y1 + y2 = 10*(j1 + j2).
Пример
- Пусть t1 находится в клетке (i1, j1) = (3, 4) и t2 в клетке (i2, j2) = (2, 1).
- x1 = 10*3 = 30, y1 = 10*4 = 40
- x2 = 10*2 = 20, y2 = 10*1 = 10
- dx = 30 + 20 = 50
- dy = 40 + 10 = 50
- Программа выведет: 50 50
Важно
- Чтобы дать конкретные числа, нужны ваши значения x1,y1 и x2,y2 (или координаты клеток i1,j1 и i2,j2, если известно, что положение привязано к сетке). Пришлите эти значения или опишите, в каких клетках находятся объекты на картинке — я посчитаю точно.
Если хотите, могу привести пошаговую схему вычисления прямо под ваш конкретный пример (клетки или пиксельные координаты).