三角形类
来源:互联网 发布:初识动画软件教学设计 编辑:程序博客网 时间:2024/04/26 06:07
// Triangle Class
package {
import flash.display.Graphics;
public class Triangle {
private var pointA:Point3D;
private var pointB:Point3D;
private var pointC:Point3D;
private var color:uint;
public function Triangle(a:Point3D, b:Point3D, c:Point3D, color:uint) {
pointA = a;
pointB = b;
pointC = c;
this.color = color;
}
public function draw(g:Graphics):void {
if (isBackFace())
{
return;
}
g.beginFill(color);
g.moveTo(pointA.screenX, pointA.screenY);
g.lineTo(pointB.screenX, pointB.screenY);
g.lineTo(pointC.screenX, pointC.screenY);
g.lineTo(pointA.screenX, pointA.screenY);
g.endFill();
}
private function isBackFace():Boolean {
// 见 http://www.jurjans.lv/flash/shape.html
var cax:Number = pointC.screenX - pointA.screenX;
var cay:Number = pointC.screenY - pointA.screenY;
var bcx:Number = pointB.screenX - pointC.screenX;
var bcy:Number = pointB.screenY - pointC.screenY;
return cax * bcy > cay * bcx;
}
public function get depth():Number {
var zpos:Number = Math.min(pointA.z, pointB.z);
zpos = Math.min(zpos, pointC.z);
return zpos;
}
}
}
- 三角形类
- 三角形类
- 三角形类
- 三角形类
- 三角形类
- 三角形类
- 三角形类
- 三角形类
- 三角形类
- 三角形类
- 三角形类
- 三角形类
- 三角形类
- 三角形类
- 三角形类
- 三角形类
- 三角形类
- 三角形类
- 如何把多个文件写入到一个文件中去并能分解
- 在CSDN上开通了博客
- jakarta项目介绍
- 浅谈八皇后问题
- 简易版WinZip
- 三角形类
- After paper reading.......
- jakarta.commons包中BeanUtils以及ComparatorUtils的使用
- 坠入(Fall)赏析
- Visual Assist使用详细说明
- 哈哈,发现腾讯首页一个有趣的地方
- MySpace推出小企业及个人广告服务
- 电子书网址
- C# 中的委托和事件