![]() |
|
||||||||||
|
|
|
|||||
|
Регистрация: May 2009
Сообщений: 24
|
как в данном случае определить что желтый круг находиться под областью выделения, а красный не до конца? И как вообще определить что под областью выделения что-то есть? Прошу помощи. ![]() |
|
|||||
|
Et cetera
Регистрация: Sep 2002
Сообщений: 30,787
|
Rectangle.intersects
Геометрия простейшая. |
|
|||||
|
Регистрация: May 2009
Сообщений: 24
|
если бы знал - не спрашивал
![]() |
|
|||||
|
Et cetera
Регистрация: Sep 2002
Сообщений: 30,787
|
Так в чем проблема, конкретно? Как проверить несколько прямоугольников на пересечение с другими?
|
|
|||||
|
Регистрация: May 2009
Сообщений: 24
|
чет не пойму, мне нужно получить эти объекты, чтобы, например графически изменить
Добавлено через 51 секунду нужно сделать выделение, подобно тому как выделение ярлыков на рабочем столе |
|
|||||
|
Et cetera
Регистрация: Sep 2002
Сообщений: 30,787
|
У вас есть N объектов. С каждого можно получить его границы (bounds) методом getBounds (или getRect), который возвращает прямоугольники Rectangle. Также у вас есть Rectangle выделения. Поочередно проверяя пересечения каждого из bounds с прямоугольником выделения, записываете в массив ссылки на эти объекты. Или сразу ставите им свойство selected (если таковое есть и вами описано) в true.
|
|
|||||
|
Регистрация: May 2009
Сообщений: 24
|
а другого варианта нет что ли? а если там объектов под "выделением" будет 1000??? этож будет долго
|
|
|||||
|
Et cetera
Регистрация: Sep 2002
Сообщений: 30,787
|
Миллисекунд 10—20 в самом худшем случае.
|
|
|||||
|
Регистрация: May 2009
Сообщений: 24
|
ну допустим можно просчет сделать после отпускания кнопки мышки, а если просчет будет вести в реал-тайм?...
|
|
|||||
|
Et cetera
Регистрация: Sep 2002
Сообщений: 30,787
|
Послушайте, когда у вас возникнет проблема производительности (если вообще возникнет), тогда и переживайте по этому поводу.
|
![]() |
![]() |
Часовой пояс GMT +4, время: 01:09. |
|
|
« Предыдущая тема | Следующая тема » |
|
|