После раздумий я пришёл к следующему алгоритму решения задачи (в "плоской" постановке):
1) вычисляем координаты точки B;
2) через точку B проводим прямую, содержащую биссектрису прямого угла;
3) от прямой, содержащей биссектрису прямого угла, в разные полуплоскости от неё проводим прямые, содержащие стороны прямого угла;
4) через точку B проводим прямую, содержащую высоту;
5) через точку D проводим прямую, параллельную гипотенузе треугольника (эта прямая перпендикулярна прямой, содержащей высоту);
6) вычисляем координаты точек пересечения прямой, проведённой в п. 5, с прямыми, содержащими стороны прямого угла;
7) находим расстояния между точкой B и прямой, проведённой в п. 5, а также между точками, найденными в п. 6;
8) по данным, полученным в п.7, находим площадь полученного треугольника;
9) находим отношение площади полученного треугольника к заданной площади (по логике условия задачи оно должно быть меньше единицы);
10) извлекаем квадратный корень из отношения, полученного в п. 9, и находим на продолжении отрезка BD за точку D координаты основания высоты, опущенной на гипотенузу искомого треугольника;
11) через найденное основание высоты проводим гипотенузу искомого треугольника;
12) находим координаты точек пересечения гипотенузы, полученной в п. 11, с прямыми, содержащими стороны прямого угла.
Долгое и нудное решение...
Об авторе:
Facta loquuntur.