Flash专栏: 基础教程 | 技巧运用 | MTV实例教程 | 游戏实例教程 | 实例教程 | AS教程(new)
photoshop专栏: 基础 | 进阶 | 技巧总汇 | 精彩实例 | 文字特效 | 滤镜魔术 | 实际应用
网页设计: Dreamweaver教程 | FireWorks教程 | CorelDraw设计 | Freehand/Illustrator教程 | 音乐转换教程
其他教程: 操作系统 | 程序设计 | 网站开发 | 图形图像 | 数据库 | 网络技术 | 安全相关 | 认证考试 | 硬件知识 | 服务器
Flash专栏>Flash基础教程>昨天完成的向量积件   返回上一页

  日期:2006-09-06 11 作者:200398sb40whb 来源:闪吧
天气预报 IP地址 手机号码 邮编 翻译 在线代理 在线评书 好dj


昨天完成的向量积件


var x0:Number = zb_mc._x;
var y0:Number = zb_mc._y;
var x_d:Number = zb_mc._width/16;
var y_d:Number = zb_mc._height/16;
var a_array:Array = new Array();
var b_array:Array = new Array();
var i:Number = 0;
var j:Number = 0;
//计算向量角度的函数:
function jd(x1:Number, y1:Number, x2:Number, y2:Number) {
 var d:Number = Math.sqrt(Math.pow(x2-x1, 2)+Math.pow(y2-y1, 2));
 var jiaodu:Number = Math.abs(Math.acos((x2-x1)/d)*180/(Math.PI));
 if (y1>y2 && x1<x2) {
  return 90-jiaodu;
 } else if (y1>y2 && x2<x1) {
  return 90-jiaodu;
 } else if (y1<y2 && x1>x2) {
  return 90+jiaodu;
 } else if (y1<y2 && x1<x2) {
  return 90+jiaodu;
  //y上半:
 } else if (y1>y2 && x1 == x2) {
  return 90-jiaodu;
 } else if (y1<y2 && x1 == x2) {
  return 90+jiaodu;
 } else if (y1 == y2 && x1<x2) {
  return 90+jiaodu;
 } else if (y1 == y2 && x1>x2) {
  return 90-jiaodu;
 }
}
//
function xl_hs(x1:Number, y1:Number, x2:Number, y2:Number):Void {
 _root.lineStyle(1, 0x0000ff, 100);
 _root.moveTo(x0+x1*x_d, y0-y1*y_d);
 _root.lineTo(x0+x2*x_d, y0-y2*y_d);
 _root.attachMovie("dot", "dot"+j, j);
 _root["dot"+j]._rotation = jd(x0, y0, x0+x2*x_d, y0-y2*y_d);
 _root["dot"+j]._x = x0+x2*x_d;
 _root["dot"+j]._y = y0-y2*y_d;
 _root.createTextField("t"+j, 10+j, x0+x2*x_d, y0-y2*y_d, 60, 30);
 if (!jiaf.selected && !jianf.selected) {
  _root["t"+j].text = "("+a_array[i]+","+b_array[i]+")";
 } else if (jiaf.selected) {
  _root["t"+j].text = "("+(a_array[i]+a_array[i-1])+","+(b_array[i]+b_array[i-1])+")";
 }
}
function qd_hs():Void {
 a_array[i] = Number(abl);
 b_array[i] = Number(bbl);
 if (!jiaf.selected && !jianf.selected) {
  xl_hs(0, 0, a_array[i], b_array[i]);
 } else if (jiaf.selected) {
  i--;
  xl_hs(0, 0, (a_array[i-1]+a_array[i]), (b_array[i-1]+b_array[i]));
  _root.lineStyle(1, 0xff0000, 80);
  _root.moveTo(x0+a_array[i-1]*x_d, y0-b_array[i-1]*y_d);
  _root.lineTo(x0+(a_array[i-1]+a_array[i])*x_d, y0-y_d*(b_array[i-1]+b_array[i]));
  _root.moveTo(x0+x_d*a_array[i], y0-y_d*b_array[i]);
  _root.lineTo(x0+x_d*(a_array[i-1]+a_array[i]), y0-y_d*(b_array[i-1]+b_array[i]));
 } else if (jianf.selected) {
  i--;
  _root.lineStyle(1, 0x000000, 100);
  _root.moveTo(x0+a_array[i]*x_d, y0-b_array[i]*y_d);
  _root.lineTo(x0+a_array[i-1]*x_d, y0-b_array[i-1]*y_d);
  _root.moveTo(x0, y0);
  _root.lineTo(x0+x_d*(a_array[i-1]-a_array[i]), y0-y_d*(b_array[i-1]-b_array[i]));
  _root.attachMovie("dot", "dot"+j, j);
  _root["dot"+j]._x = x0+x_d*(a_array[i-1]-a_array[i]);
  _root["dot"+j]._y = y0-y_d*(b_array[i-1]-b_array[i]);
  _root["dot"+j]._rotation = jd(x0, y0, x0+x_d*(a_array[i-1]-a_array[i]), y0-y_d*(b_array[i-1]-b_array[i]));
  _root.createTextField("t"+j, 10+j, x0+x_d*(a_array[i-1]-a_array[i]), y0-y_d*(b_array[i-1]-b_array[i]), 60, 30);
  _root["t"+j].text = "("+(a_array[i-1]-a_array[i])+","+(b_array[i-1]-b_array[i])+")";
 }
 abl = "";
 bbl = "";
 i++;
 j++;
}
//
qd_btn.onPress = function() ;
cz_btn.onPress = function() {
 for (n=0; n<j; n++) {
  _root["dot"+n].removeMovieClip();
  _root["t"+n].text = "";
 }
 i = 0;
 j = 0;
 a_array.splice(0, a_array.length);
 b_array.splice(0, b_array.length);
 _root.clear();
 jiaf.selected = false;
 jianf.selected = false;
};
_root.my_mc.onPress = function() {
 getURL("mailto:98sb40whb@163.com");
};

进入原文讨论:http://space.flash8.net/space/html/26/284926_itemid_303954.html

   责任编辑:admin    时间:2006年8月19日


 
高手云集 版权所有 1998-2006