[b]【贝武易科技专业flex3D开发--www.newflash3d.com】[/b]
flex中的架构,(举例UIComponent类的继承关系)
UIComponent > FlexSprite> Sprite >DisplayObjectContainer>InteractiveObject >Displayobject
flash中的架构(Sprite类的继承关系)
Sprite >DisplayObjectContainer>InteractiveObject >Displayobject
Flex中的UIMovieClip类继承于UIComponent ,flash中的MovieClip继承于Sprite,
它们的这种继承关系我们可以通过flex帮助手册查阅到。
下面我们就通过实例来明确UIComponent和Sprite的关系。
我们生成一个canvasExe.mxml文件,加入一个canvas组件,代码如下:
<?xml version="1.0" encoding="utf-8"?><mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute"><mx:Canvas id="canvas3d" width="300" height="300" backgroundColor="0xffffff"></mx:Canvas></mx:Application>
生成一个300 X 300的画布,id标识为canvas3d。
加入一个assets目录下的图像Figure.png,在项目里建立一个名为assets的文件夹,然后把Figure.png放到里面。
结果代码如下:
<?xml version="1.0" encoding="utf-8"?><mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute" applicationComplete="init();"><mx:Canvas id="canvas3d" width="300" height="300" backgroundColor="0xffffff"></mx:Canvas><mx:Script> <![CDATA[ [Embed(source='assets/Figure.png')] public var FGB:Class; public var FGbitmap:Bitmap = new FGB as Bitmap; private function init():void{ canvas3d.rawChildren.addChild(FGbitmap); } ]]></mx:Script></mx:Application>
运行,获得的结果
[img]/upload/attachment/55087/23cce7d3-4dd8-35fd-a3d3-55e686de7648.jpg[/img]
我们发现一个严重的问题,就是我们导入的图像出了我们的画布的框了,我们需要它包括在画布canvas3d里面,好,下面我们来解决这个问题。