
Новые сообщения [новые:0]
Дайджест
Горячие темы
Избранное [новые:0]
Форумы
Пользователи
Статистика
Статистика нагрузки
Мод. лог
Поиск
|
|
05.07.2006, 15:21
|
|||
|---|---|---|---|
|
|||
Рисование стрелок |
|||
|
#18+
Народ, конечно понимаю, что возможно это тривиальная задача, но я вот с ней столкнулся и ни как не могу её решить. Как же всё таки нарисовать эту стрелку. Предположим есть приложение (SDI), я два раза кликаю мышкой в разных местах (т.е указываю точки) и между этими точками должна нарисоваться линия со стрелкой (---->). Т.е у меня имеются только координаты этих двух точек, ну и там размеры клиентской области. А как вот высчитывать там всякие углы и тому подобное, не знаю. Может кто нибудь подкинет идею, исходничёк (Visual C++) или ссылку. Может имеются хоть какие-нибудь мысли по этому поводу. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
05.07.2006, 15:36
|
|||
|---|---|---|---|
Рисование стрелок |
|||
|
#18+
Если 1-я точка начало стрелки. Угол относительно оси х (вверх тармашкими) будет alpha=atan2(y2-y1,x2-x1). Соответственно 2 угла для стрелки, например, будут alphar=alpha+pi/6 и alphal=aplha-pi/6. Вычисляешь координаты углов наконечника (x1+r*cos(alpha1), y1+r*sin(alpha1)) и соответственно другой. Вроде так. А дальше, хочешь треуголник рисуй, или просто линии, а можно наконечник сделать треугольником с вдавлением в середине основания. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|

start [/forum/topic.php?fid=57&tablet=1&tid=2030900]: |
0ms |
get settings: |
8ms |
get forum list: |
17ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
170ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
32ms |
get tp. blocked users: |
1ms |
| others: | 216ms |
| total: | 461ms |

| 0 / 0 |
