У меня был алгоритм, брал значение наибольшего расстояния по оси, например если разница Y2-Y2>X1-X2 то в цикле делал итерацию по игреку, тоесть

Код AS1/AS2:
for (iteracion = Y1; iteracion <= Y2; iteracion++)
{
Y=Y1+iteracion;
X=(X/(Y2-Y1))*(iteracion-Y1);
}
приблизительно так. Но в итоге ничего. А точек числительных. В смысле целых. погрешности floor round не интересуют
Добавлено через 7 минут
хм...
2 Division:
Еще раз пересмотрел и переосмыслил Ваш код, и понял что он попроще кажется будет в общем алгоритме. Отблагодарю за код когда заработает. А за ответ и так спасибо.