I actually ran into that one too, I commented on it and left a scriptlet to fix it at Rob's site:
http://www.infiniteturtles.co.uk/blog/away3d-the-essential-guide-to-3d-in-flash-released#comments On Thu, Jun 17, 2010 at 6:43 AM, rowild <[email protected]> wrote: > Hi, > > I bought the book "The Essential Guide to 3D in Flash", which is > totally about Away3D. I am in chapter 4, where this code is posted > (compared to the book, I changed the names of the classes): > > // Base Class > package > { > import away3d.core.base.*; > import away3d.cameras.*; > import away3d.containers.*; > > import flash.display.*; > import flash.events.*; > > public class Away3D_BaseClass2 extends Sprite > { > protected var _camera:HoverCamera3D; > protected var _view:View3D; > > public function Away3D_BaseClass2() > { > super(); > _createView(); > _createScene(); > } > > protected function _createView():void > { > _camera = new HoverCamera3D(); > _camera.distance = 1000; > _camera.tiltAngle = 10; > _camera.panAngle = 180; > > _view = new View3D(); > _view.x = 400; > _view.y = 300; > _view.camera = _camera; > > addChild(_view); > addEventListener(Event.ENTER_FRAME, _onEnterFrame); > } > > protected function _createScene():void > { > // To be overridden > } > > protected function _onEnterFrame(ev : Event):void > { > _camera.panAngle += (stage.mouseX - > stage.stageWidth/2) / 100; > _camera.hover(); > //_camera.steps = 2; > > _view.render(); > } > } > } > > > // Extending Class (in new File of course) > package > { > import away3d.core.math.*; > import away3d.primitives.LineSegment; > > [SWF(width="800",height="600")] > > public class Away3D_drawLines extends Away3D_BaseClass2 > { > public function Away3D_drawLines():void > { > super(); > } > > override protected function _createScene():void > { > var i:int, p1:Number3D, p2:Number3D, > seg:LineSegment; > > p1 = new Number3D(); > p2 = new Number3D(); > > for (i=0; i < 5; i++) > { > p2.x = (Math.random() - 0.5) *200; > p2.y = (Math.random() - 0.5) *200; > p2.z = (Math.random() - 0.5) *200; > > p2.add(p2, p1); > > seg = new LineSegment(); > seg.start = p1; > seg.end = p2; > > _view.scene.addChild(seg); > > p1.clone(p2); > } > } > } > } > > and this error message shows up in my Flash CS5: > /...h/Away3D_drawLines.as, Line 31 1067: Implicit coercion of a value > of type away3d.core.math:Number3D to an unrelated type > away3d.core.base:Vertex. > > I cannot solve this problem, and there is no Errata page at friendsof > ed.com. > > Can anybody give me a hint what's wrong here? > Thanks! >
