设为首页 加入收藏 网站搜索 繁體中文 中国建站网 — 站长资源分享平台

画格子类

来源:136z.Com 作者:佚名 时间:2005-07-20 00:25:12

点击浏览该文件

class myClass.Draw.DrawGrid extends MovieClip {
// 把格子画在一个mc里面
private var _mc:MovieClip;
// 要画的横纵格数
private var _rows:Number;
private var _cols:Number;
// 网格的上下左右边界
private var _left:Number;
private var _right:Number;
private var _top:Number;
private var _bottom:Number;
// 线条属性
private var _lineColor:Number;
private var _lineSize:Number;
private var _lineAlpha:Number;
function DrawGrid(mc:MovieClip, rs:Number, cs:Number, t:Number, b:Number, l:Number, r:Number, ls:Number, lc:String, la:Number) {
_mc = mc;
_rows = rs;
_cols = cs;
_top = t;
_bottom = b;
_left = l;
_right = r;
_lineColor = Number(lc);
_lineSize = ls;
_lineAlpha = la;
}
// 计算每条横线的间隔
public function vertiDis():Number {
return (Math.abs(_bottom-_top)/_rows);
}
// 计算每条纵线的间隔
public function horiDis():Number {
return (Math.abs(_right-_left)/_cols);
}
// 清理掉所有的线条
public function clearLines():Void {
_mc.clear();
}
// 画横线
public function gotHoriLines():Void {
var dis:Number = vertiDis();
_mc.lineStyle(_lineSize, _lineColor, _lineAlpha);
var i = -1;
// 格子是由比格子数多一条线组成的(4线3行)
while ((++i)<(_rows+1)) {
var ypos:Number = _top+dis*i;
_mc.moveTo(_left, ypos);
_mc.lineTo(_right, ypos);
}
}
// 画纵线
public function gotVertiLines():Void {
var dis:Number = horiDis();
_mc.lineStyle(_lineSize, _lineColor, _lineAlpha);
var i = -1;
// 格子是由比格子数多一条线组成的(4线3行)
while ((++i)<(_cols+1)) {
var xpos:Number = _left+dis*i;
_mc.moveTo(xpos, _top);
_mc.lineTo(xpos, _bottom);
}
}
// 画网格
public function gotGrid():Void {
gotHoriLines();
gotVertiLines();
}
}

本来里面的算间隔使用get函数的,因为当时看一个教程的时候发现,get和set比较特殊,正好用上,谁知道用了才知道,原来get和set函数只能提供给实例使用,类中不能自己使用-w-

Tags:

  • 好的评价 如果您觉得好,就请您
      0%(0)
  • 差的评价 如果您觉得差,就请您
      0%(0)
  • 相关文章
    广告赞助

    文章随便看看 设计素材 建站学院 网页模板 视频教程

    网友评论

    共有 0 位网友发表了评论,得分 0 分,平均 0 分    查看完整评论

    用户名: 查看更多评论

    分 值:100分 85分 70分 55分 40分 25分 10分 1分

    内 容:

             通知管理员 验证码: