powered by simpleCommunicator - 2.0.55     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Объекты, принадлежащие области
4 сообщений из 4, страница 1 из 1
Объекты, принадлежащие области
    #36193091
Фотография Валентин Н.Карелин
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Функцией Sys(1270, X, Y) можно определить наличие объекта в т.(X,Y), - это несомненная польза. Но вот чтобы узнать все объекты в области (X...Xn, Y...Yn) нужно вызвать функцию много раз. Так для области 100х100 пискелей надо вызвать Sys(1270) в цикле 10'000 раз, чтобы перекрыть все точки области. Ведь объект может быть где угодно и сколько угодно. А это время!

Есть ли функция, определяющая все объекты некоторой области экрана более быстро?
...
Рейтинг: 0 / 0
Объекты, принадлежащие области
    #36193332
Kruchinin Pahan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Валентин Н.КарелинФункцией Sys(1270, X, Y) можно определить наличие объекта в т.(X,Y), - это несомненная польза. Но вот чтобы узнать все объекты в области (X...Xn, Y...Yn) нужно вызвать функцию много раз. Так для области 100х100 пискелей надо вызвать Sys(1270) в цикле 10'000 раз, чтобы перекрыть все точки области. Ведь объект может быть где угодно и сколько угодно. А это время!

Есть ли функция, определяющая все объекты некоторой области экрана более быстро?
Здесь проще от обратного - перебрать все объекты и сравнить математически, не пересекают ли они некую область.

Дабы не пересчитывать вложенные координаты, помогает OBJTOCLIENT.
...
Рейтинг: 0 / 0
Объекты, принадлежащие области
    #36193562
Фотография Игорь Горбонос
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
> Автор: Валентин Н.Карелин
> Функцией Sys(1270, X, Y) можно определить наличие объекта в т.(X,Y), - это несомненная польза. Но вот чтобы
> узнать все объекты в области (X...Xn, Y...Yn) нужно вызвать функцию много раз. Так для области 100х100 пискелей надо
> вызвать Sys(1270) в цикле 10'000 раз, чтобы перекрыть все точки области. Ведь объект может быть где угодно и сколько
> угодно. А это время!


А зачем тебе проверять? У тебя есть иерархия объектов, т.е. если попадаем мышкой по одному объекту, можно получить его
"родителя" в котором он находится. И по веренице "родителей" выйти на уровень который нужно выделять.

З.Ы. Это я подумал, что тебе нужно реализовывать как в контейнере, просто клик - выделяет сам контейнер, а клик с
нажатым Ctrl выделяет объект внутри контейнера. Или я не правильно подумал?


Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
Объекты, принадлежащие области
    #36193784
Фотография Валентин Н.Карелин
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Здесь задача: начертить мышью произвольный 4-х угольник на экране и определить, какие объекты попали в его площадь. Самый простой вариант - перебор от 1 до ControlCount всех объектов формы на предмет (полного или частичного) попадания их в пределы мышиного 4-х угольника. Попавшие объекты выделяются. Ну эту задачу я решил.
...
Рейтинг: 0 / 0
4 сообщений из 4, страница 1 из 1
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Объекты, принадлежащие области
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]