Как создать 3D-приложение Room Planer в flex - PullRequest
1 голос
/ 27 октября 2011

Мне нужно разработать приложение, подобное этим сайтам, на flex 4

.

http://mydeco.com/rooms/austin/
http://floorplanner.com/demo#assets
http://www.homestyler.com/designer

У меня есть следующие вопросы:

  • Какие основные компоненты Flex используются для создания приложений такого типа?
  • Как конвертировать из 2D в 3D?
  • Как генерировать динамическое 3D из 2D объектов с изменяемыми размерами?
  • Как показать измерение при изменении размеров объектов?

1 Ответ

1 голос
/ 08 ноября 2011

Какие основные компоненты Flex используются для создания приложений такого типа?

Кнопки, группы, списки, флажки и т. Д. Не стесняйтесь использовать компоненты Flex;) Если серьезно, эти приложения используют почти все стандартные элементы управления Flex.

Как конвертировать из 2D в 3D?

Это самый сложный вопрос в вашем списке. Написание собственного 3D Recerer ActionScript является чрезвычайно сложной задачей. У вас есть 2 общие возможности:

  1. Чтобы использовать существующий программный 3D-движок: Какой самый лучший ActionScript3 3D Engine?

  2. Чтобы использовать Molehill API, поддерживаемый Flash Player 11: http://www.adobe.com/devnet/flashplayer/stage3d.html

Molehill API предоставляет аппаратно ускоренную трехмерную графику, но является относительно новой функцией. Поддерживается небольшое количество двигателей:

http://alternativaplatform.com/en/

http://code.google.com/p/minimole/

Как сгенерировать динамическое 3D из 2D объектов с изменяемым размером?

Нет единого рецепта для этой проблемы. На самом деле 2D-проекции и 3D-превью - это разное представление одной модели. Эти программы имеют генераторы 3d процедурных (т.е. определяемых формулами) моделей стен, лестниц и т. Д. И могут быть дополнительными 2d моделями. Формулы внутри этих моделей создают многоугольники / векторные рисунки. Конечно, все формулы эвристические. Например, для стен вы можете создать ломаную линию, затем создать для нее контур, а затем выдавить контур, используя ось Z.

Как показать измерение при изменении размеров объектов

Это тоже эвристика. Для стен вы просто измеряете расстояние между углами, для полок / шкафов вы можете использовать размеры их ограничительных рамок.

...