Андрей Коваль
Заказчик Андрей Коваль palard | FL.RU

Андрей Коваль

На сайте 13 лет и 4 месяца (заходил 6 лет 10 месяцев 24 дня назад)
0
9
Рейтинг
9
Все (1)       Заказы (1)        Вакансии (0)       Конкурсы (0)
Разместить заказ
27 Октября 2011
Бюджет: 10 000 руб
ТЗ на расстановщик мебели

**Кратко

Необходимо двигать и вращать картинки в определенной области. Картинки
чувствуют края друг друга и "толкаются". Картинки получать через XML.

** Исходные данные

Холст (канва)
Инструментарий (кнопки)
Набор отобранных товаров (мебели) из корзины покупателя. У каждого товара есть:
чертежное растровое изображение “вид сверху”
числовые габариты прямоугольника (длина, ширина в миллиметрах), в который вписан товар
тип товара (стол, шкаф, стул и т.д. – около 15 типов)

** Задача пользователя

При начале работы задать размеры помещения в сантиметрах
На появившемся холсте с размерной сеткой нарисовать контур помещения в виде линий
Из перечня отобранных товаров вытащить на холст нужные в виде картинок и расставить их по помещению
Сохранить результат в виде массива координат на сервер (скачивать не нужно) для последующей отправки менеджеру. Расстановщик должен суметь восстановить картинку по заданному массиву.

** Техническое описание

При генерации ролик получает среди входных параметров адрес для запроса XML-файла со списком отобранной мебели. При запросе используются текущие coockies, сохраненные в браузере, чтобы не потерять сессию посетителя.

Примерный формат XML

<objects>
<item id=”123” type=”table” plan_img=”/files/catalog/plans/a1b2c3.png” photo_img=”/files/catalog/3d/a1b2c3.jpg” width=”1500” height=”900” title=”Стол для персонала \”Удачный\””></item>
</objects>

где
id – числовое значение ID в базе
type – строковое представление типа мебели
plan_img – адрес картинки с видом сверху относительно корня хоста
photo_img – адрес фотографии товара относительно корня хоста
title – название товара
width – размер товара в мм (по ширине картинки)
height – размер товара в мм (по высоте картинки)

Отображение

Пользователя отображается диалог с запросом размеров помещения в см. После ввода создается холст с пользовательским размером + 10%. На холсте отображена полутоновая сетка из линий, расположенных на равном расстоянии друг от друга. Начинается сетка не от края холста, а без учета припуска 10%, т.е. остаются поля на всякий случай. Линии сетки располагаются на расстоянии 1 м (более яркие) и 0.5 м (менее яркие) друг от друга в масштабе помещения.

Сбоку от холста расположен прокручиваемый список с фотографиями и названиями мебели из той XML, что получена при загрузке. Эту мебель можно перетащить на холст или кликнуть для добавления на холст, если перетаскивание сложно в реализации. На холст вставляется уже вид сверху от той мебели, которую выбрали. При этом картинка вида сверху масштабируется исходя из размеров width и height и масштаба холста. При добавлении товар не исчезает из списка доступных сбоку.

Вставленный объект можно:
Вращать. Или на произвольный угол, или на какие-то кратные углы, но не менее, чем на 15 градусов (90/6).
Таскать мышкой. При перетаскивании он “летит” над холстом, но при отпускании приземляется так, чтобы не пересекаться с другими объектами и стенами помещения. Т.е. если его ставят на частично занятый участок, то он съезжает с него на ближайшее подходящее свободное пространство. Объекты считаем прямоугольными. При этом нужно, конечно же, учитывать угол наклона объекта.
Убрать с холста, перетащив за его пределы или перетащив в область “корзины” (по выбору). Можно рассмотреть другие удобные решения. Как при добавлении, так и при удалении с холста объект остается в доступных объектах сбоку.

После морального удовлетворения от строительства, пользователь может нажать на кнопку “сохранить”. Расстановщик отправляет на сервер результат работы (по адресу, получаемому в параметрах, массив передается в post-переменной “planishing” в виде сериализированной строки. Принцип сериализации не важен – отдельно от планировщика массив не обрабатывается) и получает взамен ссылку для перенаправления (можно в JSON-переменной url или простым текстом). Перенаправляет пользователя по ссылке.

Прошло времени с момента публикации: 13 лет 4 месяца 9 дней 10 часов 50 минут
Раздел: Другое / Flash/Flex-программирование
Наши партнеры
Сведения об ООО «Ваан» внесены в реестр аккредитованных организаций, осуществляющих деятельность в области информационных технологий. ООО «Ваан» осуществляет деятельность, связанную с использованием информационных технологий, по разработке компьютерного программного обеспечения, предоставлению доступа к программе для ЭВМ и является правообладателем программы для ЭВМ «Платформа FL.ru (версия 2.0)».