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

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

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

Регистрация: Apr 2008
Сообщений: 3
По умолчанию Flash-конструктор, быть или не быть...

Цель: сделать примитивный конструктор, перемещая детали строим произвольный дом...
Как я это вижу: я нарисовал все детали(кирпичи, несколько дверей, окно и т.д) в виде mc. Мне нужно, чтобы при нажатие на одну из таких деталей, она бы копировалась на рабочую область и было бы активна, то бишь ее можно было перемещать мышью в области постройки...И это действие происходило бы многократно и хорошо бы при приближение происходила бы привязка-одна к другой, в зависимости от стороны...Просто хотел поинтересоваться у опытных людей, как это можно сделать, какие функции можно использовать при этом, так как сам не знаю совершенно...Горю)

Старый 14.12.2009, 23:48
mooncar вне форума Посмотреть профиль Отправить личное сообщение для mooncar Найти все сообщения от mooncar
  № 2  
Ответить с цитированием
mooncar
Модрон-ветеринар
 
Аватар для mooncar

администратор
Регистрация: May 2009
Адрес: г.Казань
Сообщений: 7,357
Отправить сообщение для mooncar с помощью ICQ Отправить сообщение для mooncar с помощью Skype™
Если конструктор 2d, то в целом особых сложностей не вижу. Это сделать можно.
Единственное - сложновато, но вполне возможно сделать "притягвание" с последующим точным позиционированием детали. Можно у каждой детали сделать на сторонах некие невидимые мувики-стыковочные элементы, и при движении детали проверять hitTest стыковочного элемпента на такие же элементы потенциальных соседей. Как только эти стыковочный элемент войдет в контакт с соседями, делать проверку на взаимостыкуемость, причем не только с данной соседкой, но и со всеми соседями. Если стыковать можно - то позиционировать в точные координаты и прекращать движение.
Для осуществления проверки нужно создать набор массивов для каждой детали, в которых бы хранились данные о стыкуемости каждой из сторон с разными другими деталями (их сторонами).
Если не осиливаете - вам в Вакансии.


Последний раз редактировалось mooncar; 14.12.2009 в 23:53.
Старый 15.12.2009, 12:45
Hauts вне форума Посмотреть профиль Отправить личное сообщение для Hauts Посетить домашнюю страницу Hauts Найти все сообщения от Hauts
  № 3  
Ответить с цитированием
Hauts
 
Аватар для Hauts

блогер
Регистрация: Feb 2008
Адрес: Россия, Новосибирск, Академгородок
Сообщений: 2,113
Записей в блоге: 1
Отправить сообщение для Hauts с помощью ICQ Отправить сообщение для Hauts с помощью Skype™
По-моему проще продумать конфигурацию деталей таким образом, чтобы все они ровно вписывались в одну сетку, например 10х10 пикселей, окно - 100 на 80, кирпич - 20 на 10 и так далее (детали должны быть прямоугольными). Хранить данные о вставленных элементах в двухмерном массиве (или в одномерном, с несложным последующим пересчетом). При движении объекта проверять, занята ли клетка другим объектом или же нет, и пристыковывать по сетке, рассчитывая координаты, исходя из положения в массиве.
__________________
hauts.ru

Старый 15.12.2009, 12:57
mooncar вне форума Посмотреть профиль Отправить личное сообщение для mooncar Найти все сообщения от mooncar
  № 4  
Ответить с цитированием
mooncar
Модрон-ветеринар
 
Аватар для mooncar

администратор
Регистрация: May 2009
Адрес: г.Казань
Сообщений: 7,357
Отправить сообщение для mooncar с помощью ICQ Отправить сообщение для mooncar с помощью Skype™
Ну, если делать примитивный конструктор, то можно и не учитывать взаимостыкуемость и конечно, можно проще. Например, то, что оконный блок нельзя лепить один к другому без дополнительной рамы/арки, можно в таком случае и не учитывать. Но притягивание все-таки по хит-тесту делать придется, хотя бы по хиттесту центра элемента на координаты, близкие к периметру уже посаженных элементов.
Нельзя забывать и о том, что должна быть возможность поворачивать деталь, поэтому для точного позиционирования желательна анимация, разворот предварительной в ближайшее правильное положение, иначе будет неказисто выглядеть.
Одним словом, осталось начать и сделать.

Старый 15.12.2009, 15:29
Hauts вне форума Посмотреть профиль Отправить личное сообщение для Hauts Посетить домашнюю страницу Hauts Найти все сообщения от Hauts
  № 5  
Ответить с цитированием
Hauts
 
Аватар для Hauts

блогер
Регистрация: Feb 2008
Адрес: Россия, Новосибирск, Академгородок
Сообщений: 2,113
Записей в блоге: 1
Отправить сообщение для Hauts с помощью ICQ Отправить сообщение для Hauts с помощью Skype™
Вобщем-то да. Осталось только начать и сделать =)

MrBlackJack удачи вам. Она вам не помешает.)
__________________
hauts.ru

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

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

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


 


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


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