用ActionScript画虚线

原创 2006年06月12日 11:11:00
 /*-------------------------------------------------------------
mc.dashTo is a method for drawing dashed (and dotted)
lines. I made this to extend the lineTo function because it
doesn?t have the cutom line types that the in program
line tool has. To make a dotted line, specify a dash length
between .5 and 1.
-------------------------------------------------------------*/

MovieClip.prototype.dashTo = function(startx, starty, endx, endy, len, gap) {
// ==============
// mc.dashTo() - by Ric Ewing (ric@formequalsfunction.com) - version 1.2 - 5.3.2002
//
// startx, starty = beginning of dashed line
// endx, endy = end of dashed line
// len = length of dash
// gap = length of gap between dashes
// ==============
//
// if too few arguments, bail
if (arguments.length < 6) {
return false;
}
// init vars
var seglength, deltax, deltay, segs, cx, cy;
// calculate the legnth of a segment
seglength = len + gap;
// calculate the length of the dashed line
deltax = endx - startx;
deltay = endy - starty;
delta = Math.sqrt((deltax * deltax) + (deltay * deltay));
// calculate the number of segments needed
segs = Math.floor(Math.abs(delta / seglength));
// get the angle of the line in radians
radians = Math.atan2(deltay,deltax);
// start the line here
cx = startx;
cy = starty;
// add these to cx, cy to get next seg start
deltax = Math.cos(radians)*seglength;
deltay = Math.sin(radians)*seglength;
// loop through each seg
for (var n = 0; n < segs; n++) {
this.moveTo(cx,cy);
this.lineTo(cx+Math.cos(radians)*len,cy+Math.sin(radians)*len);
cx += deltax;
cy += deltay;
}
// handle last segment as it is likely to be partial
this.moveTo(cx,cy);
delta = Math.sqrt((endx-cx)*(endx-cx)+(endy-cy)*(endy-cy));
if(delta>len){
// segment ends in the gap, so draw a full dash
this.lineTo(cx+Math.cos(radians)*len,cy+Math.sin(radians)*len);
} else if(delta>0) {
// segment is shorter than dash so only draw what is needed
this.lineTo(cx+Math.cos(radians)*delta,cy+Math.sin(radians)*delta);
}
// move the pen to the end position
this.moveTo(endx,endy);
};

VC画虚线矩形,点画线矩形

  • 2016年10月09日 15:54
  • 59KB
  • 下载

as3代码画虚线源码

  • 2015年09月01日 15:43
  • 335KB
  • 下载

Android中画虚线以及用path画线时设置颜色等效果的改变

1、Android中画虚线,可以通过DashPathEffect方法实现,它如何使用网上好多,具体实例看下面的代码。 2、Android画线的时候,如果用到path进行画线,如果想实现画不同颜...
  • myooth
  • myooth
  • 2013年12月02日 21:03
  • 5213

鼠标画虚线框放大图片

  • 2009年09月22日 17:54
  • 3.3MB
  • 下载

Android画虚线却显示为实线的解决方法

画虚线实例

  • 2015年01月29日 22:15
  • 1KB
  • 下载

IOS画虚线边框

  • 2014年05月16日 18:04
  • 3KB
  • 下载

Android利用shape画虚线

我们知道,想在Android xml中画出一条直线,很简单: 如果想要画出一条虚线呢? 在drawable目录...

iOS 画虚线的两种方法

下面介绍两种在开发中经常使用的两种画虚线的方法. 方法一 // 画虚线 // 创建一个imageView 高度是你想要的虚线的高度 一般设为2 _lineImg = [[UIImageVie...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:用ActionScript画虚线
举报原因:
原因补充:

(最多只允许输入30个字)