33 / 32 / 7
Регистрация: 13.12.2010
Сообщений: 342
|
||||||
1 | ||||||
Рисование стрелки: трудность с отрисовкой наконечника14.05.2012, 23:16. Показов 14821. Ответов 3
Метки нет (Все метки)
Здравствуйте!
Известны две точки - начало и конец линии. Возникла проблема - как сделать "наконечник" стрелки таким образом, чтобы вне зависимости от направления наконечник отображался коректно? Добавлено через 3 часа 42 минуты Есть решение:
Есть две точки - Начало и Конец. Допустим, рисуем стрелку в Конце, с углом отклонения УголСтрелки и длиной "крыльев" ДлинаКрыла. 1. Находим, какой угол у линии, относительно одной из осей (какой именно - не скажу т.к. их всего две - опытным путем проще выяснить) УголЛинии=ArcTan2(Начало.X-Конец.X,Начало.Y-Конец.Y) 2. Рисуем одно "крыло": стрелки Линия (Конец.X, Конец.Y, Конец.X+ДлинаКрыла*sin(УголЛинии+Угол), Конец.Y+ДлинаКрыла*cos(УголЛинии+Угол) ) 3. Рисуем другое "крыло": стрелки Линия (Конец.X, Конец.Y, Конец.X+ДлинаКрыла*sin(УголЛинии-Угол), Конец.Y+ДлинаКрыла*cos(УголЛинии-Угол) )
4
|
14.05.2012, 23:16 | |
Ответы с готовыми решениями:
3
рисование и поворот стрелки на C# Рисование стрелки между прямоугольниками Координаты наконечника стрелки Рисование стрелки |
328 / 312 / 68
Регистрация: 05.11.2009
Сообщений: 712
|
|
15.05.2012, 11:28 | 2 |
нарисуйте наконечники тем же GraphicPath, а затем с помощью метода Rotate() класса Matrix поворачивайте этот объект на необходимый для вас угол
1
|
1 / 1 / 0
Регистрация: 19.04.2012
Сообщений: 6
|
|
10.01.2013, 05:02 | 3 |
вот отличный пример применения векторной алгебры для рисования стрелки.
не надо никакой тригонометрии. все просто. Кликните здесь для просмотра всего текста
1
|
1 / 1 / 0
Регистрация: 08.11.2014
Сообщений: 21
|
|
09.11.2014, 20:14 | 4 |
Отличный пост
1
|
09.11.2014, 20:14 | |
09.11.2014, 20:14 | |
Помогаю со студенческими работами здесь
4
Рисование стрелки Рисование стрелки Рисование стрелки Рисование стрелки Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |