Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > C/C++: Общие вопросы > Парсер многострочных ссылок (hyperlinks т.е.)


Автор: Level9 4.8.2007, 07:29
Есть массив с данными о координатах ссылок (hyperlinks) на канве, при наведении на которые, надо менять курсор мыши.

Для каждой ссылки известно:
x1, y1 - начальные координаты на канве (верхний левый угол)
x2, y2 - конечные координаты на канве (нижний правый угол)

Также, естественно smile , известны текущие координаты указателя мыши (X и Y).

Для ссылки, помещающейся в одной строке просто проверяем условие:

X>=x1 and X<=x2 and Y>=y1 and Y<=y2

и делаем, что нам надо.

А как быть с ссылками, которые занимают более одной строки?

Например, такими:
Код

..........**********
****................


или такими:
Код

..........**********
********************
*************.......

где **** - ссылки, а .... - другие слова (в коде я так упрощённо нарисовал некий текст, выведенный на канву).

Помогите, а то совсем запутался.

Автор: jonie 5.8.2007, 00:04
сохранять координаты углов выпуклого прямоугольника и смотреть на вхождение мыши в этот прямоугольник ?

математика нас всех спасет...


http://xpoint.ru/forums/programming/theory_algorythms/thread/27360.xhtml

волшебные книгиsmile http://matchast.ru/Cs_Computer%20science.php

Автор: Level9 5.8.2007, 06:30
О, спасибо за наводку!

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)