Система координат изменения FMX

Я хочу изменить систему координат Delphi FMX (для визуальных элементов управления, таких как TImage, TPaintBox и т. Д.), Чтобы использовать декартову систему координат (внизу слева)

Как я могу это сделать?

Это очень просто для GDI:

HDC hDC = this->Canvas->Handle;
SetMapMode(hDC, MM_LOENGLISH); //Change coordinate system
SetViewportOrgEx(hDC, 300, 200, NULL); //Change origin

Пример изменения координат для Delphi FMX:

Image1.Position.Point := PointF(250, 250);

1 ответ

Я только что заметил, что в FMX можно установить отрицательный масштаб (по одной или по обеим осям), что приведет к переворачиванию объектов в соответствующих координатах осей.

Итак, чтобы перевернуть ось Y, вам нужно сделать

      SomeContainer.Scale.Point := TPointF.Create(0, -1);

после этого вам также нужно будет смещение, но можно сделать это, смещая родительский элемент управления на (-width / 2, -height / 2), я думаю

Другие вопросы по тегам