Hi metSyS, Looks like it's the reference to stage that fails when setting up the View? Check out this tutorials on using Away3D with Flex: http://www.switchonthecode.com/tutorials/getting-started-with-adobe-flex-and-away3d
Basically, just make sure your Flex component (or AS class) extend the UIComponent Class and not Sprite. You can't attach a Sprite onto something in Flex, you need to use UIComponent instead. If you want to respond to scaling from the Flex Framework, you'll also have to override the updateDisplaylist method in UIComponent. J On Jan 16, 10:56 am, metSyS <[email protected]> wrote: > I have created Flex project, in there two files *.mxml & *.as. Project > has compiled me swc file? and when I'm running swc through flashplayer > 10 debug it tells that there are error 1009. > Sorry for my bad english=( > > here's mxml code: > > <?xml version="1.0" encoding="utf-8"?> > <mx:Application > xmlns:mx="http://www.adobe.com/2006/mxml" > layout="absolute" > xmlns:ns1="*" > > > > <ns1:CubePrim x="0" y="0" id="cubeprim"/> > </mx:Application> > > here's as code: > > package { > import away3d.cameras.HoverCamera3D; > import away3d.containers.Scene3D; > import away3d.containers.View3D; > import away3d.primitives.Cube; > > import flash.display.Sprite; > import flash.events.MouseEvent; > import flash.events.*; > > [SWF(width="1024", height="768", backgroundColor="#ffffff")] > public class CubePrim extends Sprite > { > private var scene:Scene3D; > private var view:View3D; > private var cam:HoverCamera3D; > > private var CubePrimitive:Cube; > > //--camera-- > private var lastMouseX:Number; > private var lastMouseY:Number; > private var lastPanAngle:Number; > private var lastTiltAngle:Number; > private var move1:Boolean=false; > > public function CubePrim() > { > scene=new Scene3D(); > > cam=new HoverCamera3D(); > cam.distance=100; > //cam.targettiltangle=90; > > view=new View3D({scene:scene, camera:cam, > x:stage.stageWidth/2, > y:stage.stageHeight/2}); > addChild(view); > > var CubePrimitive:Cube=new Cube({height:20, width:20, > depth:20}); > view.scene.addChild(CubePrimitive); > > addEventListener(Event.ENTER_FRAME, onEnterFrame); > > //camera-------------- > stage.addEventListener(MouseEvent.MOUSE_DOWN, > MouseDown); > stage.addEventListener(MouseEvent.MOUSE_UP, MouseUp); > } > > private function onEnterFrame(e:*):void > { > //camera------------------ > var cameraSpeed:Number=0.3; // Approximately same > speed as mouse > movement. > if (move1) > { > cam.targetpanangle=cameraSpeed*(stage.mouseX > - lastMouseX) + > lastPanAngle; > cam.targettiltangle=cameraSpeed*(stage.mouseY > - lastMouseY) + > lastTiltAngle; > } > > cam.hover(); > view.render(); > } > > //camera------------- > private function MouseDown(e:MouseEvent):void > { > lastPanAngle=cam.targetpanangle; > lastTiltAngle=cam.targettiltangle; > lastMouseX=stage.mouseX; > lastMouseY=stage.mouseY; > move1=true; > } > > private function MouseUp(e:MouseEvent):void > { > move1=false; > } > } > > } > > Here's fhashplayer error : > > TypeError: Error #1009: îÅ ÕÄÁÅÔÓÑ ×ÙÚ×ÁÔØ Ó×ÏÊÓÔ×Ï ÉÌÉ ÍÅÔÏÄ ÓÏ > ÓÓÙÌËÏÊ ÎÁ ÏÂßÅËÔ "null". > at CubePrim()[D:\metSyS\T E A C H\Flex\projects\first\src\CubePrim.as: > 35] > at first/_first_CubePrim1_i()[D:\metSyS\T E A C H\Flex\projects\first > \src\first.mxml:8] > at first()[D:\metSyS\T E A C H\Flex\projects\first\src\first.mxml:8] > at _first_mx_managers_SystemManager/create() > at mx.managers::SystemManager/initializeTopLevelWindow()[C:\autobuild > \3.2.0\frameworks\projects\framework\src\mx\managers\SystemManager.as: > 3188] > at mx.managers::SystemManager/http://www.adobe.com/2006/flex/mx/ > internal::docFrameHandler()[C:\autobuild\3.2.0\frameworks\projects > \framework\src\mx\managers\SystemManager.as:3064] > at mx.managers::SystemManager/docFrameListener()[C:\autobuild > \3.2.0\frameworks\projects\framework\src\mx\managers\SystemManager.as: > 2916]
