Масштабирование графа на плоскости (геометрия)

Рейтинг: 0Ответов: 0Опубликовано: 05.01.2015

Есть набор вершин, отображённых симметрично началу координат (условной точке). Отображается скученно, т.к. координаты вершин - самые разные от 0.000 .. 1000.000 по обоим осям. Как вывести граф, чтобы он заполнил собой всю прямоугольную канву (отмасштабировать, убрать скученность вершин)?

Уточняю. Работаю в RAD Studio XE5, C++ Builder. Граф вывожу на канву компонента Image (1000x700 px). На данный момент граф отцентрирован в Image и выводится в координаты currentX, currentY:

double deltaX = ((Image1Width) /2  - (maxX-minX)/2);
double deltaY = ((Image1Height)/2 -  (maxY-minY)/2);
double currentX = deltaX + StrToFloat(OBOD_XCoord->Strings[i]);
double currentY = deltaY + StrToFloat(OBOD_YCoord->Strings[i]);

где maxX, minX, maxY, minY - максимумы и минимумы координат вершин по обоим осям, а OBOD_XCoord, OBOD_YCoord - исходные координаты вершин.

Как отмасштабировать граф (как можно крупнее), дабы избежать скученности вершин?

Ответы

Ответов пока нет.