|
Объекты, принадлежащие области
|
|||
---|---|---|---|
#18+
Функцией Sys(1270, X, Y) можно определить наличие объекта в т.(X,Y), - это несомненная польза. Но вот чтобы узнать все объекты в области (X...Xn, Y...Yn) нужно вызвать функцию много раз. Так для области 100х100 пискелей надо вызвать Sys(1270) в цикле 10'000 раз, чтобы перекрыть все точки области. Ведь объект может быть где угодно и сколько угодно. А это время! Есть ли функция, определяющая все объекты некоторой области экрана более быстро? ... |
|||
:
Нравится:
Не нравится:
|
|||
13.09.2009, 18:11 |
|
Объекты, принадлежащие области
|
|||
---|---|---|---|
#18+
Валентин Н.КарелинФункцией Sys(1270, X, Y) можно определить наличие объекта в т.(X,Y), - это несомненная польза. Но вот чтобы узнать все объекты в области (X...Xn, Y...Yn) нужно вызвать функцию много раз. Так для области 100х100 пискелей надо вызвать Sys(1270) в цикле 10'000 раз, чтобы перекрыть все точки области. Ведь объект может быть где угодно и сколько угодно. А это время! Есть ли функция, определяющая все объекты некоторой области экрана более быстро? Здесь проще от обратного - перебрать все объекты и сравнить математически, не пересекают ли они некую область. Дабы не пересчитывать вложенные координаты, помогает OBJTOCLIENT. ... |
|||
:
Нравится:
Не нравится:
|
|||
14.09.2009, 05:50 |
|
Объекты, принадлежащие области
|
|||
---|---|---|---|
#18+
> Автор: Валентин Н.Карелин > Функцией Sys(1270, X, Y) можно определить наличие объекта в т.(X,Y), - это несомненная польза. Но вот чтобы > узнать все объекты в области (X...Xn, Y...Yn) нужно вызвать функцию много раз. Так для области 100х100 пискелей надо > вызвать Sys(1270) в цикле 10'000 раз, чтобы перекрыть все точки области. Ведь объект может быть где угодно и сколько > угодно. А это время! А зачем тебе проверять? У тебя есть иерархия объектов, т.е. если попадаем мышкой по одному объекту, можно получить его "родителя" в котором он находится. И по веренице "родителей" выйти на уровень который нужно выделять. З.Ы. Это я подумал, что тебе нужно реализовывать как в контейнере, просто клик - выделяет сам контейнер, а клик с нажатым Ctrl выделяет объект внутри контейнера. Или я не правильно подумал? Posted via ActualForum NNTP Server 1.4 ... |
|||
:
Нравится:
Не нравится:
|
|||
14.09.2009, 10:33 |
|
Объекты, принадлежащие области
|
|||
---|---|---|---|
#18+
Здесь задача: начертить мышью произвольный 4-х угольник на экране и определить, какие объекты попали в его площадь. Самый простой вариант - перебор от 1 до ControlCount всех объектов формы на предмет (полного или частичного) попадания их в пределы мышиного 4-х угольника. Попавшие объекты выделяются. Ну эту задачу я решил. ... |
|||
:
Нравится:
Не нравится:
|
|||
14.09.2009, 11:59 |
|
|
start [/forum/topic.php?fid=41&fpage=117&tid=1586060]: |
0ms |
get settings: |
10ms |
get forum list: |
16ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
31ms |
get topic data: |
12ms |
get forum data: |
3ms |
get page messages: |
47ms |
get tp. blocked users: |
2ms |
others: | 328ms |
total: | 455ms |
0 / 0 |