математическое распределение n объектов на равном расстоянии с интервалом s - PullRequest
0 голосов
/ 17 июля 2011

У меня есть набор объектов, по которым я двигаюсь по экрану.Они будут иметь размер 200 х 200 или 120 х 120 и будут двигаться только вправо или влево в направлении х.Мне нужно рассчитать начальные позиции объектов

Это должна быть простая математика, я думаю, где для объектов размером 120x120: (ноль - крайний левый край экрана)

пробел = 10(пиксели)

объект0 начинается с -120)

объект1 начинается с -240 + пробел

объект2 начинается с -360 + пробел

объект3 начинается с-480 + пробел

... object9 начинается с -1080 + пробел

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

Было бы также неплохо также вычислить начальные позиции x из любого заданноготочка вместо ручного ввода позиций х, учет х может быть положительным или отрицательным.

1 Ответ

0 голосов
/ 17 июля 2011
getPositionOfNth(int objectWidth, int startPosition, int objectNumber, int space){
    return startPosition + objectNumber * (objectWidth + space);
}

Теперь для вашего примера:

getPositionOfNth(120, 0, 0, 10) == 0
getPositionOfNth(120, 0, 1, 10) == 130
getPositionOfNth(120, 0, 2, 10) == 260
getPositionOfNth(120, 0, 2, 10) == 390
...
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...