Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Сообщения за день
 

Вернуться   Форум Flasher.ru > Flash > ActionScript 3.0

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 19.04.2013, 01:03
inozemcev вне форума Посмотреть профиль Отправить личное сообщение для inozemcev Найти все сообщения от inozemcev
  № 1  
Ответить с цитированием
inozemcev
[+ 1.0 08.10.14]
 
Аватар для inozemcev

блогер
Регистрация: Mar 2010
Адрес: x = stage.stageWidth/2 y= stage.stageHeight/2
Сообщений: 293
Записей в блоге: 2
По умолчанию Алгоритм комплексного выделения нескольких объектов на сцене

Коллеги, буду рад вашей помощи. Мне нужна базовая идея алгоритма выделения нескольких объектов на сцене. Условно есть сетка из нескольких итемов. Необходимо сделать так чтобы при зажатой клавише шифт на клике по какой-либо ячейке выделялись все объекты которые попали в площадь прямоугольника, который образуется между первой и второй выделенной клеткой.


Старый 19.04.2013, 01:17
Babylon вне форума Посмотреть профиль Отправить личное сообщение для Babylon Посетить домашнюю страницу Babylon Найти все сообщения от Babylon
  № 2  
Ответить с цитированием
Babylon
[+1 25.10.13]
[+4 18.03.14]
 
Аватар для Babylon

Регистрация: Jan 2006
Адрес: Москва, Зеленоград
Сообщений: 653
Отправить сообщение для Babylon с помощью ICQ
Надо сделать 2 цикла с шагами равными высоте и ширине маленьких итемов.

Старый 19.04.2013, 02:28
inozemcev вне форума Посмотреть профиль Отправить личное сообщение для inozemcev Найти все сообщения от inozemcev
  № 3  
Ответить с цитированием
inozemcev
[+ 1.0 08.10.14]
 
Аватар для inozemcev

блогер
Регистрация: Mar 2010
Адрес: x = stage.stageWidth/2 y= stage.stageHeight/2
Сообщений: 293
Записей в блоге: 2
Справился с задачей с помощью метода hitTestObject http://marxinfo.com/roosendaal/.

Если вам любопытно это для блога о дизайне и инфографике : http://marxinfo.com/

Старый 19.04.2013, 02:53
alatar вне форума Посмотреть профиль Отправить личное сообщение для alatar Найти все сообщения от alatar
  № 4  
Ответить с цитированием
alatar
 
Аватар для alatar

блогер
Регистрация: Dec 2008
Адрес: Israel, Natanya
Сообщений: 4,740
Записей в блоге: 11
А теперь тоже самое, за один проход, без использования hitTestObject, перебирая только те элементы которые необходимо выделить. При условии, что известна ширина и высота ячейки, ширина (количество элементов в строке) и высота (количество строк) контейнера и имеется непрерывный массив расположенных по порядку элементов.
__________________
משיח לא בא
משיח גם לא מטלפן

Старый 19.04.2013, 02:53
chamele0n вне форума Посмотреть профиль Отправить личное сообщение для chamele0n Посетить домашнюю страницу chamele0n Найти все сообщения от chamele0n
  № 5  
Ответить с цитированием
chamele0n
[+4 24.04.13]
[+4 20.04.13]

Регистрация: Feb 2013
Адрес: Seireitei
Сообщений: 176
а зачем там вообще hitTestObject ?
этоже сетка и у тебя есть две Point точки этой сетки, пробегаешь двумя циклами и выделяешь ячейки
__________________
Personal Page
$demo = $away3d + $bullet + $pathfinding;

Старый 19.04.2013, 02:55
alatar вне форума Посмотреть профиль Отправить личное сообщение для alatar Найти все сообщения от alatar
  № 6  
Ответить с цитированием
alatar
 
Аватар для alatar

блогер
Регистрация: Dec 2008
Адрес: Israel, Natanya
Сообщений: 4,740
Записей в блоге: 11
P.S. Если необходимо просто обвести их общей рамкой, то вообще нет необходимости в переборе.
__________________
משיח לא בא
משיח גם לא מטלפן

Старый 19.04.2013, 03:08
Babylon вне форума Посмотреть профиль Отправить личное сообщение для Babylon Посетить домашнюю страницу Babylon Найти все сообщения от Babylon
  № 7  
Ответить с цитированием
Babylon
[+1 25.10.13]
[+4 18.03.14]
 
Аватар для Babylon

Регистрация: Jan 2006
Адрес: Москва, Зеленоград
Сообщений: 653
Отправить сообщение для Babylon с помощью ICQ
одним циклом даже лучше.

Старый 19.04.2013, 04:22
inozemcev вне форума Посмотреть профиль Отправить личное сообщение для inozemcev Найти все сообщения от inozemcev
  № 8  
Ответить с цитированием
inozemcev
[+ 1.0 08.10.14]
 
Аватар для inozemcev

блогер
Регистрация: Mar 2010
Адрес: x = stage.stageWidth/2 y= stage.stageHeight/2
Сообщений: 293
Записей в блоге: 2
А посмотрите я сделал так что мышкой можно область выделять. hitTestObject теперь вроде как не избыточно. http://marxinfo.com/roosendaal/

Старый 19.04.2013, 10:26
Tails вне форума Посмотреть профиль Отправить личное сообщение для Tails Найти все сообщения от Tails
  № 9  
Ответить с цитированием
Tails
 
Аватар для Tails

блогер
Регистрация: Dec 2008
Адрес: г. Чебоксары
Сообщений: 2,259
Записей в блоге: 6
hitTestObject тут вообще ни причём, это всегда делалось одним двумя циклами, кому как по вкусу.
__________________
Дети не должны знать о своих родителях

Старый 19.04.2013, 12:37
AlexLucas вне форума Посмотреть профиль Отправить личное сообщение для AlexLucas Найти все сообщения от AlexLucas
  № 10  
Ответить с цитированием
AlexLucas
[+1 05.11.12]
 
Аватар для AlexLucas

Регистрация: Feb 2011
Сообщений: 431
У вас невозможно выделить один ряд объектов, почему-то, если выделение очень узкое ничего не выделяется.

Создать новую тему Ответ Часовой пояс GMT +4, время: 02:44.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


 


Часовой пояс GMT +4, время: 02:44.


Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.