Все ниже написанное и выше придуманное относицца пока тока к обычному передвижению, как ваша ходьба на работу.
шаг- целостное движение. Оно началось и оно должно закончиццо в независимости от чего ни будь. Вы же не останавливаетесь с понятой ногой. Т.е. если робот поднял ногу он должен ее поставить. А вот куда поставить, вот тут вопрос. я думаю так: робот выполняет шаг, когда ступня попадает в "зону боевых действий" в сторону и параллельно направлению движения тела

чем выше высота тела тем уже эти треугольники. крайний- предельно возможная область действия ноги в прямом стоянии.
Описать это математически проблем нет.
тока дайте де.
я не писатель
я выбил палец.
дайте попрограмить.
=)