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

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

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Закрытая тема
Старый 30.06.2010, 23:35
max123456789 вне форума Посмотреть профиль Отправить личное сообщение для max123456789 Найти все сообщения от max123456789
  № 1  
max123456789

Регистрация: Jun 2008
Сообщений: 76
По умолчанию Алгоритм

Народ, помогите найти алгоритм следующего:
Есть 2 зоны (условно) Поле 50X50 клеток (неважно).
Перерезав между ними связь, зона (без красного квадрата) перекрашивается в черный цвет. Как тут можно сделать? У меня идея с рекурсиями, но может как-то и без них можно обойтись?
Прикладываю для наглядности скрины.


Заранее всем благодарен.
Изображения
   

Старый 01.07.2010, 00:31
Avrilka вне форума Посмотреть профиль Отправить личное сообщение для Avrilka Найти все сообщения от Avrilka
  № 2  
Avrilka

Регистрация: Jun 2010
Адрес: A(undefined,undefined)
Сообщений: 87
Записей в блоге: 2
ну что то вроде
Код:
i= 12  j= 15начальные координты точки под черной точки

While (scene_array[i+1][j] = 1) || 
(scene_array[i-1][j] = 1) || 
(scene_array[i][j+1] = 1) ||  
(scene_array[i][j-1] = 1) 

DO {

if ( scene_array[i+1][j] == 1) {
scene_array[i+1][j] == 2
i++
While (scene_array[i+1][j] = 1) || 
(scene_array[i-1][j] = 1) || 
(scene_array[i][j+1] = 1) ||  
(scene_array[i][j-1] = 1) DO ......................
}


if ( scene_array[i-1][j] == 1) {
scene_array[i-1][j] == 2
i--
While (scene_array[i+1][j] = 1) || 
(scene_array[i-1][j] = 1) || 
(scene_array[i][j+1] = 1) ||  
(scene_array[i][j-1] = 1) DO ......................
}




это в две стороны... тоже самое для другин сторон.


}


Последний раз редактировалось Avrilka; 01.07.2010 в 00:34.
Старый 01.07.2010, 01:49
max123456789 вне форума Посмотреть профиль Отправить личное сообщение для max123456789 Найти все сообщения от max123456789
  № 3  
max123456789

Регистрация: Jun 2008
Сообщений: 76
Спасибо, но это только при этом условии, скорее всего это не то... Но огромное спасибо за вариант


Вот такая ситуация
Изображения
   


Последний раз редактировалось max123456789; 01.07.2010 в 02:04.
Старый 01.07.2010, 02:00
VVall вне форума Посмотреть профиль Отправить личное сообщение для VVall Найти все сообщения от VVall
  № 4  
VVall

Регистрация: Feb 2009
Сообщений: 1,195
Подойдёт волновой алгоритм поиска пути, только без самого поиска пути. Распространять волну, пока не заполнит всю доступную карту, потом смотреть - если она не попала в нужную зону, то красить эту зону нужным цветом.

Старый 01.07.2010, 02:05
max123456789 вне форума Посмотреть профиль Отправить личное сообщение для max123456789 Найти все сообщения от max123456789
  № 5  
max123456789

Регистрация: Jun 2008
Сообщений: 76
Цитата:
Сообщение от VVall Посмотреть сообщение
Подойдёт волновой алгоритм поиска пути, только без самого поиска пути. Распространять волну, пока не заполнит всю доступную карту, потом смотреть - если она не попала в нужную зону, то красить эту зону нужным цветом.
А поподробнее?

Старый 01.07.2010, 02:35
VVall вне форума Посмотреть профиль Отправить личное сообщение для VVall Найти все сообщения от VVall
  № 6  
VVall

Регистрация: Feb 2009
Сообщений: 1,195
А поподробнее - google "волновой алгоритм". Если вы понимаете, как он работает, то подробности вам не понадобятся, а если ещё нет, то есть сотни статей на эту тему.

Старый 01.07.2010, 02:40
iNils вне форума Посмотреть профиль Отправить личное сообщение для iNils Посетить домашнюю страницу iNils Найти все сообщения от iNils
  № 7  
iNils
Негуру
 
Аватар для iNils

администратор
Регистрация: Jan 2000
Адрес: Кёнигсберг in Moscow
Сообщений: 21,883
Записей в блоге: 7
Название темы не раскрывает сути вопроса.
__________________
(и)Нильс.ru | Плагины для FlashDevelop

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

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

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


 


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


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