sphere3d.as

来自「Papervision3d的源码」· AS 代码 · 共 40 行

AS
40
字号
package org.papervision3d.core.math{	import org.papervision3d.core.math.Number3D;		public class Sphere3D	{		public var x:Number;		public var y:Number;		public var z:Number;		public var radius:Number;				public function Sphere3D(r:Number = 100, x:Number=0, y:Number=0, z:Number=0)		{			this.radius = r;			this.x = x;			this.y = y;			this.z = z;		}				public function get o():Number3D{			return new Number3D(x, y, z);		}				public function get r2():Number{			return radius*radius;		}				public function intersectRay(ray:Ray3D):Number{			var dst:Number3D = Number3D.sub(ray.o, o);			var b:Number = Number3D.dot(dst, ray.d);			var c:Number = Number3D.dot(dst, dst)-r2;			var d:Number = b*b-c;			if(d >0)				return -b-Math.sqrt(d);			else 				return -999999;		}	}}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?