Алгоритм выноски

Программирование на Visual Basic, главный форум. Обсуждение тем программирования на VB 1—6.
Даже если вы плохо разбираетесь в VB и программировании вообще — тут вам помогут. В разумных пределах, конечно.
Правила форума
Темы, в которых будет сначала написано «что нужно сделать», а затем просьба «помогите», будут закрыты.
Читайте требования к создаваемым темам.
arthur2
Продвинутый гуру
Продвинутый гуру
Аватара пользователя
 
Сообщения: 1688
Зарегистрирован: 23.01.2008 (Ср) 14:35

Алгоритм выноски

Сообщение arthur2 » 25.03.2010 (Чт) 14:37

Выноска - это окно такого плана:Изображение

При перемещении этого окна оно продолжает указывать выносным треугольником на ту же точку. Есть ли готовый алгоритм, описывающий поведение этого треугольника при изменении положения самого окна? Просто не хотелось бы изобретать велосипед :)

Ну или хотя бы приблизительно помогите набросать такой алгоритм, а то что-то не соображу.
Вложения
Clipboard04.jpg
Clipboard04.jpg (51.92 Кб) Просмотров: 721
Артур
 
   

Хакер
Телепат
Телепат
Аватара пользователя
 
Сообщения: 16478
Зарегистрирован: 13.11.2005 (Вс) 2:43
Откуда: Казахстан, Петропавловск

Re: Алгоритм выноски

Сообщение Хакер » 25.03.2010 (Чт) 14:56

Множество различных поведений выносного треугольника бесконечно. Как множество решений красивого проведения кривой через N точек.

У приведённого в качестве примера ДубльГИС-а алгоритм таков:
Есть 2 connection-точки сверху и 2 connection-точки снизу.
Если верхний край бокса ниже точки-цели или нижний край бокса выше точки-цели, то проводится указательный треугольник от ближайшей к точке-цели connection-точки до точки-цели. В противном случае проводится треугольник от bound(проекция точки-цели на прямую, принадлежащую боковой (лев. или прав.) грани бокса) до точки-цели.

Где bound — функция, которая ограничивает проекцию размерами боковой грани.
—We separate their smiling faces from the rest of their body, Captain.
—That's right! We decapitate them.

Twister
Теоретик
Теоретик
Аватара пользователя
 
Сообщения: 2251
Зарегистрирован: 28.06.2005 (Вт) 12:32
Откуда: Алматы

Re: Алгоритм выноски

Сообщение Twister » 25.03.2010 (Чт) 14:57

Ну или хотя бы приблизительно помогите набросать такой алгоритм
А что там с алгоритмом сложного? Координаты одной вершины треугольника (той, что тычет в объект) всегда неизменны (пока объект не изменит свое положение), координаты двух других расчитываются в зависимости от положения окна-подсказки.

ADD. Опередили :)
А я все практикую лечение травами...

arthur2
Продвинутый гуру
Продвинутый гуру
Аватара пользователя
 
Сообщения: 1688
Зарегистрирован: 23.01.2008 (Ср) 14:35

Re: Алгоритм выноски

Сообщение arthur2 » 25.03.2010 (Чт) 15:14

Twister писал(а):координаты двух других расчитываются в зависимости от положения окна-подсказки
Относительно этой неизменной точки. Вот и хотелось бы алгоритм - как рассчитываются эти две точки.

Понятно, что вариантов может быть масса, но мне именно что не хочется изобретать велосипед, а просто хочется выбрать из готовых моделей.
Артур
 
   

Денис
Доктор VB наук
Доктор VB наук
Аватара пользователя
 
Сообщения: 2734
Зарегистрирован: 07.11.2006 (Вт) 13:55
Откуда: Ейск, Краснодарский край

Re: Алгоритм выноски

Сообщение Денис » 25.03.2010 (Чт) 15:28

.
Вложения
Безымянный.PNG
Безымянный.PNG (21.51 Кб) Просмотров: 739
Программирование — богоизбранная дисциплина! Если бог и есть, то вселенную он скомпилировал, не иначе.

Хакер
Телепат
Телепат
Аватара пользователя
 
Сообщения: 16478
Зарегистрирован: 13.11.2005 (Вс) 2:43
Откуда: Казахстан, Петропавловск

Re: Алгоритм выноски

Сообщение Хакер » 25.03.2010 (Чт) 15:36

Ну, в 2ГИС-е это вообще не окно.

Всё зависит от ситуации.
—We separate their smiling faces from the rest of their body, Captain.
—That's right! We decapitate them.


Вернуться в Visual Basic 1–6

Кто сейчас на конференции

Сейчас этот форум просматривают: Google-бот и гости: 68

    TopList