Я предполагаю, что под длиной вы подразумеваете рост. Во-первых, убедитесь, что ваш и нормальный векторы нормализованы. Вы можете умножить вектор роста на длину и сложить и вычесть результат из центра, чтобы получить временные результаты A и B соответственно.
Затем скрестите произведение вектора вверх с вектором нормали, чтобы получить правый вектор (или влево, в зависимости от того, в каком порядке вы делаете перекрестное произведение). Затем умножьте правый вектор на ширину, сложите и вычтите его из центра, чтобы получить еще два временных результата, C и D. соответственно.
Наконец, четыре угла четырехугольника можно получить, добавив каждый из C и D к каждому из A и B.