Dimoniks
-
Постов
6 -
Зарегистрирован
-
Посещение
Сообщения, опубликованные Dimoniks
-
-
Огромное спасибо!
-
насчет примера - нет времени полностью разобраться, но я бы пошел по такому пути:
1. сделать TextToPath для первой буквы. получим объект TPathData
2. рассчитать матрицу преобразования - поворот на угол alfa и перемещение из центра дуги на точку начала дуги.
Alfa - угол между вертикалью и прямой [центр дуги -- первая точка дуги]
применить матрицу - TPathData.ApplyMatrix
3. вычислить отступ между буквами и отступить на это расстояние по дуге.
4. берем вторую букву и делаем то же самое
после получения всех объектов TPathData, отрисовываем их
P.S. если что, формула окружности X^2+Y^2 = 0
насчет примера - нет времени полностью разобраться, но я бы пошел по такому пути:
1. сделать TextToPath для первой буквы. получим объект TPathData
2. рассчитать матрицу преобразования - поворот на угол alfa и перемещение из центра дуги на точку начала дуги.
Alfa - угол между вертикалью и прямой [центр дуги -- первая точка дуги]
применить матрицу - TPathData.ApplyMatrix
3. вычислить отступ между буквами и отступить на это расстояние по дуге.
4. берем вторую букву и делаем то же самое
после получения всех объектов TPathData, отрисовываем их
P.S. если что, формула окружности X^2+Y^2 = 0 ))
Спасибо за алгоритм, ну а уравнение я знаю... )))
-
для произвольной кривой - крайне сложная задача
вычислить точку на контуре для позиции каждой буквы - уже непросто
потом взятием производной по точке контура определить наклон в этой точке
определиться с понятием "внутрь/наружу" контура
а вот для дуги с заданными параметрами как раз в принципе несложно получается
А меня дуга и интересует... Если вам не сложно, можете примерчик кинуть?
-
Похоже ошибочка...
В одной книжке прочитал, что этот метод "выводит текст по траектории Path", но судя по описанию на офф сайте - это не так.
Значит придется руками делать...
Да... видимо так... Нет пути с меньшим сопротивлением...(((
-
Доброго времени суток.
Скажите пожалуйста, как в FM вывести текст по дуге с произвольным радиусом?
[FGX] Предложения о разработке компонентов
в Вопросы / Questions
Опубликовано
Да у TMS вообще более не стану ничего покупать, хватило одного раза, купил пакет ради RichEdit'ов, чтоб не париться, в итоге полный абзац... Многие события не работают, как например OnURLClick, а еще в компонентах идет утечка памяти, за несколько часов работы приложение распухает на несколько десятков мегабайт...