Got it right now! public static function cross(point1a:Point, point1b:Point, point2a:Point, point2b:Point):Boolean{ var deltaXi:Number; var deltaYi:Number; var i2:Number; var deltaXi2:Number; var deltaYi2:Number; var determ:Number; var snijpunt:Boolean = false; var lambda:Number; var mu:Number; deltaXi = point1a.x - point1b.x; //blauwxi - roodxi deltaYi = point1a.y - point1b.y; //blauwyi - roodyi //while(!snijpunt){ deltaXi2 = point2a.x - point2b.x; //blauwxi2 - roodxi2 deltaYi2 = point2a.y - point2b.y; //blauwyi2 - roodyi2 determ = deltaXi * deltaYi2 - deltaYi * deltaXi2; trace("determ : " + determ); if(determ != 0){ mu = ((point2b.x - point1b.x) * deltaYi -(point2b.y - point1b.y) * deltaXi) / determ; lambda = ((point2b.x - point1b.x) * deltaYi2 -(point2b.y - point1b.y) * deltaXi2) / determ; trace("mu : " + mu); trace("lambda : " + lambda); if ((mu >= 0) && (mu <= 1) && (lambda >= 0) && (lambda <= 1)){ return true; } } //} return false; }
lieven cardoen indiegroup interactive digital experience engelse wandeling 2 k18 b8500 kortrijk T +32 (0)56/361 197 // communicatie bij voorkeur op [EMAIL PROTECTED] -----Original Message----- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Lieven Cardoen Sent: donderdag 6 april 2006 10:38 To: Flashcoders mailing list Subject: [Flashcoders] Crossing of two lines Does anybody have a piece of code to check whether two Lines cross with each other. At the moment I have this, but it doesn't seem to work : public static function cross(point1a:Point, point1b:Point, point2a:Point, point2b:Point):Boolean{ var deltaXi:Number; var deltaYi:Number; var i2:Number; var deltaXi2:Number; var deltaYi2:Number; var determ:Number; var snijpunt:Boolean = false; var lambda:Number; var mu:Number; deltaXi = point2a.x - point1a.x; deltaYi = point2a.y - point1a.y; //while(!snijpunt){ deltaXi2 = point2b.x - point2a.x; deltaYi2 = point2b.y - point2b.y; determ = deltaXi * deltaYi2 - deltaYi * deltaXi2; trace("determ : " + determ); if(determ != 0){ mu = ((point1b.x - point1a.x) * deltaYi -(point1b.y - point1a.y) * deltaXi) / determ; lambda = ((point1b.x - point1a.x) * deltaYi2 -(point1b.y - point1a.y) * deltaXi2) / determ; trace("mu : " + mu); trace("lambda : " + lambda); if ((mu >= 0) && (mu <= 1) && (lambda >= 0) && (lambda <= 1)){ return true; } } //} return false; } lieven cardoen indiegroup interactive digital experience engelse wandeling 2 k18 b8500 kortrijk T +32 (0)56/361 197 // communicatie bij voorkeur op [EMAIL PROTECTED] <mailto:[EMAIL PROTECTED]> _______________________________________________ Flashcoders@chattyfig.figleaf.com To change your subscription options or search the archive: http://chattyfig.figleaf.com/mailman/listinfo/flashcoders Brought to you by Fig Leaf Software Premier Authorized Adobe Consulting and Training http://www.figleaf.com http://training.figleaf.com _______________________________________________ Flashcoders@chattyfig.figleaf.com To change your subscription options or search the archive: http://chattyfig.figleaf.com/mailman/listinfo/flashcoders Brought to you by Fig Leaf Software Premier Authorized Adobe Consulting and Training http://www.figleaf.com http://training.figleaf.com