Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
Форум программистов > Общие вопросы по .NET и C# > Задача. Рисуем стрелку. |
Автор: Elfet 24.11.2006, 17:31 | ||
Есть прямая. Нужно к ней нарисовать стрелку. Я убил целый час ( о ужас! главное что бы наш профессор по алгебре не узнал ) , но вышло се совсем то чего я ожидал))) Вот что я умудрил:
![]() Добавлено @ 17:43 ![]() ![]() ![]() Добавлено @ 17:43 Полная шызуха. |
Автор: Void 24.11.2006, 17:44 | ||
Вот как-то так ![]() |
Автор: mr.DUDA 24.11.2006, 18:02 | ||
Задачка интересная, и решается двумя путями: 1. Предложенный тобой способ (не проверял) 2. Если знать о существовании матриц и трансформаций, то всё получается на порядок проще: мы смещаем и поворачиваем систему координат к началу стрелки, рисуем стрелку горизонтально из точки (0;0), поворачиваем координаты обратно. Накатал простой пример с формой, где стрелка рисуется из центра формы к курсору мыши:
З.Ы. чтоб не мерцало, у формы ставим DoubleBuffered = true. Добавлено @ 18:03 3. Способ Void-а. Совсем для ленивых ![]() Добавлено @ 18:09 Видать, ваш препод хочет знания тригонометрии проверить... значит только руками, и учить матчасть... ![]() |
Автор: Elfet 24.11.2006, 18:20 |
![]() ![]() ![]() ![]() Добавлено @ 18:29 Использовал AdjustableArrowCap так как красиво и я думаю быстрее? ![]() |
Автор: mr.DUDA 24.11.2006, 18:44 |
AdjustableArrowCap хорош, если не нужно делать таких вещей как например стрелка нестандартной формы ![]() |
Автор: mr.DUDA 5.12.2006, 22:50 | ||
Хы, ещё красивее можно сделать если добавить сглаживание:
|
Автор: Elfet 16.12.2006, 22:19 |
Вот что получилось: http://forum.vingrad.ru/topic-127665/kw-graph-simple.html ![]() |
Автор: scalosale 8.2.2023, 18:51 |
Модератор: Сообщение скрыто. |