如何在flex中构建Room Planner 3D Web应用程序

时间:2011-10-27 09:49:31

标签: flex flex4 3d 2d papervision3d

我必须在flex 4

中开发类似这些网站的应用程序

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

我有以下问题:

  • 用于构建这类应用程序的主要flex组件是什么?
  • 如何从2D转换为3D?
  • 如何从2D可调整大小的对象生成动态3D?
  • 如何在调整对象大小时显示测量值?

1 个答案:

答案 0 :(得分:1)

  

用于构建这类应用程序的主要flex组件是什么?

按钮,组,列表,复选框等...随意使用flex组件;)说实话,这些应用程序几乎使用所有标准的flex控件。

  

如何从2D转换为3D?

这是你名单上最难的问题。编写自己的3d动作脚本是一项艰巨的任务。您有两个一般机会:

  1. 要使用现有的3d软件引擎: What is the best Actionscript3 3D Engine?

  2. 要使用Flash Player 11支持的Molehill API: http://www.adobe.com/devnet/flashplayer/stage3d.html

  3. Molehill API提供硬件加速的3D图形,但这是一项相对较新的功能。有一些引擎支持它:

    http://alternativaplatform.com/en/

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

      

    如何从2D可调整大小的对象生成动态3D?

    这个问题没有共同的方法。实际上,2D投影和3D预览是一种模型的不同表示。这些程序具有三维程序(即由公式定义)的墙壁,楼梯等模型的生成器,并且可以是附加的二维模型。这些模型中的公式创建多边形/矢量图。当然,所有公式都是启发式的。 例如,对于墙,您可以创建多边形线,然后为其创建轮廓,然后使用z轴拉伸轮廓。

      

    如何在调整对象大小时显示测量值

    它也是启发式的。对于墙壁,您只需测量角落之间的距离,对于货架/衣柜,您可以使用其边界框的大小。